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 04:05:40 UTC

svn commit: r981723 - in /shindig/trunk/java: gadgets/src/main/java/org/apache/shindig/gadgets/parse/caja/old/ gadgets/src/main/java/org/apache/shindig/gadgets/render/ gadgets/src/main/java/org/apache/shindig/gadgets/render/old/ gadgets/src/main/java/o...

Author: johnh
Date: Tue Aug  3 02:05:39 2010
New Revision: 981723

URL: http://svn.apache.org/viewvc?rev=981723&view=rev
Log:
Biting the bullet: getting rid of all the "old" rewriter/renderer/parser implementations, as well as logic that depended on them.

The most substantial change here is the switch from HTMLContentRewriter to the constituent rewriters that replace it. These have been present in the codebase for quite some time and in use by various installations.


Added:
    shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/BaseRewriterTestCase.java
      - copied, changed from r980616, shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/old/BaseRewriterTestCase.java
Removed:
    shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/parse/caja/old/
    shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/old/
    shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/old/
    shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/parse/caja/old/
    shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/render/old/
    shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/old/
    shindig/trunk/java/gadgets/src/test/resources/org/apache/shindig/gadgets/rewrite/old/
Modified:
    shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderModule.java
    shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewriteModule.java
    shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ContentRewriterFeatureTestCase.java
    shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ContentRewriterFeatureTestCaseOS9.java
    shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssResponseRewriterTest.java
    shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/DefaultContentRewriterRegistryTest.java
    shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndTest.java

Modified: shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderModule.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderModule.java?rev=981723&r1=981722&r2=981723&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderModule.java (original)
+++ shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderModule.java Tue Aug  3 02:05:39 2010
@@ -50,13 +50,6 @@ public class RenderModule extends Abstra
 
   @Provides
   @Singleton
-  @org.apache.shindig.gadgets.render.old.SanitizingGadgetRewriter.AllowedTags
-  protected Set<String> provideOldAllowedTags() {
-    return provideAllowedTags();
-  }
-
-  @Provides
-  @Singleton
   @SanitizingGadgetRewriter.AllowedAttributes
   protected Set<String> provideAllowedAttributes() {
     return ImmutableSet.of("abbr", "align", "alt", "axis", "bgcolor", "border",
@@ -67,11 +60,4 @@ public class RenderModule extends Abstra
         "src", "start", "style", "summary", "title", "type", "usemap", "valign", "value",
         "vspace", "width");
   }
-
-  @Provides
-  @Singleton
-  @org.apache.shindig.gadgets.render.old.SanitizingGadgetRewriter.AllowedAttributes
-  protected Set<String> provideOldAllowedAttributes() {
-    return provideAllowedAttributes();
-  }
 }
\ No newline at end of file

Modified: shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewriteModule.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewriteModule.java?rev=981723&r1=981722&r2=981723&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewriteModule.java (original)
+++ shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewriteModule.java Tue Aug  3 02:05:39 2010
@@ -27,11 +27,9 @@ import com.google.inject.name.Names;
 import org.apache.shindig.gadgets.parse.GadgetHtmlParser;
 import org.apache.shindig.gadgets.render.OpenSocialI18NGadgetRewriter;
 import org.apache.shindig.gadgets.render.RenderingGadgetRewriter;
-import org.apache.shindig.gadgets.render.old.SanitizingGadgetRewriter;
-import org.apache.shindig.gadgets.render.old.SanitizingRequestRewriter;
+import org.apache.shindig.gadgets.render.SanitizingGadgetRewriter;
+import org.apache.shindig.gadgets.render.SanitizingResponseRewriter;
 import org.apache.shindig.gadgets.rewrite.image.BasicImageRewriter;
-import org.apache.shindig.gadgets.rewrite.old.CssRequestRewriter;
-import org.apache.shindig.gadgets.rewrite.old.HTMLContentRewriter;
 import org.apache.shindig.gadgets.servlet.CajaContentRewriter;
 
 import java.util.List;
@@ -54,13 +52,17 @@ public class RewriteModule extends Abstr
   protected List<GadgetRewriter> provideGadgetRewriters(
       PipelineDataGadgetRewriter pipelineRewriter,
       TemplateRewriter templateRewriter,
-      HTMLContentRewriter optimizingRewriter,
-      CssRequestRewriter cssRewriter,
+      AbsolutePathReferenceRewriter absolutePathRewriter,
+      StyleTagExtractorContentRewriter styleTagExtractorRewriter,
+      StyleAdjacencyContentRewriter styleAdjacencyRewriter,
+      ProxyingContentRewriter proxyingRewriter,
+      CssResponseRewriter cssRewriter,
       CajaContentRewriter cajaRewriter,
       SanitizingGadgetRewriter sanitizedRewriter,
       RenderingGadgetRewriter renderingRewriter,
       OpenSocialI18NGadgetRewriter i18nRewriter) {
-    return ImmutableList.of(pipelineRewriter, templateRewriter, optimizingRewriter,
+    return ImmutableList.of(pipelineRewriter, templateRewriter,
+        absolutePathRewriter, styleTagExtractorRewriter, styleAdjacencyRewriter, proxyingRewriter,
         cajaRewriter, sanitizedRewriter, renderingRewriter, i18nRewriter);
   }
 
@@ -95,10 +97,15 @@ public class RewriteModule extends Abstr
   @Provides
   @Singleton
   protected List<ResponseRewriter> provideResponseRewriters(
-      HTMLContentRewriter optimizingRewriter,
-      CssRequestRewriter cssRewriter,
-      SanitizingRequestRewriter sanitizedRewriter) {
-    return ImmutableList.of(optimizingRewriter, cssRewriter, sanitizedRewriter);
+      AbsolutePathReferenceRewriter absolutePathRewriter,
+      StyleTagExtractorContentRewriter styleTagExtractorRewriter,
+      StyleAdjacencyContentRewriter styleAdjacencyRewriter,
+      ProxyingContentRewriter proxyingRewriter,
+      CssResponseRewriter cssRewriter,
+      SanitizingResponseRewriter sanitizedRewriter) {
+    return ImmutableList.of(
+        absolutePathRewriter, styleTagExtractorRewriter, styleAdjacencyRewriter, proxyingRewriter,
+        cssRewriter, sanitizedRewriter);
   }
 
   @Provides

Copied: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/BaseRewriterTestCase.java (from r980616, shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/old/BaseRewriterTestCase.java)
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/BaseRewriterTestCase.java?p2=shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/BaseRewriterTestCase.java&p1=shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/old/BaseRewriterTestCase.java&r1=980616&r2=981723&rev=981723&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/old/BaseRewriterTestCase.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/BaseRewriterTestCase.java Tue Aug  3 02:05:39 2010
@@ -15,12 +15,10 @@
  * KIND, either express or implied. See the License for the
  * specific language governing permissions and limitations under the License.
  */
-package org.apache.shindig.gadgets.rewrite.old;
+package org.apache.shindig.gadgets.rewrite;
 
 import org.apache.shindig.common.PropertiesModule;
 import org.apache.shindig.common.uri.Uri;
-import org.apache.shindig.config.AbstractContainerConfig;
-import org.apache.shindig.config.ContainerConfig;
 import org.apache.shindig.gadgets.Gadget;
 import org.apache.shindig.gadgets.GadgetContext;
 import org.apache.shindig.gadgets.GadgetException;
@@ -35,9 +33,6 @@ import org.apache.shindig.gadgets.parse.
 import org.apache.shindig.gadgets.rewrite.ContentRewriterFeature;
 import org.apache.shindig.gadgets.rewrite.GadgetRewriter;
 import org.apache.shindig.gadgets.rewrite.MutableContent;
-import org.apache.shindig.gadgets.rewrite.old.ContentRewriterUris;
-import org.apache.shindig.gadgets.rewrite.old.DefaultProxyingLinkRewriterFactory;
-import org.apache.shindig.gadgets.rewrite.old.LinkRewriter;
 import org.apache.shindig.gadgets.spec.GadgetSpec;
 
 import com.google.inject.AbstractModule;
@@ -71,15 +66,10 @@ public abstract class BaseRewriterTestCa
   protected Set<String> tags;
   protected ContentRewriterFeature.Config defaultRewriterFeature;
   protected ContentRewriterFeature.Factory rewriterFeatureFactory;
-  protected LinkRewriter defaultLinkRewriter;
-  protected LinkRewriter defaultLinkRewriterNoCache;
-  protected LinkRewriter defaultLinkRewriterNoCacheAndDebug;
   protected GadgetHtmlParser parser;
   protected Injector injector;
   protected HttpResponseBuilder fakeResponse;
-  protected ContentRewriterUris rewriterUris;
   protected IMocksControl control;
-  protected ContentRewriterUris defaultContainerRewriterUris;
 
   @Before
   public void setUp() throws Exception {
@@ -87,44 +77,10 @@ public abstract class BaseRewriterTestCa
         new ContentRewriterFeature.DefaultConfig(".*", "", "86400", "embed,img,script,link,style", false, false));
     defaultRewriterFeature = rewriterFeatureFactory.getDefault();
     tags = defaultRewriterFeature.getIncludedTags();
-    defaultContainerRewriterUris = new ContentRewriterUris(
-        new AbstractContainerConfig() {
-          @Override
-          public Object getProperty(String container, String name) {
-            return null;
-          }
-        }, DEFAULT_PROXY_BASE, DEFAULT_CONCAT_BASE);
-    defaultLinkRewriter = new DefaultProxyingLinkRewriterFactory(
-        defaultContainerRewriterUris).create(SPEC_URL, defaultRewriterFeature,
-        "default", false, false);
-    defaultLinkRewriterNoCache = new DefaultProxyingLinkRewriterFactory(
-        defaultContainerRewriterUris).create(SPEC_URL, defaultRewriterFeature,
-        "default", false, true);
-    defaultLinkRewriterNoCacheAndDebug = new DefaultProxyingLinkRewriterFactory(
-        defaultContainerRewriterUris).create(SPEC_URL, defaultRewriterFeature,
-        "default", true, true);
     injector = Guice.createInjector(getParseModule(), new PropertiesModule(), new TestModule());
     parser = injector.getInstance(GadgetHtmlParser.class);
     fakeResponse = new HttpResponseBuilder().setHeader("Content-Type", "unknown")
         .setResponse(new byte[]{ (byte)0xFE, (byte)0xFF});
-
-    ContainerConfig config = new AbstractContainerConfig() {
-      @Override
-      public Object getProperty(String container, String name) {
-        if (MOCK_CONTAINER.equals(container)) {
-          if (ContentRewriterUris.PROXY_BASE_CONFIG_PROPERTY.equals(name)) {
-            return MOCK_PROXY_BASE;
-          } else if (ContentRewriterUris.CONCAT_BASE_CONFIG_PROPERTY.equals(name)) {
-            return MOCK_CONCAT_BASE;
-          }
-        }
-
-        return null;
-      }
-    };
-
-    rewriterUris = new ContentRewriterUris(config, DEFAULT_PROXY_BASE,
-        DEFAULT_CONCAT_BASE);
     control = EasyMock.createControl();
   }
   

Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ContentRewriterFeatureTestCase.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ContentRewriterFeatureTestCase.java?rev=981723&r1=981722&r2=981723&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ContentRewriterFeatureTestCase.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ContentRewriterFeatureTestCase.java Tue Aug  3 02:05:39 2010
@@ -17,7 +17,6 @@
  */
 package org.apache.shindig.gadgets.rewrite;
 
-import org.apache.shindig.gadgets.rewrite.old.BaseRewriterTestCase;
 import org.junit.Test;
 
 import com.google.common.collect.Sets;

Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ContentRewriterFeatureTestCaseOS9.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ContentRewriterFeatureTestCaseOS9.java?rev=981723&r1=981722&r2=981723&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ContentRewriterFeatureTestCaseOS9.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ContentRewriterFeatureTestCaseOS9.java Tue Aug  3 02:05:39 2010
@@ -23,7 +23,6 @@ import static org.junit.Assert.assertTru
 
 import com.google.common.collect.Sets;
 
-import org.apache.shindig.gadgets.rewrite.old.BaseRewriterTestCase;
 import org.junit.Test;
 
 /**

Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssResponseRewriterTest.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssResponseRewriterTest.java?rev=981723&r1=981722&r2=981723&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssResponseRewriterTest.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssResponseRewriterTest.java Tue Aug  3 02:05:39 2010
@@ -24,18 +24,15 @@ import org.apache.commons.lang.StringUti
 import org.apache.shindig.common.uri.Uri;
 import org.apache.shindig.gadgets.http.HttpRequest;
 import org.apache.shindig.gadgets.http.HttpResponseBuilder;
-import org.apache.shindig.gadgets.parse.caja.CajaCssLexerParser;
 import org.apache.shindig.gadgets.parse.caja.CajaCssParser;
 import org.apache.shindig.gadgets.uri.PassthruManager;
 import org.apache.shindig.gadgets.uri.ProxyUriManager;
 import org.easymock.EasyMock;
-import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
 import java.io.StringReader;
 import java.io.StringWriter;
-import java.net.URI;
 import java.util.List;
 
 import com.google.common.collect.Lists;

Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/DefaultContentRewriterRegistryTest.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/DefaultContentRewriterRegistryTest.java?rev=981723&r1=981722&r2=981723&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/DefaultContentRewriterRegistryTest.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/DefaultContentRewriterRegistryTest.java Tue Aug  3 02:05:39 2010
@@ -24,9 +24,7 @@ import static org.junit.Assert.assertTru
 import org.apache.shindig.common.uri.Uri;
 import org.apache.shindig.gadgets.http.HttpRequest;
 import org.apache.shindig.gadgets.http.HttpResponse;
-import org.apache.shindig.gadgets.rewrite.old.BaseRewriterTestCase;
-import org.apache.shindig.gadgets.rewrite.old.CssRequestRewriter;
-import org.apache.shindig.gadgets.rewrite.old.HTMLContentRewriter;
+import org.apache.shindig.gadgets.http.HttpResponseBuilder;
 import org.easymock.EasyMock;
 import org.junit.Before;
 import org.junit.Test;
@@ -65,16 +63,20 @@ public class DefaultContentRewriterRegis
   }
 
   /**
-   * This test ensures that we dont call HttpRespose.getResponseAsString for content types
-   * that are not rewriteable by the default set of content rewriters. This is important
+   * This test ensures that we dont call HttpResponse.getResponseAsString if no content
+   * rewriter does so either. This is important
    * from a performance and content consistency standpoint. Because HttpResponse is final
    * we test that no new response object was created.
    */
   @Test
   public void testNoDecodeHttpResponseForUnRewriteableMimeTypes() throws Exception {
     List<ResponseRewriter> rewriters = Lists.newArrayList();
-    rewriters.add(injector.getInstance(HTMLContentRewriter.class));
-    rewriters.add(injector.getInstance(CssRequestRewriter.class));
+    rewriters.add(new ResponseRewriter() {
+      public void rewrite(HttpRequest request, HttpResponseBuilder response)
+          throws RewritingException {
+        // Do nothing.
+      } 
+    });
     registry = new DefaultResponseRewriterRegistry(rewriters, parser);
 
     HttpRequest req = control.createMock(HttpRequest.class);

Modified: shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndTest.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndTest.java?rev=981723&r1=981722&r2=981723&view=diff
==============================================================================
--- shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndTest.java (original)
+++ shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndTest.java Tue Aug  3 02:05:39 2010
@@ -46,7 +46,6 @@ import static org.junit.Assert.assertTru
 import static org.junit.Assert.fail;
 import org.junit.Before;
 import org.junit.BeforeClass;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
@@ -315,7 +314,8 @@ public class EndToEndTest {
   @Test
   public void testTemplateLibrary() throws Exception {
     HtmlPage page = executeAllPageTests("templateLibrary");
-    assertTrue(page.asXml().contains("p {color: red}"));
+    String pageXml = page.asXml();
+    assertTrue(pageXml.replaceAll("[\n\r ]", "").contains("p{color:red}"));
     
     Node paragraph = page.getElementsByTagName("p").item(0);
     assertEquals("Hello world", paragraph.getTextContent().trim());