Author: lryan
Date: Tue Nov 11 11:01:42 2008
New Revision: 713110

URL: http://svn.apache.org/viewvc?rev=713110&view=rev
Log:
Use Uri instead of java.net.URI consistently in rewriters

Modified:
    
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/util/HashUtil.java
    
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CSSContentRewriter.java
    
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CssRewriter.java
    
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriter.java
    
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/LinkRewriter.java
    
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/ProxyingLinkRewriter.java
    
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/DefaultContentRewriter.java
    
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/HtmlRewriter.java
    
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/JavascriptTagMerger.java
    
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/LinkingTagRewriter.java
    
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/StyleTagRewriter.java
    
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/ConcatProxyServlet.java
    
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/BaseRewriterTestCase.java
    
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssRewriterTest.java
    
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/DefaultContentRewriterRegistryTest.java
    
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/MutableContentTest.java
    
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ProxyingLinkRewriterTest.java
    
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/HtmlRewriterTest.java
    
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/JavascriptTagMergerTest.java
    
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/LinkingTagRewriterTest.java

Modified: 
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/util/HashUtil.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/util/HashUtil.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/util/HashUtil.java
 (original)
+++ 
incubator/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/util/HashUtil.java
 Tue Nov 11 11:01:42 2008
@@ -52,4 +52,24 @@
     }
     return hexString.toString();
   }
+
+  /**
+   * Produces a raw checksum for the given input data.
+   *
+   * @param data
+   * @return The checksum.
+   */
+  public static String rawChecksum(byte[] data) {
+    MessageDigest md;
+    try {
+      md = MessageDigest.getInstance("MD5");
+    } catch (NoSuchAlgorithmException noMD5) {
+      try {
+        md = MessageDigest.getInstance("SHA");
+      } catch (NoSuchAlgorithmException noSha) {
+        throw new RuntimeException("No suitable MessageDigest found!");
+      }
+    }
+    return new String(md.digest(data));
+  }
 }

Modified: 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CSSContentRewriter.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CSSContentRewriter.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CSSContentRewriter.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CSSContentRewriter.java
 Tue Nov 11 11:01:42 2008
@@ -17,6 +17,7 @@
  */
 package org.apache.shindig.gadgets.rewrite;
 
+import org.apache.shindig.common.uri.Uri;
 import org.apache.shindig.gadgets.Gadget;
 import org.apache.shindig.gadgets.http.HttpRequest;
 import org.apache.shindig.gadgets.http.HttpResponse;
@@ -24,8 +25,6 @@
 import com.google.inject.Inject;
 import com.google.inject.name.Named;
 
-import java.net.URI;
-
 /**
  * Rewrite links to referenced content in stylsheets
  */
@@ -51,13 +50,13 @@
       return null;      
     }
     ContentRewriterFeature feature = rewriterFeatureFactory.get(request);
-    content.setContent(CssRewriter.rewrite(content.getContent(), 
request.getUri().toJavaUri(),
-        createLinkRewriter(request.getGadget().toJavaUri(),  feature)));
+    content.setContent(CssRewriter.rewrite(content.getContent(), 
request.getUri(),
+        createLinkRewriter(request.getGadget(), feature)));
 
     return RewriterResults.cacheableIndefinitely();
   }
 
-  protected LinkRewriter createLinkRewriter(URI gadgetUri, 
ContentRewriterFeature feature) {
+  protected LinkRewriter createLinkRewriter(Uri gadgetUri, 
ContentRewriterFeature feature) {
     return new ProxyingLinkRewriter(gadgetUri, feature, proxyBaseNoGadget);
   }
 }

Modified: 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CssRewriter.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CssRewriter.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CssRewriter.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CssRewriter.java
 Tue Nov 11 11:01:42 2008
@@ -17,11 +17,12 @@
  */
 package org.apache.shindig.gadgets.rewrite;
 
+import org.apache.shindig.common.uri.Uri;
+
 import com.google.caja.lexer.*;
 import com.google.common.collect.Lists;
 
 import java.io.*;
-import java.net.URI;
 import java.util.List;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
@@ -35,20 +36,20 @@
       Pattern.compile("(url\\s*\\(\\s*['\"]?)([^\\)'\"]*)(['\"]?\\s*\\))",
         Pattern.CASE_INSENSITIVE);
 
-  public static String rewrite(String content, URI source,
+  public static String rewrite(String content, Uri source,
       LinkRewriter linkRewriter) {
     StringWriter sw = new StringWriter((content.length() * 110) / 100);
     rewrite(new StringReader(content), source, linkRewriter, sw, false);
     return sw.toString();
   }
 
-  public static List<String> rewrite(Reader content, URI source,
+  public static List<String> rewrite(Reader content, Uri source,
       LinkRewriter rewriter,
       Writer writer,
       boolean extractImports) {
     List<String> imports = Lists.newArrayList();
     CharProducer producer = CharProducer.Factory.create(content,
-        new InputSource(source));
+        new InputSource(source.toJavaUri()));
     CssLexer lexer = new CssLexer(producer);
     try {
       boolean inImport = false;
@@ -89,7 +90,7 @@
     return imports;
   }
 
-  private static String rewriteLink(Token<CssTokenType> token, URI base, 
LinkRewriter rewriter) {
+  private static String rewriteLink(Token<CssTokenType> token, Uri base, 
LinkRewriter rewriter) {
     Matcher matcher = urlMatcher.matcher(token.text);
     if (!matcher.find()) return token.text;
     return "url(\"" + rewriter.rewrite(matcher.group(2).trim(), base) + "\")";

Modified: 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriter.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriter.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriter.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriter.java
 Tue Nov 11 11:01:42 2008
@@ -34,7 +34,6 @@
 import com.google.common.collect.Sets;
 import com.google.inject.Inject;
 import com.google.inject.name.Named;
-
 import org.w3c.dom.Element;
 import org.w3c.dom.NamedNodeMap;
 import org.w3c.dom.Node;
@@ -44,12 +43,7 @@
 import java.io.UnsupportedEncodingException;
 import java.net.URI;
 import java.net.URLEncoder;
-import java.util.ArrayList;
-import java.util.LinkedHashSet;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
 
 /**
  * Perform rewriting of HTML content including
@@ -153,7 +147,7 @@
       }
     }));
 
-    LinkRewriter linkRewriter = createLinkRewriter(gadgetUri.toJavaUri(), 
feature);
+    LinkRewriter linkRewriter = createLinkRewriter(gadgetUri, feature);
 
     for (Node styleNode : styleTags) {
       mutated |= true;
@@ -164,7 +158,7 @@
       String styleText = styleNode.getTextContent();
       StringWriter sw = new StringWriter(styleText.length());
       List<String> extractedUrls = CssRewriter.rewrite(new 
StringReader(styleText),
-          contentBase.toJavaUri(), linkRewriter, sw, true);
+          contentBase, linkRewriter, sw, true);
       styleText = sw.toString().trim();
       if (styleText.length() == 0 || (styleText.length() < 25 &&
         styleText.replace("<!--", "").replace("//-->", "").
@@ -204,7 +198,7 @@
     return mutated;
   }
 
-  protected LinkRewriter createLinkRewriter(URI gadgetUri, 
ContentRewriterFeature feature) {
+  protected LinkRewriter createLinkRewriter(Uri gadgetUri, 
ContentRewriterFeature feature) {
     return new ProxyingLinkRewriter(gadgetUri, feature, proxyBaseNoGadget);
   }
 
@@ -260,7 +254,7 @@
   protected boolean rewriteContentReferences(List<Node> nodeList, 
ContentRewriterFeature feature,
       Uri gadgetUri, Uri contentBase) {
     boolean mutated = false;
-    LinkRewriter rewriter = createLinkRewriter(gadgetUri.toJavaUri(), feature);
+    LinkRewriter rewriter = createLinkRewriter(gadgetUri, feature);
 
     final Set<String> tagNames = LINKING_TAG_ATTRS.keySet();
     tagNames.retainAll(feature.getIncludedTags());
@@ -279,7 +273,7 @@
         Node attr = attributes.item(i);
         if (rewriteable.contains(attr.getNodeName().toLowerCase())) {
           mutated = true;
-          attr.setNodeValue(rewriter.rewrite(attr.getNodeValue(), 
contentBase.toJavaUri()));
+          attr.setNodeValue(rewriter.rewrite(attr.getNodeValue(), 
contentBase));
         }
       }
     }

Modified: 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/LinkRewriter.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/LinkRewriter.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/LinkRewriter.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/LinkRewriter.java
 Tue Nov 11 11:01:42 2008
@@ -18,13 +18,13 @@
  */
 package org.apache.shindig.gadgets.rewrite;
 
-import java.net.URI;
+import org.apache.shindig.common.uri.Uri;
 
 /**
  * Rewrite a link
  */
 public interface LinkRewriter {
 
-  public String rewrite(String link, URI context);
+  public String rewrite(String link, Uri context);
 
 }

Modified: 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/ProxyingLinkRewriter.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/ProxyingLinkRewriter.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/ProxyingLinkRewriter.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/ProxyingLinkRewriter.java
 Tue Nov 11 11:01:42 2008
@@ -18,12 +18,10 @@
  */
 package org.apache.shindig.gadgets.rewrite;
 
+import org.apache.shindig.common.uri.Uri;
 import org.apache.shindig.common.util.Utf8UrlCoder;
 import org.apache.shindig.gadgets.servlet.ProxyBase;
 
-import java.net.URI;
-import java.net.URISyntaxException;
-
 /**
  * Simple link rewriter that will rewrite a link to the form 
http://www.host.com/proxy/url=<url
  * encoded link>&gadget=<gadget spec url>&fp=<fingeprint of rewriting rule>
@@ -34,16 +32,16 @@
 
   private final ContentRewriterFeature rewriterFeature;
 
-  private final URI gadgetUri;
+  private final Uri gadgetUri;
 
-  public ProxyingLinkRewriter(URI gadgetUri, ContentRewriterFeature 
rewriterFeature,
+  public ProxyingLinkRewriter(Uri gadgetUri, ContentRewriterFeature 
rewriterFeature,
       String prefix) {
     this.prefix = prefix;
     this.rewriterFeature = rewriterFeature;
     this.gadgetUri = gadgetUri;
   }
 
-  public String rewrite(String link, URI context) {
+  public String rewrite(String link, Uri context) {
     link = link.trim();
     // We shouldnt bother proxying empty URLs
     if (link.length() == 0) {
@@ -51,8 +49,8 @@
     }
 
     try {
-      URI linkUri = new URI(link);
-      URI uri = context.resolve(linkUri);
+      Uri linkUri = Uri.parse(link);
+      Uri uri = context.resolve(linkUri);
       if (rewriterFeature.shouldRewriteURL(uri.toString())) {
         String result = prefix
             + Utf8UrlCoder.encode(uri.toString())
@@ -66,7 +64,7 @@
       } else {
         return uri.toString();
       }
-    } catch (URISyntaxException use) {
+    } catch (IllegalArgumentException use) {
       // Unrecoverable. Just return link
       return link;
     }

Modified: 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/DefaultContentRewriter.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/DefaultContentRewriter.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/DefaultContentRewriter.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/DefaultContentRewriter.java
 Tue Nov 11 11:01:42 2008
@@ -32,7 +32,6 @@
 import com.google.inject.name.Named;
 
 import java.io.*;
-import java.net.URI;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
@@ -95,7 +94,7 @@
       if (request.getGadget() != null) {
         spec = specFactory.getGadgetSpec(request.getGadget().toJavaUri(), 
false);
       }
-      if (rewrite(spec, request.getUri().toJavaUri(),
+      if (rewrite(spec, request.getUri(),
                   new StringReader(content.getContent()),
                   mimeType,
                   output)) {
@@ -119,13 +118,13 @@
     if (view != null && view.getHref() != null) {
       base = view.getHref();
     }
-    if (rewrite(spec, base.toJavaUri(), reader, "text/html", sw)) {
+    if (rewrite(spec, base, reader, "text/html", sw)) {
       content.setContent(sw.toString());
     }
     return RewriterResults.cacheableIndefinitely();
   }
 
-  private boolean rewrite(GadgetSpec spec, URI source, Reader r, String 
mimeType, Writer w) {
+  private boolean rewrite(GadgetSpec spec, Uri source, Reader r, String 
mimeType, Writer w) {
     // Dont rewrite content if the spec is unavailable
     if (spec == null) {
       return false;
@@ -192,6 +191,6 @@
 
   protected LinkRewriter createLinkRewriter(GadgetSpec spec,
       ContentRewriterFeature rewriterFeature) {
-    return new ProxyingLinkRewriter(spec.getUrl().toJavaUri(), 
rewriterFeature, getProxyUrl());
+    return new ProxyingLinkRewriter(spec.getUrl(), rewriterFeature, 
getProxyUrl());
   }
 }

Modified: 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/HtmlRewriter.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/HtmlRewriter.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/HtmlRewriter.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/HtmlRewriter.java
 Tue Nov 11 11:01:42 2008
@@ -18,19 +18,11 @@
  */
 package org.apache.shindig.gadgets.rewrite.lexer;
 
-import com.google.caja.lexer.CharProducer;
-import com.google.caja.lexer.HtmlLexer;
-import com.google.caja.lexer.HtmlTokenType;
-import com.google.caja.lexer.InputSource;
-import com.google.caja.lexer.ParseException;
-import com.google.caja.lexer.Token;
-
-import java.io.IOException;
-import java.io.Reader;
-import java.io.StringReader;
-import java.io.StringWriter;
-import java.io.Writer;
-import java.net.URI;
+import org.apache.shindig.common.uri.Uri;
+
+import com.google.caja.lexer.*;
+
+import java.io.*;
 import java.util.Map;
 
 /**
@@ -41,18 +33,18 @@
   private HtmlRewriter() {
   }
 
-  public static String rewrite(String content, URI source,
+  public static String rewrite(String content, Uri source,
       Map<String, HtmlTagTransformer> transformers) {
     StringWriter sw = new StringWriter((content.length() * 110) / 100);
     rewrite(new StringReader(content), source, transformers, sw);
     return sw.toString();
   }
 
-  public static void rewrite(Reader content, URI source,
+  public static void rewrite(Reader content, Uri source,
       Map<String, HtmlTagTransformer> transformers,
       Writer writer) {
     CharProducer producer = CharProducer.Factory.create(content,
-        new InputSource(source));
+        new InputSource(source.toJavaUri()));
     HtmlLexer lexer = new HtmlLexer(producer);
     try {
       Token<HtmlTokenType> lastToken = null;

Modified: 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/JavascriptTagMerger.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/JavascriptTagMerger.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/JavascriptTagMerger.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/JavascriptTagMerger.java
 Tue Nov 11 11:01:42 2008
@@ -18,6 +18,7 @@
  */
 package org.apache.shindig.gadgets.rewrite.lexer;
 
+import org.apache.shindig.common.uri.Uri;
 import org.apache.shindig.common.util.Utf8UrlCoder;
 import org.apache.shindig.gadgets.rewrite.ContentRewriterFeature;
 import org.apache.shindig.gadgets.servlet.ProxyBase;
@@ -27,8 +28,6 @@
 import com.google.caja.lexer.Token;
 
 import java.io.UnsupportedEncodingException;
-import java.net.URI;
-import java.net.URISyntaxException;
 import java.net.URLEncoder;
 import java.util.ArrayList;
 import java.util.List;
@@ -47,7 +46,7 @@
 
   private final String concatBase;
 
-  private final URI relativeUrlBase;
+  private final Uri relativeUrlBase;
 
   private boolean isTagOpen = true;
 
@@ -57,7 +56,7 @@
    * @param relativeUrlBase to resolve relative urls
    */
   public JavascriptTagMerger(GadgetSpec spec, ContentRewriterFeature 
rewriterFeature,
-                             String concatBase, URI relativeUrlBase) {
+                             String concatBase, Uri relativeUrlBase) {
     // Force the mime-type to mimic browser expectation so rewriters
     // can function properly
     this.concatBase = concatBase
@@ -80,12 +79,12 @@
         if (lastToken != null &&
             lastToken.type == HtmlTokenType.ATTRNAME &&
             lastToken.text.equalsIgnoreCase("src")) {
-          scripts.add(new URI(stripQuotes(token.text)));
+          scripts.add(Uri.parse(stripQuotes(token.text)));
         } else if (token.type == HtmlTokenType.UNESCAPED) {
           scripts.add(token);
         }
       }
-    } catch (URISyntaxException use) {
+    } catch (IllegalArgumentException use) {
       throw new RuntimeException(use);
     }
   }
@@ -103,11 +102,11 @@
 
   @SuppressWarnings("unchecked")
   public String close() {
-    List<URI> concat = new ArrayList<URI>();
+    List<Uri> concat = new ArrayList<Uri>();
     StringBuilder builder = new StringBuilder(100);
     for (Object o : scripts) {
-      if (o instanceof URI) {
-        concat.add((URI) o);
+      if (o instanceof Uri) {
+        concat.add((Uri) o);
       } else {
         flushConcat(concat, builder);
         builder.append("<script type=\"text/javascript\">")
@@ -120,7 +119,7 @@
     return builder.toString();
   }
 
-  private void flushConcat(List<URI> concat, StringBuilder builder) {
+  private void flushConcat(List<Uri> concat, StringBuilder builder) {
     if (concat.isEmpty()) {
       return;
     }
@@ -129,7 +128,7 @@
     int paramIndex = 1;
     try {
       for (int i = 0; i < concat.size(); i++) {
-        URI srcUrl = concat.get(i);
+        Uri srcUrl = concat.get(i);
         if (!srcUrl.isAbsolute()) {
           srcUrl = relativeUrlBase.resolve(srcUrl);
         }

Modified: 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/LinkingTagRewriter.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/LinkingTagRewriter.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/LinkingTagRewriter.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/LinkingTagRewriter.java
 Tue Nov 11 11:01:42 2008
@@ -18,22 +18,18 @@
  */
 package org.apache.shindig.gadgets.rewrite.lexer;
 
+import org.apache.shindig.common.uri.Uri;
 import org.apache.shindig.gadgets.rewrite.LinkRewriter;
 
 import com.google.caja.lexer.HtmlTokenType;
 import com.google.caja.lexer.Token;
 
-import java.net.URI;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
 
 /** Rewrite a linking attribute of an HTML tag to an arbitrary scheme */
 public class LinkingTagRewriter implements HtmlTagTransformer {
 
-  private final URI relativeBase;
+  private final Uri relativeBase;
 
   private final LinkRewriter linkRewriter;
 
@@ -51,12 +47,12 @@
     return targets;
   }
 
-  public LinkingTagRewriter(LinkRewriter linkRewriter, URI relativeBase) {
+  public LinkingTagRewriter(LinkRewriter linkRewriter, Uri relativeBase) {
     this(getDefaultTargets(), linkRewriter, relativeBase);
   }
 
   public LinkingTagRewriter(Map<String, Set<String>> tagAttributeTargets,
-      LinkRewriter linkRewriter, URI relativeBase) {
+      LinkRewriter linkRewriter, Uri relativeBase) {
     this.tagAttributeTargets = tagAttributeTargets;
     this.linkRewriter = linkRewriter;
     this.relativeBase = relativeBase;

Modified: 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/StyleTagRewriter.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/StyleTagRewriter.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/StyleTagRewriter.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/lexer/StyleTagRewriter.java
 Tue Nov 11 11:01:42 2008
@@ -18,25 +18,24 @@
  */
 package org.apache.shindig.gadgets.rewrite.lexer;
 
+import org.apache.shindig.common.uri.Uri;
 import org.apache.shindig.gadgets.rewrite.CssRewriter;
 import org.apache.shindig.gadgets.rewrite.LinkRewriter;
 
 import com.google.caja.lexer.HtmlTokenType;
 import com.google.caja.lexer.Token;
 
-import java.net.URI;
-
 /**
  * Rewrite the CSS content of a style tag
  */
 public class StyleTagRewriter implements HtmlTagTransformer {
 
-  private URI source;
+  private Uri source;
   private LinkRewriter linkRewriter;
 
   private StringBuffer sb;
 
-  public StyleTagRewriter(URI source, LinkRewriter linkRewriter) {
+  public StyleTagRewriter(Uri source, LinkRewriter linkRewriter) {
     this.source = source;
     this.linkRewriter = linkRewriter;
     sb = new StringBuffer(500);

Modified: 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/ConcatProxyServlet.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/ConcatProxyServlet.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/ConcatProxyServlet.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/ConcatProxyServlet.java
 Tue Nov 11 11:01:42 2008
@@ -18,27 +18,22 @@
 
 package org.apache.shindig.gadgets.servlet;
 
-import com.google.inject.Inject;
-
 import org.apache.shindig.common.servlet.InjectedServlet;
 import org.apache.shindig.gadgets.GadgetException;
 
+import com.google.inject.Inject;
+
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.*;
 import java.io.IOException;
+import java.util.Locale;
 import java.util.logging.Level;
 import java.util.logging.Logger;
-import java.util.Locale;
-
-import javax.servlet.ServletOutputStream;
-import javax.servlet.http.Cookie;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletRequestWrapper;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpServletResponseWrapper;
 
 /**
  * Servlet which concatenates the content of several proxied HTTP responses
  *
- * @see org.apache.shindig.gadgets.rewrite.JavascriptTagMerger
+ * @see org.apache.shindig.gadgets.rewrite.HTMLContentRewriter
  */
 public class ConcatProxyServlet extends InjectedServlet {
 

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/BaseRewriterTestCase.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/BaseRewriterTestCase.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/BaseRewriterTestCase.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/BaseRewriterTestCase.java
 Tue Nov 11 11:01:42 2008
@@ -18,6 +18,7 @@
 package org.apache.shindig.gadgets.rewrite;
 
 import org.apache.commons.lang.StringUtils;
+import org.apache.shindig.common.PropertiesModule;
 import org.apache.shindig.common.uri.Uri;
 import org.apache.shindig.gadgets.EasyMockTestCase;
 import org.apache.shindig.gadgets.Gadget;
@@ -57,10 +58,10 @@
     defaultRewriterFeature = rewriterFeatureFactory.getDefault();
     tags = defaultRewriterFeature.getIncludedTags();
     defaultLinkRewriter = new ProxyingLinkRewriter(
-      SPEC_URL.toJavaUri(),
+        SPEC_URL,
         defaultRewriterFeature,
         DEFAULT_PROXY_BASE);
-    injector = Guice.createInjector(new ParseModule());
+    injector = Guice.createInjector(new ParseModule(), new PropertiesModule());
     parser = injector.getInstance(GadgetHtmlParser.class);
   }
 

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssRewriterTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssRewriterTest.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssRewriterTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssRewriterTest.java
 Tue Nov 11 11:01:42 2008
@@ -17,11 +17,12 @@
  */
 package org.apache.shindig.gadgets.rewrite;
 
+import org.apache.shindig.common.uri.Uri;
+
 import com.google.common.collect.Lists;
 
 import java.io.StringReader;
 import java.io.StringWriter;
-import java.net.URI;
 import java.util.List;
 
 /**
@@ -29,15 +30,15 @@
  */
 public class CssRewriterTest extends BaseRewriterTestCase {
 
-  private URI dummyUri;
+  private Uri dummyUri;
 
   @Override
   protected void setUp() throws Exception {
     super.setUp();
-    dummyUri = new URI("http://www.w3c.org";);
+    dummyUri = Uri.parse("http://www.w3c.org";);
   }
 
-  private void validateRewritten(String content, URI base,
+  private void validateRewritten(String content, Uri base,
       LinkRewriter rewriter, String expected) {
     assertEquals(expected, CssRewriter.rewrite(content, base, rewriter));
   }

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/DefaultContentRewriterRegistryTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/DefaultContentRewriterRegistryTest.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/DefaultContentRewriterRegistryTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/DefaultContentRewriterRegistryTest.java
 Tue Nov 11 11:01:42 2008
@@ -17,10 +17,7 @@
  */
 package org.apache.shindig.gadgets.rewrite;
 
-import com.google.common.collect.Lists;
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-import junit.framework.TestCase;
+import org.apache.shindig.common.PropertiesModule;
 import org.apache.shindig.common.uri.Uri;
 import org.apache.shindig.gadgets.Gadget;
 import org.apache.shindig.gadgets.GadgetContext;
@@ -30,6 +27,11 @@
 import org.apache.shindig.gadgets.parse.ParseModule;
 import org.apache.shindig.gadgets.spec.GadgetSpec;
 
+import com.google.common.collect.Lists;
+import com.google.inject.Guice;
+import com.google.inject.Injector;
+import junit.framework.TestCase;
+
 import java.util.Arrays;
 import java.util.List;
 
@@ -41,7 +43,7 @@
   private GadgetHtmlParser parser;
 
   protected void setUp() throws Exception {
-    Injector injector = Guice.createInjector(new ParseModule());
+    Injector injector = Guice.createInjector(new ParseModule(), new 
PropertiesModule());
     parser = injector.getInstance(GadgetHtmlParser.class);
     rewriters = Arrays.asList(new CaptureRewriter(), new CaptureRewriter());
     contentRewriters = Lists.<ContentRewriter>newArrayList(rewriters);

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/MutableContentTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/MutableContentTest.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/MutableContentTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/MutableContentTest.java
 Tue Nov 11 11:01:42 2008
@@ -18,15 +18,13 @@
  */
 package org.apache.shindig.gadgets.rewrite;
 
+import org.apache.shindig.common.PropertiesModule;
 import org.apache.shindig.gadgets.parse.GadgetHtmlParser;
 import org.apache.shindig.gadgets.parse.ParseModule;
 
 import com.google.inject.Guice;
 import com.google.inject.Injector;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertSame;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.*;
 import org.junit.Before;
 import org.junit.Test;
 import org.w3c.dom.Document;
@@ -40,7 +38,7 @@
     // Note dependency on CajaHtmlParser - this isn't particularly ideal but is
     // sufficient given that this test doesn't exercise the parser extensively 
at all,
     // instead focusing on the additional utility provided by 
MutableHtmlContent
-    Injector injector = Guice.createInjector(new ParseModule());
+    Injector injector = Guice.createInjector(new ParseModule(), new 
PropertiesModule());
     mhc = new MutableContent(injector.getInstance(GadgetHtmlParser.class), 
"DEFAULT VIEW", null);
   }
   

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ProxyingLinkRewriterTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ProxyingLinkRewriterTest.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ProxyingLinkRewriterTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/ProxyingLinkRewriterTest.java
 Tue Nov 11 11:01:42 2008
@@ -25,7 +25,7 @@
 public class ProxyingLinkRewriterTest extends BaseRewriterTestCase {
 
   private String rewrite(String uri) {
-    return defaultLinkRewriter.rewrite(uri, SPEC_URL.toJavaUri());
+    return defaultLinkRewriter.rewrite(uri, SPEC_URL);
   }
 
   public void testAbsoluteRewrite() {
@@ -57,12 +57,12 @@
         createSpecWithoutRewrite(), ".*", "", "86400",
         Sets.newHashSet("embed", "img", "script", "link", "style"));
     ProxyingLinkRewriter rewriter = new ProxyingLinkRewriter(
-      SPEC_URL.toJavaUri(),
+      SPEC_URL,
       contentRewriterFeature,
         DEFAULT_PROXY_BASE);
     String val = " test.gif ";
     
assertEquals("http://www.test.com/dir/proxy?url=http%3A%2F%2Fwww.example.org%2Fdir%2Ftest.gif&gadget=http%3A%2F%2Fwww.example.org%2Fdir%2Fg.xml&fp=-182800334&refresh=86400";,
-        rewriter.rewrite(val, SPEC_URL.toJavaUri()));
+        rewriter.rewrite(val, SPEC_URL));
   }
 
   public void testInvalidCharRewrite() {

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/HtmlRewriterTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/HtmlRewriterTest.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/HtmlRewriterTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/HtmlRewriterTest.java
 Tue Nov 11 11:01:42 2008
@@ -18,9 +18,9 @@
  */
 package org.apache.shindig.gadgets.rewrite.lexer;
 
+import org.apache.shindig.common.uri.Uri;
 import org.apache.shindig.gadgets.rewrite.BaseRewriterTestCase;
 
-import java.net.URI;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -29,18 +29,18 @@
  */
 public class HtmlRewriterTest extends BaseRewriterTestCase {
 
-  private URI dummyUri;
+  private Uri dummyUri;
 
   private Map<String, HtmlTagTransformer> defaultTransformerMap;
 
   @Override
   protected void setUp() throws Exception {
     super.setUp();
-    dummyUri = new URI("http://www.w3c.org";);
+    dummyUri = Uri.parse("http://www.w3c.org";);
     defaultTransformerMap = new HashMap<String, HtmlTagTransformer>();
   }
 
-  private void validateRewritten(String content, URI base,
+  private void validateRewritten(String content, Uri base,
       Map<String, HtmlTagTransformer> transformerMap,
       String expected) {
     assertEquals(expected, HtmlRewriter.rewrite(content, base, 
transformerMap));

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/JavascriptTagMergerTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/JavascriptTagMergerTest.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/JavascriptTagMergerTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/JavascriptTagMergerTest.java
 Tue Nov 11 11:01:42 2008
@@ -18,9 +18,9 @@
  */
 package org.apache.shindig.gadgets.rewrite.lexer;
 
+import org.apache.shindig.common.uri.Uri;
 import org.apache.shindig.gadgets.rewrite.BaseRewriterTestCase;
 
-import java.net.URI;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -29,22 +29,22 @@
  */
 public class JavascriptTagMergerTest extends BaseRewriterTestCase {
 
-  private URI dummyUri;
+  private Uri dummyUri;
 
   private Map<String, HtmlTagTransformer> defaultTransformerMap;
 
   @Override
   protected void setUp() throws Exception {
     super.setUp();
-    dummyUri = new URI("http://www.w3c.org";);
-    URI relativeBase = new URI("http://a.b.com/";);
+    dummyUri = Uri.parse("http://www.w3c.org";);
+    Uri relativeBase = Uri.parse("http://a.b.com/";);
     defaultTransformerMap = new HashMap<String, HtmlTagTransformer>();
     defaultTransformerMap
         .put("script", new JavascriptTagMerger(createSpecWithoutRewrite(), 
defaultRewriterFeature,
             "http://www.test.com/concat?";, relativeBase));
   }
 
-  private void validateRewritten(String content, URI base,
+  private void validateRewritten(String content, Uri base,
       Map<String, HtmlTagTransformer> transformerMap,
       String expected) {
     assertEquals(expected, HtmlRewriter.rewrite(content, base, 
transformerMap));

Modified: 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/LinkingTagRewriterTest.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/LinkingTagRewriterTest.java?rev=713110&r1=713109&r2=713110&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/LinkingTagRewriterTest.java
 (original)
+++ 
incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/lexer/LinkingTagRewriterTest.java
 Tue Nov 11 11:01:42 2008
@@ -18,9 +18,9 @@
  */
 package org.apache.shindig.gadgets.rewrite.lexer;
 
+import org.apache.shindig.common.uri.Uri;
 import org.apache.shindig.gadgets.rewrite.BaseRewriterTestCase;
 
-import java.net.URI;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -29,15 +29,15 @@
  */
 public class LinkingTagRewriterTest extends BaseRewriterTestCase {
 
-  private URI dummyUri;
+  private Uri dummyUri;
 
   private Map<String, HtmlTagTransformer> defaultTransformerMap;
 
   @Override
   protected void setUp() throws Exception {
     super.setUp();
-    dummyUri = new URI("http://www.w3c.org";);
-    URI relativeBase = new URI("http://a.b.com/";);
+    dummyUri = Uri.parse("http://www.w3c.org";);
+    Uri relativeBase = Uri.parse("http://a.b.com/";);
     LinkingTagRewriter rewriter = new LinkingTagRewriter(defaultLinkRewriter, 
relativeBase);
     defaultTransformerMap = new HashMap<String, HtmlTagTransformer>();
     for (String tag : rewriter.getSupportedTags()) {
@@ -46,7 +46,7 @@
     }
   }
 
-  private void validateRewritten(String content, URI base,
+  private void validateRewritten(String content, Uri base,
       Map<String, HtmlTagTransformer> transformerMap,
       String expected) {
     assertEquals(expected, HtmlRewriter.rewrite(content, base, 
transformerMap));


Reply via email to