Author: johnh
Date: Wed Feb 10 22:08:15 2010
New Revision: 908672

URL: http://svn.apache.org/viewvc?rev=908672&view=rev
Log:
Continued Exception-handling cleanup.

This CL continues the now-prevalent pattern in Shindig of wrapping an HTTP 
status code with checked Exceptions. This pattern stands in contrast to 
introducing (with lots of associated refactoring) several new types of checked 
exceptions, and seems to do the job pretty well for reasonably minimal effort.

Specific changes:
1. Add HTTP response code optionally to GadgetException. Upon audit I found 
that all caught GadgetExceptions that were being transformed into user response 
were transformed into SC_INTERNAL_SERVER_ERROR, so I've defaulted the 
exception's status code to that.
2. Add response code as required to RewritingException. RewritingException was 
so useless before that it was never thrown - instead, RuntimeException was 
thrown, wrapping GadgetException in a few circumstances. This has been 
disentangled.

I'm leaving specific response-code changes resulting from GadgetException 
throw/catch to a follow-up CL.



Modified:
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AbstractSpecFactory.java
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/GadgetException.java
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/process/Processor.java
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/DefaultRpcServiceLookup.java
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/HtmlRenderer.java
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/OpenSocialI18NGadgetRewriter.java
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/Renderer.java
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingException.java
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingGadgetRewriter.java
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CssRequestRewriter.java
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriter.java
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewritingException.java
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/TemplateRewriter.java
    
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssRequestRewriterTest.java
    
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriterTest.java

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AbstractSpecFactory.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AbstractSpecFactory.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AbstractSpecFactory.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/AbstractSpecFactory.java
 Wed Feb 10 22:08:15 2010
@@ -130,6 +130,7 @@
     if (response.getHttpStatusCode() != HttpResponse.SC_OK) {
       throw new 
GadgetException(GadgetException.Code.FAILED_TO_RETRIEVE_CONTENT,
                                 "Unable to retrieve spec for " + query.specUri 
+ ". HTTP error " +
+                                response.getHttpStatusCode(),
                                 response.getHttpStatusCode());
     }
 
@@ -223,7 +224,7 @@
   protected static class SpecRetrievalFailedException extends GadgetException {
     SpecRetrievalFailedException(Uri specUri, int code) {
       super(GadgetException.Code.FAILED_TO_RETRIEVE_CONTENT,
-            "Unable to retrieve spec for " + specUri + ". HTTP error " + code);
+            "Unable to retrieve spec for " + specUri + ". HTTP error " + code, 
code);
     }
   }
 }

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/GadgetException.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/GadgetException.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/GadgetException.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/GadgetException.java
 Wed Feb 10 22:08:15 2010
@@ -17,6 +17,8 @@
  */
 package org.apache.shindig.gadgets;
 
+import org.apache.shindig.gadgets.http.HttpResponse;
+
 /**
  * Base class for all Gadget exceptions. The bulk of the code uses
  * this class directly, differentiating between error conditions by
@@ -80,27 +82,52 @@
   }
 
   private final Code code;
-
-  public GadgetException(Code code) {
+  private final int httpStatusCode;
+  
+  public GadgetException(Code code, int httpStatusCode) {
     this.code = code;
+    this.httpStatusCode = httpStatusCode;
   }
 
-  public GadgetException(Code code, Throwable cause) {
+  public GadgetException(Code code, Throwable cause, int httpStatusCode) {
     super(cause);
     this.code = code;
+    this.httpStatusCode = httpStatusCode;
   }
 
-  public GadgetException(Code code, String msg, Throwable cause) {
+  public GadgetException(Code code, String msg, Throwable cause, int 
httpStatusCode) {
     super(msg, cause);
     this.code = code;
+    this.httpStatusCode = httpStatusCode;
   }
 
-  public GadgetException(Code code, String msg) {
+  public GadgetException(Code code, String msg, int httpStatusCode) {
     super(msg);
     this.code = code;
+    this.httpStatusCode = httpStatusCode;
+  }
+
+  public GadgetException(Code code) {
+    this(code, HttpResponse.SC_INTERNAL_SERVER_ERROR);
+  }
+
+  public GadgetException(Code code, Throwable cause) {
+    this(code, cause, HttpResponse.SC_INTERNAL_SERVER_ERROR);
+  }
+
+  public GadgetException(Code code, String msg, Throwable cause) {
+    this(code, msg, cause, HttpResponse.SC_INTERNAL_SERVER_ERROR);
+  }
+
+  public GadgetException(Code code, String msg) {
+    this(code, msg, HttpResponse.SC_INTERNAL_SERVER_ERROR);
   }
 
   public Code getCode() {
     return code;
   }
+  
+  public int getHttpStatusCode() {
+    return httpStatusCode;
+  }
 }

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/process/Processor.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/process/Processor.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/process/Processor.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/process/Processor.java
 Wed Feb 10 22:08:15 2010
@@ -96,8 +96,7 @@
           .setSpec(spec)
           .setCurrentView(getView(context, spec));
     } catch (GadgetException e) {
-      throw new ProcessingException(e.getMessage(), e, 
-          HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
+      throw new ProcessingException(e.getMessage(), e, e.getHttpStatusCode());
     }
   }
 

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/DefaultRpcServiceLookup.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/DefaultRpcServiceLookup.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/DefaultRpcServiceLookup.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/DefaultRpcServiceLookup.java
 Wed Feb 10 22:08:15 2010
@@ -21,7 +21,6 @@
 import java.util.concurrent.ConcurrentMap;
 import java.util.concurrent.TimeUnit;
 
-import com.google.common.base.Preconditions;
 import com.google.common.collect.ImmutableMultimap;
 import com.google.common.collect.MapMaker;
 import com.google.common.collect.Multimap;

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/HtmlRenderer.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/HtmlRenderer.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/HtmlRenderer.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/HtmlRenderer.java
 Wed Feb 10 22:08:15 2010
@@ -29,13 +29,9 @@
 import org.apache.shindig.gadgets.spec.View;
 
 import java.util.Collection;
-import java.util.List;
 
 import com.google.inject.Inject;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
 /**
  * Handles producing output markup for a gadget based on the provided context.
  */
@@ -94,9 +90,9 @@
       
       return mc.getContent();
     } catch (GadgetException e) {
-      throw new RenderingException(e.getMessage(), e, 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
+      throw new RenderingException(e.getMessage(), e, e.getHttpStatusCode());
     } catch (RewritingException e) {
-      throw new RenderingException(e.getMessage(), e, 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
+      throw new RenderingException(e.getMessage(), e, e.getHttpStatusCode());
     }
   }
   

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/OpenSocialI18NGadgetRewriter.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/OpenSocialI18NGadgetRewriter.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/OpenSocialI18NGadgetRewriter.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/OpenSocialI18NGadgetRewriter.java
 Wed Feb 10 22:08:15 2010
@@ -27,8 +27,10 @@
 import org.apache.shindig.common.xml.DomUtil;
 import org.apache.shindig.gadgets.Gadget;
 import org.apache.shindig.gadgets.GadgetException;
+import org.apache.shindig.gadgets.http.HttpResponse;
 import org.apache.shindig.gadgets.rewrite.GadgetRewriter;
 import org.apache.shindig.gadgets.rewrite.MutableContent;
+import org.apache.shindig.gadgets.rewrite.RewritingException;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
@@ -42,7 +44,7 @@
   private static final String DATA_PATH = "features/i18n/data/";
   private Map<Locale, String> i18nConstantsCache = new 
ConcurrentHashMap<Locale, String>();
 
-  public void rewrite(Gadget gadget, MutableContent mutableContent) {
+  public void rewrite(Gadget gadget, MutableContent mutableContent) throws 
RewritingException {
     // Don't touch sanitized gadgets.
     if (gadget.sanitizeOutput()) {
       return;
@@ -58,9 +60,7 @@
       injectI18NConstants(gadget, head);
       mutableContent.documentChanged();
     } catch (GadgetException e) {
-      // TODO: Rewriter interface needs to be modified to handle 
GadgetException or
-      // RewriterException or something along those lines.
-      throw new RuntimeException(e);
+      throw new RewritingException(e, e.getHttpStatusCode());
     } 
   } 
 
@@ -80,7 +80,8 @@
         i18nConstantsCache.put(locale, inlineJs.toString());
       } catch (IOException e) {
         throw new GadgetException(GadgetException.Code.INVALID_CONFIG,
-            "Unexpected inability to load i18n data for locale: " + 
localeName);
+            "Unexpected inability to load i18n data for locale: " + localeName,
+            HttpResponse.SC_INTERNAL_SERVER_ERROR);
       }
     }
     Element inlineTag = headTag.getOwnerDocument().createElement("script");

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/Renderer.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/Renderer.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/Renderer.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/Renderer.java
 Wed Feb 10 22:08:15 2010
@@ -93,7 +93,8 @@
       return logError(context.getUrl(), e.getHttpStatusCode(), e);
     } catch (RuntimeException e) {
       if (e.getCause() instanceof GadgetException) {
-        return logError(context.getUrl(), 
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e.getCause());
+        return logError(context.getUrl(), 
((GadgetException)e.getCause()).getHttpStatusCode(),
+            e.getCause());
       }
       throw e;
     }

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingException.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingException.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingException.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingException.java
 Wed Feb 10 22:08:15 2010
@@ -18,8 +18,6 @@
  */
 package org.apache.shindig.gadgets.render;
 
-import javax.servlet.http.HttpServletResponse;
-
 /**
  * Exceptions thrown during gadget rendering.
  *

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingGadgetRewriter.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingGadgetRewriter.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingGadgetRewriter.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/render/RenderingGadgetRewriter.java
 Wed Feb 10 22:08:15 2010
@@ -191,9 +191,7 @@
 
       mutableContent.documentChanged();
     } catch (GadgetException e) {
-      // TODO: Rewriter interface needs to be modified to handle 
GadgetException or
-      // RewriterException or something along those lines.
-      throw new RewritingException(e.getLocalizedMessage(), e);
+      throw new RewritingException(e.getLocalizedMessage(), e, 
e.getHttpStatusCode());
     }
   }
 

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CssRequestRewriter.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CssRequestRewriter.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CssRequestRewriter.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/CssRequestRewriter.java
 Wed Feb 10 22:08:15 2010
@@ -24,6 +24,7 @@
 import org.apache.shindig.gadgets.http.HttpRequest;
 import org.apache.shindig.gadgets.http.HttpResponse;
 import org.apache.shindig.gadgets.parse.caja.CajaCssLexerParser;
+import org.apache.shindig.gadgets.rewrite.RewritingException;
 import org.w3c.dom.Element;
 
 import java.io.IOException;
@@ -61,7 +62,7 @@
   }
 
   public boolean rewrite(HttpRequest request, HttpResponse original,
-      MutableContent content) {
+      MutableContent content) throws RewritingException {
     if (!RewriterUtils.isCss(request, original)) {
       return false;
     }
@@ -87,7 +88,7 @@
    * @return Empty list of extracted import URIs.
    */
   public List<String> rewrite(Reader content, Uri source,
-      LinkRewriter rewriter, Writer writer, boolean extractImports) {
+      LinkRewriter rewriter, Writer writer, boolean extractImports) throws 
RewritingException {
     try {
       String original = IOUtils.toString(content);
       try {
@@ -103,11 +104,11 @@
           writer.write(original);
           return Collections.emptyList();
         } else {
-          throw new RuntimeException(ge);
+          throw new RewritingException(ge, ge.getHttpStatusCode());
         }
       }
     } catch (IOException ioe) {
-      throw new RuntimeException(ioe);
+      throw new RewritingException(ioe, HttpResponse.SC_INTERNAL_SERVER_ERROR);
     }
   }
 
@@ -121,7 +122,7 @@
    * @return Empty list of extracted import URIs.
    */
   public List<String> rewrite(Element styleNode, Uri source,
-      LinkRewriter rewriter, boolean extractImports) {
+      LinkRewriter rewriter, boolean extractImports) throws RewritingException 
{
     try {
       List<Object> stylesheet = cssParser.parse(styleNode.getTextContent());
       List<String> imports = rewrite(stylesheet, source, rewriter, 
extractImports);
@@ -140,7 +141,7 @@
               "Caja CSS parse failure: " + ge.getCause().getMessage() + " for 
" + source);
         return Collections.emptyList();
       } else {
-        throw new RuntimeException(ge);
+        throw new RewritingException(ge, ge.getHttpStatusCode());
       }
     }
   }

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriter.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriter.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriter.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriter.java
 Wed Feb 10 22:08:15 2010
@@ -74,7 +74,7 @@
   }
 
   public boolean rewrite(HttpRequest request, HttpResponse original,
-      MutableContent content) {
+      MutableContent content) throws RewritingException {
     if (RewriterUtils.isHtml(request, original)) {
       ContentRewriterFeature feature = rewriterFeatureFactory.get(request);
       return rewriteImpl(feature, request.getGadget(), request.getUri(), 
content,
@@ -84,7 +84,7 @@
     return false;
   }
 
-  public void rewrite(Gadget gadget, MutableContent content) {
+  public void rewrite(Gadget gadget, MutableContent content) throws 
RewritingException {
     // Don't rewrite urls if caja is enabled since caja will inline them anyway
     if (gadget.getSpec().getModulePrefs().getFeatures().containsKey("caja") ||
         "1".equals(gadget.getContext().getParameter("caja"))) {
@@ -105,7 +105,7 @@
 
   boolean rewriteImpl(ContentRewriterFeature feature, Uri gadgetUri,
       Uri contentBase, MutableContent content, String container, boolean debug,
-      boolean ignoreCache) {
+      boolean ignoreCache) throws RewritingException {
     if (!feature.isRewriteEnabled() || content.getDocument() == null) {
       return false;
     }
@@ -138,7 +138,7 @@
 
   protected boolean rewriteStyleTags(Element head, List<Element> elementList,
       ContentRewriterFeature feature, Uri gadgetUri, Uri contentBase, String 
container,
-      boolean debug, boolean ignoreCache) {
+      boolean debug, boolean ignoreCache) throws RewritingException {
     if (!feature.getIncludedTags().contains("style")) {
       return false;
     }

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewritingException.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewritingException.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewritingException.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewritingException.java
 Wed Feb 10 22:08:15 2010
@@ -24,16 +24,24 @@
  * be easily localizable.
  */
 public class RewritingException extends Exception {
-  public RewritingException(Throwable t) {
+  private final int httpStatusCode;
+  
+  public RewritingException(Throwable t, int httpStatusCode) {
     super(t);
+    this.httpStatusCode = httpStatusCode;
   }
 
-  public RewritingException(String message) {
+  public RewritingException(String message, int httpStatusCode) {
     super(message);
+    this.httpStatusCode = httpStatusCode;
   }
 
-  public RewritingException(String message, Throwable t) {
+  public RewritingException(String message, Throwable t, int httpStatusCode) {
     super(message, t);
+    this.httpStatusCode = httpStatusCode;
   }
 
+  public int getHttpStatusCode() {
+    return httpStatusCode;
+  }
 }

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/TemplateRewriter.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/TemplateRewriter.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/TemplateRewriter.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/TemplateRewriter.java
 Wed Feb 10 22:08:15 2010
@@ -109,16 +109,14 @@
     this.containerTags = containerTags;
   }
 
-  public void rewrite(Gadget gadget, MutableContent content) {
+  public void rewrite(Gadget gadget, MutableContent content) throws 
RewritingException {
     Feature f = gadget.getSpec().getModulePrefs().getFeatures()
         .get("opensocial-templates");
     if (f != null && isServerTemplatingEnabled(f)) {
       try {
         rewriteImpl(gadget, f, content);
       } catch (GadgetException ge) {
-        // TODO: Rewriter interface needs to be modified to handle 
GadgetException or
-        // RewriterException or something along those lines.
-        throw new RuntimeException(ge);
+        throw new RewritingException(ge, ge.getHttpStatusCode());
       }
     }
   }

Modified: 
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssRequestRewriterTest.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssRequestRewriterTest.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssRequestRewriterTest.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/CssRequestRewriterTest.java
 Wed Feb 10 22:08:15 2010
@@ -153,7 +153,7 @@
   }
 
   @Test
-  public void testNoRewriteUnknownMimeType() {
+  public void testNoRewriteUnknownMimeType() throws Exception {
     MutableContent mc = control.createMock(MutableContent.class); 
     HttpRequest req = control.createMock(HttpRequest.class);
     EasyMock.expect(req.getRewriteMimeType()).andReturn("unknown");
@@ -163,7 +163,7 @@
   }
 
   private void validateRewritten(String content, Uri base,
-      LinkRewriter linkRewriter, String expected) {
+      LinkRewriter linkRewriter, String expected) throws Exception{
     MutableContent mc = new MutableContent(null, content);
     HttpRequest request = new HttpRequest(base);
     rewriter.rewrite(request,
@@ -172,12 +172,12 @@
         StringUtils.deleteWhitespace(mc.getContent()));
   }
 
-  private void validateRewritten(String content, String expected) {
+  private void validateRewritten(String content, String expected) throws 
Exception {
     validateRewritten(content, dummyUri, defaultLinkRewriter, expected);
   }
 
   @Test
-  public void testUrlDeclarationRewrite() {
+  public void testUrlDeclarationRewrite() throws Exception {
     String original =
         "div 
{list-style-image:url('http://a.b.com/bullet.gif');list-style-position:outside;margin:5px;padding:0}\n"
 +
          ".someid 
{background-image:url(http://a.b.com/bigimg.png);float:right;width:165px;height:23px;margin-top:4px;margin-left:5px}";
@@ -190,7 +190,7 @@
   }
 
   @Test
-  public void testExtractImports() {
+  public void testExtractImports() throws Exception {
     String original = " @import url(www.example.org/some.css);\n" +
         "@import url('www.example.org/someother.css');\n" +
         "@import url(\"www.example.org/another.css\");\n" +

Modified: 
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriterTest.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriterTest.java?rev=908672&r1=908671&r2=908672&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriterTest.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/HTMLContentRewriterTest.java
 Wed Feb 10 22:08:15 2010
@@ -396,7 +396,7 @@
   }
 
   @Test
-  public void testNoRewriteUnknownMimeType() {
+  public void testNoRewriteUnknownMimeType() throws Exception {
     MutableContent mc = control.createMock(MutableContent.class); 
     HttpRequest req = control.createMock(HttpRequest.class);
     EasyMock.expect(req.getRewriteMimeType()).andReturn("unknown");


Reply via email to