Create your own opensocial container through the shindig SPI extension
With the development of social network, user relationship information has become a kind of important network data. In order to enable developers to develop rich experience applications on social networking platforms, fully exploit and share the platform's user relationship data, thus enriching SNS's own functions, the open platform (OPENAPI) has become a common trend in all major social networking sites. OpenSocial provides a common set of APIs for building social applications across multiple Web sites. Developers are free to use standard WEB technologies, including JavaScript and HTML, to create applications that access user relationship information for social networks. Shindig is a reference implementation of the OpenSocial specification, designed to help OpenSocial developers quickly build their own OpenSocial application platform. This article, through practical examples, instructs readers on how to build/compile/debug Apache shindig Java Engineering in the ECLIPSE environment and how to implement it through SPI, adapting existing user relationship data to the Shindig container.
What is OpenSocial
OpenSocial is a common set of APIs based on open standards to help WEB developers build portable social applications across multiple social networking sites. OpenSocial provides developers with a common set of APIs, and social applications developed based on this generic API can run on social networking sites that support OpenSocial specifications.
For more on OpenSocial content, please refer to www.opensocial.org.
Apache shindig
Shindig is a reference implementation of the OpenSocial specification, and its main components include:
Gadget Container javascript,opensocial Gadget container, the client's JavaScript class library (Gadget.js), provides such as UI layout,security, communication, etc. Off the function.
Gadget Rendering Server is responsible for parsing Gadget XML and converting it into a html/javascript/css used by browsers.
OpenSocial Container JavaScript, a OpenSocial container in the client, and a JavaScript library that provides OpenSocial-related features such as access to people, activity, AppData, etc. Related social data.
OpenSocial data Server, providing services based on the RESTFUL/RPC protocol for accessing social information related to people, activity, AppData, etc.
Figure 1 is the server-side architecture diagram for shindig:
Figure 1. Shindig Architecture (quote from Chris Schalk@googletm)
As you can see in Figure 1, Shindig is based on the Java Servlet Stack implementation. Gadgetrenderingservlet is responsible for Gadget Rendering, while Dataserviceservlet and Jsonrpcservlet implement OpenSocial in Data Server. Restful and its RPC services. Jsondbopensocialservice provides Json-based Open for shindig OpenSocial containers by implementing Activityservice, Personservice, appdataservice three interfaces Social data. The Gadgets of the client can access the data using the standard OpenSocial APIs.
For more on the Apache shindig content, please refer to Http://incubator.apache.org/shindig.