Create a JsonRpc Servlet to make pure js containers more viable and to improve library usability. -------------------------------------------------------------------------------------------------
Key: SHINDIG-25 URL: https://issues.apache.org/jira/browse/SHINDIG-25 Project: Shindig Issue Type: New Feature Components: Gadgets Server - Java Reporter: Kevin Brown Assignee: Kevin Brown Priority: Minor Currently, there's no way to get the gadget meta data without implementing a full container that uses the core java libraries directly. To rectify this situation, we should introduce a JsonRpcServlet class that will take requests in the form: var request = { "requestContext": { "language": "en", "country": "US", .. other per-request fields... }, "gadgets": [ // index should be module id based {"specUrl": "url-of-gadget-spec.xml", "userPrefs": {"up_name":"up_value"}}, ...more gadgets... ] }; and responds with: var response = { "libs": ["setprefs", "analytics"], "gadgets": [ // guaranteed to be the same order as inputs. {"specUrl":"same-as-input", "prefSpec": {"up_name":{"display":"Localized, user-friendly name for the pref", "type:"string", "default":"", "value":"same-as-input, or default"}}, "contentType":"url, iframe, or caja", "content":"iframe url, url for type=url gadgets, or cajoled content", "token":"gadget token, produced by a GadgetSigner implementation", }, ...more gadgets... ] }; This RPC mechanism should be designed in such a way that it can easily be used as a reference mechanism for anyone that wants to build an rpc system using shindig using alternative rpc mechanisms (SOAP, XML-RPC, various proprietary solutions). -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.