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/02/10 23:08:22 UTC

svn commit: r908672 - in /shindig/trunk/java/gadgets/src: main/java/org/apache/shindig/gadgets/ main/java/org/apache/shindig/gadgets/process/ main/java/org/apache/shindig/gadgets/render/ main/java/org/apache/shindig/gadgets/rewrite/ test/java/org/apach...

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");