+ d...@shindig as the mail doesn't seem to have gone. On Wed, Oct 13, 2010 at 10:36 AM, Gagandeep singh <[email protected]>wrote:
> Reviewers: [email protected] > > Description: > > Refactoring ResponseRewriterRegistry to take into account the container of the > request being processed. > > This change adds a ContextAwareRegistry which determines the list of rewriters > to apply using the container of the http request being processed and the > rewrite > flow id specified. > > Each handler (ProxyHandler , AccelHandler etc.) will inject > ResponseRewriterRegistry and will specify the rewrite flow id as shown below: > > @ResponseRewriters(rewriteFlow="accelerate") ResponseRewriterRegistry > @ResponseRewriters(rewriteFlow="requestPipeline") ResponseRewriterRegistry > @ResponseRewriters(rewriteFlow="default") ResponseRewriterRegistry > > > ResponseRewriters for a given rewrite flow and container will be provided as > follows: > @ResponseRewritersList(rewriteFlow="accelerate", container="default") > protected List<ResponseRewriter> provide() { > return ImmutableList.of(absolutePathReferenceRewriter); > } > .... > > We will then aggregate the rewrite flows and the list of rewriters for each > container, and generate a map of Container -> [ RewriteFlow -> List of > rewriters > ]. > > > Some boilerplate code is added at the bottom of RewriteModule.java so that you > don't have to instantiate the ContextAwareRegistry yourself. Just provide > methods which provide list of rewriters for a given flow and container. > > > Please review this at http://codereview.appspot.com/2058042/ > > Affected files: > A > > java/gadgets/src/test/java/org/apache/shindig/gadgets/rewrite/RewriteModuleTest.java > M > > java/gadgets/src/main/java/org/apache/shindig/gadgets/http/DefaultRequestPipeline.java > M > > java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/AccelHandler.java > M > > java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/ConcatProxyServlet.java > M > > java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/ProxyHandler.java > M > > java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/MakeRequestHandler.java > M > > java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/HttpRequestHandler.java > A > > java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/ResponseRewriterList.java > M > > java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewriteModule.java > A > > java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/ContextAwareRegistry.java > D > > java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/AccelResponseRewriterRegistry.java > A > > java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewriterRegistryImpl.java > A > > java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewriterRegistry.java > > Thanks > Gagan > >
