You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by hi...@apache.org on 2010/08/27 11:13:10 UTC

svn commit: r990074 - in /synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/transform/url: RewriteRule.java URLRewriteMediator.java

Author: hiranya
Date: Fri Aug 27 09:13:10 2010
New Revision: 990074

URL: http://svn.apache.org/viewvc?rev=990074&view=rev
Log:
Refactoring the url rewrite mediator source (SYNAPSE-681)


Modified:
    synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/transform/url/RewriteRule.java
    synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/transform/url/URLRewriteMediator.java

Modified: synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/transform/url/RewriteRule.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/transform/url/RewriteRule.java?rev=990074&r1=990073&r2=990074&view=diff
==============================================================================
--- synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/transform/url/RewriteRule.java (original)
+++ synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/transform/url/RewriteRule.java Fri Aug 27 09:13:10 2010
@@ -25,10 +25,12 @@ import org.apache.synapse.commons.evalua
 import org.apache.synapse.commons.evaluators.EvaluatorContext;
 import org.apache.synapse.commons.evaluators.EvaluatorException;
 import org.apache.synapse.MessageContext;
+import org.apache.synapse.core.axis2.Axis2MessageContext;
 
 import java.util.List;
 import java.util.ArrayList;
 import java.util.Map;
+import java.util.HashMap;
 import java.net.URISyntaxException;
 
 /**
@@ -47,12 +49,14 @@ public class RewriteRule {
     private Evaluator condition;
     private List<RewriteAction> actions = new ArrayList<RewriteAction>();
 
-    public void rewrite(URIFragments fragments, MessageContext messageContext,
-                        Map<String,String> headers) throws URISyntaxException {
+    public void rewrite(URIFragments fragments,
+                        MessageContext messageContext) throws URISyntaxException {
 
         if (condition != null) {
             String uriString = fragments.toURIString();
+            Map<String, String> headers = getHeaders(messageContext);
             EvaluatorContext ctx = new EvaluatorContext(uriString, headers);
+            
             if (log.isTraceEnabled()) {
                 log.trace("Evaluating condition with URI: " + uriString);
             }
@@ -79,6 +83,25 @@ public class RewriteRule {
         }
     }
 
+    private Map<String, String> getHeaders(MessageContext synCtx) {
+        Axis2MessageContext axis2smc = (Axis2MessageContext) synCtx;
+        org.apache.axis2.context.MessageContext axis2MessageCtx =
+                axis2smc.getAxis2MessageContext();
+        Object headers = axis2MessageCtx.getProperty(
+                org.apache.axis2.context.MessageContext.TRANSPORT_HEADERS);
+        Map<String, String> evaluatorHeaders = new HashMap<String, String>();
+
+        if (headers != null && headers instanceof Map) {
+            Map headersMap = (Map) headers;
+            for (Object key : headersMap.keySet()) {
+                if (key instanceof String && headersMap.get(key) instanceof String) {
+                    evaluatorHeaders.put((String) key, (String) headersMap.get(key));
+                }
+            }
+        }
+        return evaluatorHeaders;
+    }
+
     public Evaluator getCondition() {
         return condition;
     }

Modified: synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/transform/url/URLRewriteMediator.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/transform/url/URLRewriteMediator.java?rev=990074&r1=990073&r2=990074&view=diff
==============================================================================
--- synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/transform/url/URLRewriteMediator.java (original)
+++ synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/transform/url/URLRewriteMediator.java Fri Aug 27 09:13:10 2010
@@ -21,13 +21,10 @@ package org.apache.synapse.mediators.tra
 
 import org.apache.synapse.mediators.AbstractMediator;
 import org.apache.synapse.MessageContext;
-import org.apache.synapse.core.axis2.Axis2MessageContext;
 import org.apache.axis2.addressing.EndpointReference;
 
 import java.util.List;
 import java.util.ArrayList;
-import java.util.Map;
-import java.util.HashMap;
 import java.net.URI;
 import java.net.URISyntaxException;
 
@@ -53,11 +50,9 @@ public class URLRewriteMediator extends 
             fragments = new URIFragments();
         }
 
-        Map<String, String> headers = getHeaders(messageContext);
-
         try {
             for (RewriteRule r : rules) {
-                r.rewrite(fragments, messageContext, headers);
+                r.rewrite(fragments, messageContext);
             }
 
             if (outputProperty != null) {
@@ -92,25 +87,6 @@ public class URLRewriteMediator extends 
         return null;
     }
 
-    private Map<String, String> getHeaders(MessageContext synCtx) {
-        Axis2MessageContext axis2smc = (Axis2MessageContext) synCtx;
-        org.apache.axis2.context.MessageContext axis2MessageCtx =
-                axis2smc.getAxis2MessageContext();
-        Object headers = axis2MessageCtx.getProperty(
-                org.apache.axis2.context.MessageContext.TRANSPORT_HEADERS);
-        Map<String, String> evaluatorHeaders = new HashMap<String, String>();
-
-        if (headers != null && headers instanceof Map) {
-            Map headersMap = (Map) headers;
-            for (Object key : headersMap.keySet()) {
-                if (key instanceof String && headersMap.get(key) instanceof String) {
-                    evaluatorHeaders.put((String) key, (String) headersMap.get(key));
-                }
-            }
-        }
-        return evaluatorHeaders;
-    }
-
     public void addRule(RewriteRule rule) {
         rules.add(rule);
     }