You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@shindig.apache.org by et...@apache.org on 2008/02/19 02:24:18 UTC

svn commit: r628951 - in /incubator/shindig/trunk: java/gadgets/src/main/java/org/apache/shindig/gadgets/http/ javascript/container/

Author: etnu
Date: Mon Feb 18 17:24:16 2008
New Revision: 628951

URL: http://svn.apache.org/viewvc?rev=628951&view=rev
Log:
Added syndicator support for RpcServlet.


Modified:
    incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsServlet.java
    incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcContext.java
    incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcProcessingOptions.java
    incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcRequest.java
    incubator/shindig/trunk/javascript/container/sample-rpc.html

Modified: incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsServlet.java
URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsServlet.java?rev=628951&r1=628950&r2=628951&view=diff
==============================================================================
--- incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsServlet.java (original)
+++ incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsServlet.java Mon Feb 18 17:24:16 2008
@@ -132,7 +132,7 @@
       JSONObject syndFeatures = syndConf.getJsonObject(opts.getSyndicator(),
                                                        "gadgets.features");
 
-      if (syndFeatures != null) {
+      if (syndFeatures != null && context != RenderingContext.CONTAINER) {
         String[] featArray = features.toArray(new String[features.size()]);
         try {
           JSONObject featureConfig = new JSONObject(syndFeatures, featArray);

Modified: incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcContext.java
URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcContext.java?rev=628951&r1=628950&r2=628951&view=diff
==============================================================================
--- incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcContext.java (original)
+++ incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcContext.java Mon Feb 18 17:24:16 2008
@@ -29,6 +29,7 @@
   private final String language;
   private final String country;
   private final String view;
+  private final String syndicator;
   private final boolean ignoreCache;
 
   public String getLanguage() {
@@ -47,6 +48,10 @@
     return ignoreCache;
   }
 
+  public String getSyndicator() {
+    return syndicator;
+  }
+
   /**
    * @param json
    * @throws JSONException
@@ -55,10 +60,7 @@
     language = json.getString("language");
     country = json.getString("country");
     view = json.getString("view");
-    if (json.has("ignoreCache")) {
-      ignoreCache = json.getBoolean("ignoreCache");
-    } else {
-      ignoreCache = false;
-    }
+    ignoreCache = json.optBoolean("ignoreCache");
+    syndicator = json.optString("syndicator");
   }
 }

Modified: incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcProcessingOptions.java
URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcProcessingOptions.java?rev=628951&r1=628950&r2=628951&view=diff
==============================================================================
--- incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcProcessingOptions.java (original)
+++ incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcProcessingOptions.java Mon Feb 18 17:24:16 2008
@@ -27,9 +27,20 @@
 public class JsonRpcProcessingOptions extends ProcessingOptions {
   private final JsonRpcContext context;
 
+  /** {@inheritDoc} */
   @Override
   public boolean getIgnoreCache() {
     return context.getIgnoreCache();
+  }
+
+  /** {@inheritDoc} */
+  @Override
+  public String getSyndicator() {
+    String syndicator = context.getSyndicator();
+    if (syndicator == null) {
+      return super.getSyndicator();
+    }
+    return syndicator;
   }
 
   public JsonRpcProcessingOptions(JsonRpcContext context) {

Modified: incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcRequest.java
URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcRequest.java?rev=628951&r1=628950&r2=628951&view=diff
==============================================================================
--- incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcRequest.java (original)
+++ incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/JsonRpcRequest.java Mon Feb 18 17:24:16 2008
@@ -23,6 +23,7 @@
 import org.apache.shindig.gadgets.GadgetException;
 import org.apache.shindig.gadgets.GadgetServer;
 import org.apache.shindig.gadgets.GadgetSpec;
+import org.apache.shindig.gadgets.ProcessingOptions;
 import org.json.JSONArray;
 import org.json.JSONException;
 import org.json.JSONObject;
@@ -60,6 +61,8 @@
       processor.submit(new JsonRpcGadgetJob(server, context, gadget));
     }
 
+    ProcessingOptions options = new JsonRpcProcessingOptions(context);
+
     int numJobs = gadgets.size();
     do {
       try {
@@ -94,7 +97,7 @@
         gadgetJson.put("userPrefs", prefs);
 
         // Content
-        String iframeUrl = servletState.getIframeUrl(outGadget, null);
+        String iframeUrl = servletState.getIframeUrl(outGadget, options);
         gadgetJson.put("content", iframeUrl);
         out.append("gadgets", gadgetJson);
       } catch (InterruptedException e) {

Modified: incubator/shindig/trunk/javascript/container/sample-rpc.html
URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/javascript/container/sample-rpc.html?rev=628951&r1=628950&r2=628951&view=diff
==============================================================================
--- incubator/shindig/trunk/javascript/container/sample-rpc.html (original)
+++ incubator/shindig/trunk/javascript/container/sample-rpc.html Mon Feb 18 17:24:16 2008
@@ -22,6 +22,7 @@
   }
 </style>
 </head>
+<script src="../../js/core.js?c=1"></script>
 <body>
 <script>
   function makeXhr() {
@@ -63,16 +64,17 @@
     }
   }
 
-  function processResp(xhr, callback) {
+  function processResp(xhr) {
     if (xhr.readyState !== 4) {return;}
-    callback(gadgets.json.parse(xhr.responseText));
+    renderGadgets(gadgets.json.parse(xhr.responseText));
   }
 
   var request = {
     context: {
       country: "US",
       language: "en",
-      view: "default"
+      view: "default",
+      syndicator: "default"
     },
     gadgets: [
       {
@@ -92,7 +94,11 @@
 
   var xhr = makeXhr();
   xhr.open("POST", "../../rpc", true);
-  xhr.onreadystatechange = gadgets.util.makeClosure(null, processResp, xhr, renderGadgets);
+  xhr.onreadystatechange = function(xobj) {
+    return function() {
+      processResp(xobj);
+    };
+  }(xhr);
   var req = gadgets.json.stringify(request);
   xhr.send(req);
 </script>