You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by ru...@apache.org on 2007/03/07 13:01:15 UTC

svn commit: r515543 - in /webservices/synapse/trunk/java: modules/core/src/main/java/org/apache/synapse/ modules/core/src/main/java/org/apache/synapse/config/ modules/core/src/main/java/org/apache/synapse/config/xml/ modules/core/src/main/java/org/apac...

Author: ruwan
Date: Wed Mar  7 04:01:14 2007
New Revision: 515543

URL: http://svn.apache.org/viewvc?view=rev&rev=515543
Log:
Changing the fault handler behaviour and fixing unit tests


Modified:
    webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/FaultHandler.java
    webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java
    webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/RegistrySerializer.java
    webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/MediatorFaultHandler.java
    webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/send/endpoints/AddressEndpoint.java
    webservices/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/RegistrySerializationTest.java
    webservices/synapse/trunk/java/repository/conf/sample/resources/spring/synapse_spring_unittest.xml

Modified: webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/FaultHandler.java
URL: http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/FaultHandler.java?view=diff&rev=515543&r1=515542&r2=515543
==============================================================================
--- webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/FaultHandler.java (original)
+++ webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/FaultHandler.java Wed Mar  7 04:01:14 2007
@@ -25,12 +25,20 @@
  * will be examined by one of the SynapseMR, ProxyServiceMR, or CallbackReceiver and faultStack
  * will be poped to get the most relevant FaultHandler and execute the handleFault method.
  */
-public interface FaultHandler {
+public abstract class FaultHandler {
+
+    public void handleFault(MessageContext synCtx) {
+        try {
+            handleFault(synCtx);
+        } catch (SynapseException syne) {
+            ((FaultHandler)synCtx.getFaultStack().pop()).onFault(synCtx);
+        }
+    }
 
     /**
      * This will be executed to handle any Exceptions occured within the Synapse environment.
      * @param synCtx SynapseMessageContext of which the fault occured message comprises
      * @throws SynapseException in case there is a failure in the fault execution
      */
-    public void handleFault(MessageContext synCtx) throws SynapseException;
+    public abstract void onFault(MessageContext synCtx);
 }

Modified: webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java
URL: http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java?view=diff&rev=515543&r1=515542&r2=515543
==============================================================================
--- webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java (original)
+++ webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java Wed Mar  7 04:01:14 2007
@@ -25,6 +25,7 @@
 import org.apache.synapse.Mediator;
 import org.apache.synapse.Constants;
 import org.apache.synapse.mediators.builtin.send.endpoints.Endpoint;
+import org.apache.synapse.mediators.base.SequenceMediator;
 import org.apache.synapse.config.xml.MediatorFactoryFinder;
 import org.apache.synapse.config.xml.endpoints.EndpointAbstractFactory;
 import org.apache.synapse.config.xml.endpoints.XMLToEndpointMapper;
@@ -37,10 +38,7 @@
 import javax.xml.stream.XMLStreamReader;
 import javax.xml.stream.XMLInputFactory;
 import javax.xml.stream.XMLStreamException;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Collections;
+import java.util.*;
 import java.net.URLConnection;
 import java.io.IOException;
 
@@ -88,6 +86,18 @@
         localRegistry.put(key, entry);
     }
 
+    public Map getDefinedSequences() {
+        Map definedSequences = new HashMap();
+        Iterator itr = localRegistry.values().iterator();
+        while(itr.hasNext()) {
+            Object o = itr.next();
+            if(o instanceof SequenceMediator) {
+                definedSequences.put(((SequenceMediator) o).getName(), o);
+            }
+        }
+        return definedSequences;
+    }
+
     /**
      * Return the sequence specified with the given key
      * @param key the key being referenced
@@ -212,7 +222,7 @@
      * Deletes any reference mapped to the given key from the local registry
      * @param key the key of the reference to be removed
      */
-    public void deleteEntry(String key) {
+    public void removeEntry(String key) {
         localRegistry.remove(key);
     }
 
@@ -258,7 +268,7 @@
      * Deletes the endpoint with the given key
      * @param key of the endpoint to be deleted
      */
-    public void deleteEndpoint(String key) {
+    public void removeEndpoint(String key) {
         localRegistry.remove(key);
     }
 
@@ -284,7 +294,7 @@
      * Deletes the Proxy Service named with the given name
      * @param name of the Proxy Service to be deleted
      */
-    public void deleteProxyService(String name) {
+    public void removeProxyService(String name) {
         Object o = proxyServices.get(name);
         if (o == null) {
             handleException("Unknown proxy service for name : " + name);

Modified: webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/RegistrySerializer.java
URL: http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/RegistrySerializer.java?view=diff&rev=515543&r1=515542&r2=515543
==============================================================================
--- webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/RegistrySerializer.java (original)
+++ webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/RegistrySerializer.java Wed Mar  7 04:01:14 2007
@@ -58,7 +58,7 @@
         while (iter.hasNext()) {
             String name = (String) iter.next();
             String value = (String) registry.getConfigProperties().get(name);
-            OMElement property = fac.createOMElement("property", synNS);
+            OMElement property = fac.createOMElement("parameter", synNS);
             property.addAttribute(fac.createOMAttribute(
                 "name", nullNS, name));
             property.addAttribute(fac.createOMAttribute(

Modified: webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/MediatorFaultHandler.java
URL: http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/MediatorFaultHandler.java?view=diff&rev=515543&r1=515542&r2=515543
==============================================================================
--- webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/MediatorFaultHandler.java (original)
+++ webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/MediatorFaultHandler.java Wed Mar  7 04:01:14 2007
@@ -33,7 +33,7 @@
  *
  * @see org.apache.synapse.FaultHandler
  */
-public class MediatorFaultHandler implements FaultHandler {
+public class MediatorFaultHandler extends FaultHandler {
 
     private static final Log log = LogFactory.getLog(MediatorFaultHandler.class);
 
@@ -44,11 +44,11 @@
 
     /**
      * Constructs the FaultHandler object for handling mediator faults
-     * 
+     *
      * @param faultMediator Mediator in which fault sequence is specified
      */
     public MediatorFaultHandler(Mediator faultMediator) {
-        
+
         this.faultMediator = faultMediator;
     }
 
@@ -57,39 +57,32 @@
      *
      * @param synCtx Synapse Message Context of which mediation occurs
      * @throws SynapseException in case there is a failure in the fault execution
-     * @see org.apache.synapse.FaultHandler#handleFault(org.apache.synapse.MessageContext) 
+     * @see org.apache.synapse.FaultHandler#handleFault(org.apache.synapse.MessageContext)
      */
-    public void handleFault(MessageContext synCtx) throws SynapseException {
-        
-        try {
-            
-            log.debug("MediatorFaultHandler :: handleFault");
-            
-            this.faultMediator.mediate(synCtx);
-            
-        } catch (SynapseException syne) {
-            
-            ((FaultHandler)(synCtx.getFaultStack().pop())).handleFault(synCtx);
-        }
+    public void onFault(MessageContext synCtx) throws SynapseException {
+
+        log.debug("MediatorFaultHandler :: handleFault");
+
+        this.faultMediator.mediate(synCtx);
     }
 
     /**
      * Getter for the mediator describing the fault sequence
-     * 
+     *
      * @return Mediator specifying the fault sequence for mediator fault handler
      */
     public Mediator getFaultMediator() {
-        
+
         return faultMediator;
     }
 
     /**
      * Setter of the mediator describing the fault sequence
-     * 
+     *
      * @param faultMediator Mediator specifying the fault sequence to be used by the handler
      */
     public void setFaultMediator(Mediator faultMediator) {
-        
+
         this.faultMediator = faultMediator;
     }
 }

Modified: webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/send/endpoints/AddressEndpoint.java
URL: http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/send/endpoints/AddressEndpoint.java?view=diff&rev=515543&r1=515542&r2=515543
==============================================================================
--- webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/send/endpoints/AddressEndpoint.java (original)
+++ webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/send/endpoints/AddressEndpoint.java Wed Mar  7 04:01:14 2007
@@ -34,7 +34,7 @@
  * message, performing reries if a failure occured and informing the parent endpoint if a failure
  * couldn't be recovered.
  */
-public class AddressEndpoint implements Endpoint, FaultHandler {
+public class AddressEndpoint extends FaultHandler implements Endpoint {
 
     private static final Log log = LogFactory.getLog(AddressEndpoint.class);
 
@@ -149,7 +149,7 @@
         this.parentEndpoint = parentEndpoint;
     }
 
-    public void handleFault(MessageContext synCtx) throws SynapseException {
+    public void onFault(MessageContext synCtx) throws SynapseException {
         // perform retries here
 
         // if this endpoint has actually failed, inform the parent.

Modified: webservices/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/RegistrySerializationTest.java
URL: http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/RegistrySerializationTest.java?view=diff&rev=515543&r1=515542&r2=515543
==============================================================================
--- webservices/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/RegistrySerializationTest.java (original)
+++ webservices/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/RegistrySerializationTest.java Wed Mar  7 04:01:14 2007
@@ -36,8 +36,8 @@
     public void testRegistrySerialization() {
 
         String regitryConfiguration = "<syn:registry xmlns:syn=\"http://ws.apache.org/ns/synapse\" provider=\"org.apache.synapse.registry.url.SimpleURLRegistry\">" +
-                "<syn:property name=\"root\" value=\"file:./../../repository/\"/>" +
-                "<syn:property name=\"cachableDuration\" value=\"15000\"/>" +
+                "<syn:parameter name=\"root\" value=\"file:./../../repository/\"/>" +
+                "<syn:parameter name=\"cachableDuration\" value=\"15000\"/>" +
                 "</syn:registry>";
 
         OMElement registryElement = createOMElement(regitryConfiguration);

Modified: webservices/synapse/trunk/java/repository/conf/sample/resources/spring/synapse_spring_unittest.xml
URL: http://svn.apache.org/viewvc/webservices/synapse/trunk/java/repository/conf/sample/resources/spring/synapse_spring_unittest.xml?view=diff&rev=515543&r1=515542&r2=515543
==============================================================================
--- webservices/synapse/trunk/java/repository/conf/sample/resources/spring/synapse_spring_unittest.xml (original)
+++ webservices/synapse/trunk/java/repository/conf/sample/resources/spring/synapse_spring_unittest.xml Wed Mar  7 04:01:14 2007
@@ -20,8 +20,8 @@
 <synapse xmlns="http://ws.apache.org/ns/synapse" xmlns:spring="http://ws.apache.org/ns/synapse/spring">
 
 	<registry provider="org.apache.synapse.registry.url.SimpleURLRegistry">
-		<property name="root" value="file:./../../repository/"/>
-		<property name="cachableDuration" value="15000"/>
+		<parameter name="root" value="file:./../../repository/"/>
+		<parameter name="cachableDuration" value="15000"/>
 	</registry>
   
     <localEntry key="springconfig2" src="file:./../../repository/conf/sample/resources/spring/springsample.xml"/>



---------------------------------------------------------------------
To unsubscribe, e-mail: synapse-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: synapse-dev-help@ws.apache.org