You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shindig.apache.org by jo...@apache.org on 2010/08/03 00:45:18 UTC

svn commit: r981700 - in /shindig/trunk/java: common/conf/ gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/ gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/

Author: johnh
Date: Mon Aug  2 22:45:17 2010
New Revision: 981700

URL: http://svn.apache.org/viewvc?rev=981700&view=rev
Log:
The AbsolutePathReferenceVisitor and the ProxyingContentVisitor should bypass
the embed and the object tags for now.
The src attribute of input and background attribute of body should be rewritten.

Patch provided by Kuntal Loya.


Modified:
    shindig/trunk/java/common/conf/shindig.properties
    shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/AbsolutePathReferenceVisitor.java
    shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/ProxyingVisitor.java
    shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/AbsolutePathReferenceVisitorTest.java
    shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ProxyingVisitorTest.java

Modified: shindig/trunk/java/common/conf/shindig.properties
URL: http://svn.apache.org/viewvc/shindig/trunk/java/common/conf/shindig.properties?rev=981700&r1=981699&r2=981700&view=diff
==============================================================================
--- shindig/trunk/java/common/conf/shindig.properties (original)
+++ shindig/trunk/java/common/conf/shindig.properties Mon Aug  2 22:45:17 2010
@@ -48,7 +48,7 @@ shindig.locked-domain.enabled=false
 shindig.content-rewrite.only-allow-excludes=false
 shindig.content-rewrite.include-urls=.*
 shindig.content-rewrite.exclude-urls=
-shindig.content-rewrite.include-tags=link,script,embed,img,style
+shindig.content-rewrite.include-tags=body,embed,img,input,link,script,style
 shindig.content-rewrite.expires=86400
 shindig.content-rewrite.proxy-url=/gadgets/proxy?container=default&url=
 shindig.content-rewrite.concat-url=/gadgets/concat?container=default&

Modified: shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/AbsolutePathReferenceVisitor.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/AbsolutePathReferenceVisitor.java?rev=981700&r1=981699&r2=981700&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/AbsolutePathReferenceVisitor.java (original)
+++ shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/AbsolutePathReferenceVisitor.java Mon Aug  2 22:45:17 2010
@@ -44,13 +44,11 @@ public class AbsolutePathReferenceVisito
   public enum Tags {
     // Resources which would be fetched by the browser when rendering the page.
     RESOURCES(ImmutableMap.<String, String>builder()
+        .put("body", "background")
         .put("img", "src")
         .put("input", "src")
-        .put("body", "background")
-        .put("embed", "src")
         .put("link", "href")
-        .put("script", "src")
-        .put("object", "src").build()),
+        .put("script", "src").build()),
 
     // Hyperlinks that the user clicks on to navigate pages.
     HYPERLINKS(ImmutableMap.<String, String>builder()

Modified: shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/ProxyingVisitor.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/ProxyingVisitor.java?rev=981700&r1=981699&r2=981700&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/ProxyingVisitor.java (original)
+++ shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/ProxyingVisitor.java Mon Aug  2 22:45:17 2010
@@ -41,15 +41,15 @@ import java.util.Map;
 public class ProxyingVisitor implements DomWalker.Visitor {
   public final static Map<String, String> RESOURCE_TAGS =
     ImmutableMap.of(
+        "body", "background",
         "img", "src",
-        "embed", "src",
+        "input", "src",
         "link", "href",
-        "script", "src",
-        "object", "src");
-  
+        "script", "src");
+
   private final ContentRewriterFeature.Config featureConfig;
   private final ProxyUriManager uriManager;
- 
+
   public ProxyingVisitor(ContentRewriterFeature.Config featureConfig,
                               ProxyUriManager uriManager) {
     this.featureConfig = featureConfig;

Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/AbsolutePathReferenceVisitorTest.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/AbsolutePathReferenceVisitorTest.java?rev=981700&r1=981699&r2=981700&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/AbsolutePathReferenceVisitorTest.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/AbsolutePathReferenceVisitorTest.java Mon Aug  2 22:45:17 2010
@@ -76,6 +76,13 @@ public class AbsolutePathReferenceVisito
   }
 
   @Test
+  public void bypassObjectTag() throws Exception {
+    Element objectElement = elem("object", "src", RELATIVE_URI.toString());
+    assertEquals("Element with object tag should be bypassed",
+                 VisitStatus.BYPASS, getVisitStatus(objectElement));
+  }
+
+  @Test
   public void bypassTagWithoutAttrib() throws Exception {
     Element a = elem("a");
     assertEquals(VisitStatus.BYPASS, getVisitStatus(a));
@@ -92,6 +99,16 @@ public class AbsolutePathReferenceVisito
   }
 
   @Test
+  public void absolutifyTagInput() throws Exception {
+    checkAbsolutifyStates("input");
+  }
+
+  @Test
+  public void absolutifyTagBody() throws Exception {
+    checkAbsolutifyStates("body");
+  }
+
+  @Test
   public void absolutifyTagLink() throws Exception {
     checkAbsolutifyStates("link");
   }
@@ -102,11 +119,6 @@ public class AbsolutePathReferenceVisito
   }
 
   @Test
-  public void absolutifyTagObject() throws Exception {
-    checkAbsolutifyStates("object");
-  }
-
-  @Test
   public void revisitDoesNothing() throws Exception {
     assertFalse(visitorForAllTags().revisit(gadget(), null));
   }

Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ProxyingVisitorTest.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ProxyingVisitorTest.java?rev=981700&r1=981699&r2=981700&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ProxyingVisitorTest.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ProxyingVisitorTest.java Mon Aug  2 22:45:17 2010
@@ -54,10 +54,20 @@ public class ProxyingVisitorTest extends
   public void imgVisitReserved() throws Exception {
     checkVisitReserved("img", true);
   }
-  
+
+  @Test
+  public void inputVisitReserved() throws Exception {
+    checkVisitReserved("input", true);
+  }
+
+  @Test
+  public void bodyVisitReserved() throws Exception {
+    checkVisitReserved("body", true);
+  }
+
   @Test
   public void embedVisitReserved() throws Exception {
-    checkVisitReserved("embed", true);
+    checkVisitReserved("embed", false);
   }
   
   @Test
@@ -72,7 +82,7 @@ public class ProxyingVisitorTest extends
   
   @Test
   public void objectVisitReserved() throws Exception {
-    checkVisitReserved("object", true);
+    checkVisitReserved("object", false);
   }
   
   @Test