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