Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Nuxeo - OpenSocial

Avatar for Thomas Roger Thomas Roger
February 29, 2012

Nuxeo - OpenSocial

Avatar for Thomas Roger

Thomas Roger

February 29, 2012
Tweet

More Decks by Thomas Roger

Other Decks in Programming

Transcript

  1. Open Source ECM 2011 - Thomas Roger - [email protected] -

    @throger Nuxeo - OpenSocial Leveraging OpenSocial within the Nuxeo Platorm
  2. Why OpenSocial? Common standard used in the enterprise Easy for

    developers HTTP, XML, HTML, JavaScript and RESTful APIs Gadgets as reusable blocks 2
  3. GWT Container 3 Contributed by Leroy Merlin Apache Shindig +

    GWT2 Easier to integrate in your application Lighter & faster!
  4. 4

  5. 6 Implement a new SpaceProvider MySpaceProvider extends AbstractSpaceProvider { ...

    } Contribute it <extension target="org.nuxeo.ecm.spaces.core.spacemanager.service point="spaceProviders"> <spaceProvider name="mySpaceProvider"> <class>org.nuxeo.sample.MySpaceProvider</class> </spaceProvider> </extension> Create your own dashboard GWT Container
  6. Lightweight Container 8 Why? Simple gadget integration Static positioning in

    the page How? JS container from Apache Shindig jQuery plugin available Simple to use!
  7. jQuery('.polls').openSocialGadget({ baseURL: '#{baseURL}', language: '#{localeSelector.language}', gadgetDefs: [{ specUrl: '#{gadgetsBaseURL}/site/gadgets/polls/polls.xml', title:

    '#{messages['label.poll.result']}', displayTitleBar: false, width: '100%' }] }); 11 Loading the polls gadget Lightweight container
  8. 12

  9. Nuxeo supports OAuth authentication Connect to third party services supporting

    OAuth, like Google Docs OAuth authentication in gadgets <ModulePrefs> <#include "default-oauth-prefs.ftl"/> </ModulePrefs> 13 OAuth
  10. 14 Most of our gadgets are fully OpenSocial Work on

    other OpenSocial containers: iGoogle, JIRA, ... Nuxeo can use external gadgets (those available on iGoogle for instance) Following the Standard
  11. 15

  12. Automation JS Library Library to be used in gadgets Call

    Nuxeo automation Handle OAuth authentication Easy to use! 17
  13. var requestParams = { operationId: 'Document.PageProvider', operationParameters: { pageSize: 5,

    query: ‘SELECT * FROM Document’ operationContext: {}, operationDocumentProperties: "common,dublincore", entityType: 'documents', operationCallback: myCallback, noEntryLabel: '__MSG_label.gadget.no.document__' }; doAutomationRequest(requestParams) 19 Querying documents Automation JS library