You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shindig.apache.org by ja...@apache.org on 2011/03/26 01:54:11 UTC

svn commit: r1085619 - in /shindig/trunk: ./ features/src/main/javascript/features/caja-debug/ features/src/main/javascript/features/caja/ java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/ java/gadgets/src/test/java/org/apache/shindig/gadg...

Author: jasvir
Date: Sat Mar 26 00:54:10 2011
New Revision: 1085619

URL: http://svn.apache.org/viewvc?rev=1085619&view=rev
Log:
Switch Shindig from cajita/valija to ES53

Description
* upgrade the version of Caja
* switch from cajita/valija to ES53

This change does not support taming of features.


Removed:
    shindig/trunk/features/src/main/javascript/features/caja/caja.js
Modified:
    shindig/trunk/features/src/main/javascript/features/caja-debug/feature.xml
    shindig/trunk/features/src/main/javascript/features/caja/feature.xml
    shindig/trunk/features/src/main/javascript/features/caja/taming.js
    shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/CajaContentRewriter.java
    shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/CajaContentRewriterTest.java
    shindig/trunk/pom.xml

Modified: shindig/trunk/features/src/main/javascript/features/caja-debug/feature.xml
URL: http://svn.apache.org/viewvc/shindig/trunk/features/src/main/javascript/features/caja-debug/feature.xml?rev=1085619&r1=1085618&r2=1085619&view=diff
==============================================================================
--- shindig/trunk/features/src/main/javascript/features/caja-debug/feature.xml (original)
+++ shindig/trunk/features/src/main/javascript/features/caja-debug/feature.xml Sat Mar 26 00:54:10 2011
@@ -22,6 +22,7 @@ The javascript referenced here should be
   <name>caja-debug</name>
   <dependency>caja</dependency>
   <gadget>
-    <script src="res://com/google/caja/cajita-debugmode.js"/>
+    <!-- debugging unsupported in this version -->
+    <!-- <script src="res://com/google/caja/cajita-debugmode.js"/> -->
   </gadget>
 </feature>

Modified: shindig/trunk/features/src/main/javascript/features/caja/feature.xml
URL: http://svn.apache.org/viewvc/shindig/trunk/features/src/main/javascript/features/caja/feature.xml?rev=1085619&r1=1085618&r2=1085619&view=diff
==============================================================================
--- shindig/trunk/features/src/main/javascript/features/caja/feature.xml (original)
+++ shindig/trunk/features/src/main/javascript/features/caja/feature.xml Sat Mar 26 00:54:10 2011
@@ -23,9 +23,7 @@ The javascript referenced here should be
   <dependency>core.io</dependency>
   <dependency>taming</dependency>
   <gadget>
-    <script src="res://com/google/caja/plugin/domita-minified.js"/>
-    <script src="caja.js"/>
-    <script src="res://com/google/caja/plugin/valija.out.js"/>
+    <script src="res://com/google/caja/plugin/domita-es53-minified.js"/>
     <script src="taming.js"/>
     <exports type="js">caja___.enable</exports>
     <exports type="js">caja___.whitelistCtors</exports>

Modified: shindig/trunk/features/src/main/javascript/features/caja/taming.js
URL: http://svn.apache.org/viewvc/shindig/trunk/features/src/main/javascript/features/caja/taming.js?rev=1085619&r1=1085618&r2=1085619&view=diff
==============================================================================
--- shindig/trunk/features/src/main/javascript/features/caja/taming.js (original)
+++ shindig/trunk/features/src/main/javascript/features/caja/taming.js Sat Mar 26 00:54:10 2011
@@ -39,7 +39,7 @@ caja___ = (function() {
   var fire = function(globalScope) {
     for (var tamer in tamings___) {
       if (tamings___.hasOwnProperty(tamer)) {
-        tamings___[tamer].call(___.USELESS, globalScope);
+        tamings___[tamer].call(___['USELESS'], globalScope);
       }
     }
   }
@@ -59,7 +59,7 @@ caja___ = (function() {
     for (var i = 0; i < length; i++) {
       var schema = schemas[i];
       if (typeof schema[0][schema[1]] === 'function') {
-        ___.markInnocent(schema[0][schema[1]], schema[1]);
+        ___.markFunc(schema[0][schema[1]], schema[1]);
       } else {
         gadgets.warn('Error taming function: ' + schema[0] + '.' + schema[1]);
       }
@@ -70,7 +70,7 @@ caja___ = (function() {
     for (var i = 0; i < length; i++) {
       var schema = schemas[i];
       if (typeof schema[0].prototype[schema[1]] == 'function') {
-        ___.grantInnocentMethod(schema[0].prototype, schema[1]);
+        ___.markTameAsXo4a(schema[0].prototype[schema[1]]);
       } else {
         gadgets.warn('Error taming method: ' + schema[0] + '.' + schema[1]);
       }
@@ -78,26 +78,34 @@ caja___ = (function() {
   }
 
   function enable() {
-    var imports = ___.copy(___.sharedImports);
-    imports.outers = imports;
+    var imports = {};
+    imports['outers'] = imports;
 
     var gadgetRoot = document.getElementById('cajoled-output');
-    gadgetRoot.className = 'g___';
+    gadgetRoot['className'] = 'g___';
     document.body.appendChild(gadgetRoot);
 
-    imports.htmlEmitter___ = new HtmlEmitter(gadgetRoot);
-    attachDocumentStub('-g___', uriCallback, imports, gadgetRoot);
-
-    imports.$v = valijaMaker.CALL___(imports.outers);
-
-    ___.getNewModuleHandler().setImports(imports);
+    imports['htmlEmitter___'] = new HtmlEmitter(gadgetRoot);
+    imports['onerror'] = ___.markFunc(function(x){
+        gadgets.warn(x);
+        return true; 
+    });
+    ___.setLogFunc(imports['onerror']);
 
-    fire(imports);
+    attachDocumentStub('-g___', uriCallback, imports, gadgetRoot);
 
-    imports.outers.gadgets = ___.tame(window.gadgets);
-    imports.outers.opensocial = ___.tame(window.opensocial);
-    ___.grantRead(imports.outers, 'gadgets');
-    ___.grantRead(imports.outers, 'opensocial');
+    imports['window'] = {};
+    // Use these imports
+    for (i in imports) {
+      imports['window'][i] = imports[i];
+    }
+    imports = imports['window'];
+    imports['domitaTrace___'] = 1;
+    imports['handleSet___'] = void 0;
+
+    // fire(imports);
+    ___.grantRead(imports, 'gadgets');
+    ___.getNewModuleHandler().setImports(___.whitelistAll(imports));
   }
   return {
     enable: enable,
@@ -107,8 +115,3 @@ caja___ = (function() {
   };
 })();
 
-// Expose alert and console.log to cajoled programs
-tamings___.push(function(imports) {
-  imports.outers.alert = function(msg) { alert(msg); };
-  ___.grantFunc(imports.outers, 'alert');
-});

Modified: shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/CajaContentRewriter.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/CajaContentRewriter.java?rev=1085619&r1=1085618&r2=1085619&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/CajaContentRewriter.java (original)
+++ shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/CajaContentRewriter.java Sat Mar 26 00:54:10 2011
@@ -197,6 +197,7 @@ public class CajaContentRewriter impleme
     MessageQueue mq = new SimpleMessageQueue();
     MessageContext context = new MessageContext();
     PluginMeta meta = new PluginMeta(fetcher, policy);
+    meta.setEnableES53(true);
     PluginCompiler compiler = makePluginCompiler(meta, mq);
     compiler.setMessageContext(context);
     if (moduleCache != null) {

Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/CajaContentRewriterTest.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/CajaContentRewriterTest.java?rev=1085619&r1=1085618&r2=1085619&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/CajaContentRewriterTest.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/CajaContentRewriterTest.java Sat Mar 26 00:54:10 2011
@@ -126,11 +126,11 @@ public class CajaContentRewriterTest ext
         + "<div classes=\"g___\" id=\"cajoled-output\" style=\"position: relative;\">"
         + "<script type=\"text/javascript\">caja___.enable()</script>"
         + "<script type=\"text/javascript\">{___.loadModule({'instantiate':function(___,IMPORTS___){"
-        + "return ___.prepareModule({'instantiate':function(___,IMPORTS___){var\n$v=___.readImport("
-        + "IMPORTS___,'$v',{'getOuters':{'()':{}},'initOuter':{'()':{}},'so':{'()':{}},'ro':{'()':{"
-        + "}}});var\nmoduleResult___,$dis;moduleResult___=___.NO_RESULT;$dis=$v.getOuters();"
-        + "$v.initOuter('onerror');try{{moduleResult___=$v.so('a',0)}}catch(ex___){"
-        + "___.getNewModuleHandler().handleUncaughtException(ex___,$v.ro('onerror'),'unknown','1')}"
+        + "return ___.prepareModule({'instantiate':function(___,IMPORTS___){var\n"
+        + "dis___=IMPORTS___;var moduleResult___;moduleResult___=___.NO_RESULT;"
+        + "try{{moduleResult___=IMPORTS___.w___('a',0)}}"
+        + "catch(ex___){___.getNewModuleHandler().handleUncaughtException(ex___,"
+        + "IMPORTS___.onerror_v___?IMPORTS___.onerror:___.ri(IMPORTS___,'onerror'),'unknown','1')}"
         + "return moduleResult___}";
 
     List<String> messages = ImmutableList.of(

Modified: shindig/trunk/pom.xml
URL: http://svn.apache.org/viewvc/shindig/trunk/pom.xml?rev=1085619&r1=1085618&r2=1085619&view=diff
==============================================================================
--- shindig/trunk/pom.xml (original)
+++ shindig/trunk/pom.xml Sat Mar 26 00:54:10 2011
@@ -1502,7 +1502,7 @@
      <dependency>
        <groupId>caja</groupId>
        <artifactId>caja</artifactId>
-       <version>r4374</version>
+       <version>r4417</version>
        <scope>compile</scope>
        <exclusions>
          <!-- force use of xml-apis until caja fixes their pom -->