You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by Ruwan Linton <ru...@gmail.com> on 2009/03/13 18:20:25 UTC

Re: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

Indika,

Why does AbstractMediator implements the ManagedLifecycle? does this means
that all the mediators have init and destroy methods?

Thanks,
Ruwan

2009/3/13 <in...@apache.org>

> Author: indika
> Date: Fri Mar 13 07:16:16 2009
> New Revision: 753144
>
> URL: http://svn.apache.org/viewvc?rev=753144&view=rev
> Log:
> remove ManagedLifecycle from mediators that extends AbstractMediator as
> AbstractMediator already implements ManagedLifecycle
>
> Modified:
>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>
>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>
>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>
>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>
>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>
> Modified:
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> URL:
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>
> ==============================================================================
> ---
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> (original)
> +++
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> Fri Mar 13 07:16:16 2009
> @@ -24,7 +24,6 @@
>  import org.apache.axis2.clustering.context.Replicator;
>  import org.apache.axis2.context.ConfigurationContext;
>  import org.apache.axis2.saaj.util.SAAJUtil;
> -import org.apache.synapse.ManagedLifecycle;
>  import org.apache.synapse.MessageContext;
>  import org.apache.synapse.SynapseException;
>  import org.apache.synapse.SynapseLog;
> @@ -58,7 +57,7 @@
>  *
>  * @see org.apache.synapse.Mediator
>  */
> -public class CacheMediator extends AbstractMediator implements
> ManagedLifecycle {
> +public class CacheMediator extends AbstractMediator {
>
>     private String id = null;
>     private String scope = CachingConstants.SCOPE_PER_HOST;// global
>
> Modified:
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> URL:
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>
> ==============================================================================
> ---
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> (original)
> +++
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> Fri Mar 13 07:16:16 2009
> @@ -23,15 +23,14 @@
>  import org.apache.axiom.om.OMNode;
>  import org.apache.axis2.AxisFault;
>  import org.apache.axis2.Constants;
> -import org.apache.axis2.transport.http.HTTPConstants;
> -import org.apache.axis2.description.Parameter;
>  import org.apache.axis2.addressing.AddressingConstants;
>  import org.apache.axis2.addressing.EndpointReference;
>  import org.apache.axis2.client.Options;
>  import org.apache.axis2.client.ServiceClient;
>  import org.apache.axis2.context.ConfigurationContext;
>  import org.apache.axis2.context.ConfigurationContextFactory;
> -import org.apache.synapse.ManagedLifecycle;
> +import org.apache.axis2.description.Parameter;
> +import org.apache.axis2.transport.http.HTTPConstants;
>  import org.apache.synapse.MessageContext;
>  import org.apache.synapse.SynapseException;
>  import org.apache.synapse.SynapseLog;
> @@ -51,7 +50,7 @@
>  *      <target xpath="expression" | key="string"/>
>  * </callout>
>  */
> -public class CalloutMediator extends AbstractMediator implements
> ManagedLifecycle {
> +public class CalloutMediator extends AbstractMediator {
>
>     private ServiceClient sc = null;
>     private String serviceURL = null;
> @@ -179,6 +178,7 @@
>         return null;
>     }
>
> +    @Override
>     public void init(SynapseEnvironment synEnv) {
>         try {
>             ConfigurationContext cfgCtx
> @@ -193,6 +193,7 @@
>         }
>     }
>
> +    @Override
>     public void destroy() {
>         try {
>             sc.cleanup();
>
> Modified:
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> URL:
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>
> ==============================================================================
> ---
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> (original)
> +++
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> Fri Mar 13 07:16:16 2009
> @@ -21,7 +21,6 @@
>
>  import org.apache.commons.dbcp.BasicDataSource;
>  import org.apache.commons.dbcp.datasources.PerUserPoolDataSource;
> -import org.apache.synapse.ManagedLifecycle;
>  import org.apache.synapse.MessageContext;
>  import org.apache.synapse.SynapseException;
>  import org.apache.synapse.SynapseLog;
> @@ -34,13 +33,15 @@
>  import javax.xml.namespace.QName;
>  import java.math.BigDecimal;
>  import java.sql.*;
> -import java.sql.Date;
> -import java.util.*;
> +import java.util.ArrayList;
> +import java.util.HashMap;
> +import java.util.List;
> +import java.util.Map;
>
>  /**
>  * This abstract DB mediator will perform common DB connection pooling etc.
> for all DB mediators
>  */
> -public abstract class AbstractDBMediator extends AbstractMediator
> implements ManagedLifecycle {
> +public abstract class AbstractDBMediator extends AbstractMediator {
>
>     /** Hold JDBC properties */
>     protected final Map dataSourceProps = new HashMap();
>
> Modified:
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> URL:
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>
> ==============================================================================
> ---
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> (original)
> +++
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> Fri Mar 13 07:16:16 2009
> @@ -23,7 +23,6 @@
>  import org.apache.axiom.soap.SOAP12Constants;
>  import org.apache.commons.logging.Log;
>  import org.apache.commons.logging.LogFactory;
> -import org.apache.synapse.ManagedLifecycle;
>  import org.apache.synapse.MessageContext;
>  import org.apache.synapse.SynapseLog;
>  import org.apache.synapse.core.SynapseEnvironment;
> @@ -48,7 +47,7 @@
>  * so that aggregations that never would complete could be timed out and
> cleared from memory and
>  * any fault conditions handled
>  */
> -public class AggregateMediator extends AbstractMediator implements
> ManagedLifecycle {
> +public class AggregateMediator extends AbstractMediator {
>
>     private static final Log log =
> LogFactory.getLog(AggregateMediator.class);
>
>
> Modified:
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> URL:
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>
> ==============================================================================
> ---
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> (original)
> +++
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> Fri Mar 13 07:16:16 2009
> @@ -19,23 +19,23 @@
>
>  package org.apache.synapse.mediators.eip.splitter;
>
> -import org.apache.synapse.MessageContext;
> +import org.apache.axis2.AxisFault;
> +import org.apache.axis2.Constants;
> +import org.apache.axis2.context.OperationContext;
>  import org.apache.synapse.ManagedLifecycle;
> +import org.apache.synapse.MessageContext;
>  import org.apache.synapse.SynapseLog;
> -import org.apache.synapse.endpoints.Endpoint;
> -import org.apache.synapse.core.axis2.Axis2MessageContext;
>  import org.apache.synapse.core.SynapseEnvironment;
> -import org.apache.synapse.util.MessageHelper;
> +import org.apache.synapse.core.axis2.Axis2MessageContext;
> +import org.apache.synapse.endpoints.Endpoint;
>  import org.apache.synapse.mediators.AbstractMediator;
> -import org.apache.synapse.mediators.eip.Target;
>  import org.apache.synapse.mediators.eip.EIPConstants;
> -import org.apache.axis2.AxisFault;
> -import org.apache.axis2.Constants;
> -import org.apache.axis2.context.OperationContext;
> +import org.apache.synapse.mediators.eip.Target;
> +import org.apache.synapse.util.MessageHelper;
>
>  import java.util.ArrayList;
> -import java.util.List;
>  import java.util.Iterator;
> +import java.util.List;
>
>  /**
>  * This mediator will clone the message into multiple messages and mediate
> as specified in the
> @@ -43,7 +43,7 @@
>  * specifies an Action and/or To address to be set to the cloned message.
> The number of cloned
>  * messages created is the number of targets specified
>  */
> -public class CloneMediator extends AbstractMediator implements
> ManagedLifecycle {
> +public class CloneMediator extends AbstractMediator {
>
>     /**
>      * Continue processing the parent message or not?
>
> Modified:
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> URL:
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>
> ==============================================================================
> ---
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> (original)
> +++
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> Fri Mar 13 07:16:16 2009
> @@ -28,9 +28,9 @@
>  import org.apache.synapse.ManagedLifecycle;
>  import org.apache.synapse.MessageContext;
>  import org.apache.synapse.SynapseLog;
> -import org.apache.synapse.endpoints.Endpoint;
>  import org.apache.synapse.core.SynapseEnvironment;
>  import org.apache.synapse.core.axis2.Axis2MessageContext;
> +import org.apache.synapse.endpoints.Endpoint;
>  import org.apache.synapse.mediators.AbstractMediator;
>  import org.apache.synapse.mediators.eip.EIPConstants;
>  import org.apache.synapse.mediators.eip.EIPUtils;
> @@ -47,7 +47,7 @@
>  * each resulting element. This is very much similar to the clone mediator,
> and
>  * hands over the newly created messages to a target for processing
>  */
> -public class IterateMediator extends AbstractMediator implements
> ManagedLifecycle {
> +public class IterateMediator extends AbstractMediator {
>
>     /** Continue mediation on the parent message or not? */
>     private boolean continueParent = false;
>
> Modified:
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> URL:
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>
> ==============================================================================
> ---
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> (original)
> +++
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> Fri Mar 13 07:16:16 2009
> @@ -19,11 +19,7 @@
>
>  package org.apache.synapse.mediators.ext;
>
> -import org.apache.synapse.ManagedLifecycle;
> -import org.apache.synapse.Mediator;
> -import org.apache.synapse.MessageContext;
> -import org.apache.synapse.SynapseException;
> -import org.apache.synapse.SynapseLog;
> +import org.apache.synapse.*;
>  import org.apache.synapse.core.SynapseEnvironment;
>  import org.apache.synapse.mediators.AbstractMediator;
>
> @@ -41,7 +37,7 @@
>  *
>  * @see Mediator
>  */
> -public class ClassMediator extends AbstractMediator implements
> ManagedLifecycle {
> +public class ClassMediator extends AbstractMediator {
>
>     /** The reference to the actual class that implments the Mediator
> interface */
>     private Mediator mediator = null;
>
> Modified:
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> URL:
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>
> ==============================================================================
> ---
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> (original)
> +++
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> Fri Mar 13 07:16:16 2009
> @@ -36,7 +36,7 @@
>  * the given list of cases. This is actually a list of sequences, and
> depending on the
>  * selected case, the selected sequence gets executed.
>  */
> -public class SwitchMediator extends AbstractMediator implements
> ManagedLifecycle {
> +public class SwitchMediator extends AbstractMediator {
>
>     /** The XPath expression specifying the source element to apply the
> switch case expressions against   */
>     private SynapseXPath source = null;
>
> Modified:
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> URL:
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>
> ==============================================================================
> ---
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> (original)
> +++
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> Fri Mar 13 07:16:16 2009
> @@ -1,21 +1,20 @@
>  package org.apache.synapse.mediators.eip;
>
> -import org.apache.synapse.mediators.AbstractMediator;
> -import org.apache.synapse.MessageContext;
> -import org.apache.synapse.ManagedLifecycle;
> -import org.apache.synapse.core.SynapseEnvironment;
> -import org.apache.axiom.soap.SOAPEnvelope;
>  import org.apache.axiom.om.OMAbstractFactory;
> +import org.apache.axiom.soap.SOAPEnvelope;
>  import org.apache.axis2.AxisFault;
> +import org.apache.synapse.MessageContext;
> +import org.apache.synapse.core.SynapseEnvironment;
> +import org.apache.synapse.mediators.AbstractMediator;
>
> -import java.util.List;
>  import java.util.ArrayList;
> +import java.util.List;
>
>  /**
>  * Created by IntelliJ IDEA. User: ruwan Date: Oct 3, 2007 Time: 7:26:09 AM
> To change this template
>  * use File | Settings | File Templates.
>  */
> -public class SplitTestHelperMediator extends AbstractMediator implements
> ManagedLifecycle {
> +public class SplitTestHelperMediator extends AbstractMediator {
>
>     private List mediatedContext = new ArrayList();
>     int msgcount;
>
> Modified:
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> URL:
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>
> ==============================================================================
> ---
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> (original)
> +++
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> Fri Mar 13 07:16:16 2009
> @@ -20,8 +20,6 @@
>  package org.apache.synapse.mediators.ext;
>
>  import org.apache.synapse.MessageContext;
> -import org.apache.synapse.Mediator;
> -import org.apache.synapse.ManagedLifecycle;
>  import org.apache.synapse.core.SynapseEnvironment;
>  import org.apache.synapse.mediators.AbstractMediator;
>
> @@ -30,7 +28,7 @@
>  * use a static member variable just to test this.. This class is not
> nice.. :-)
>  * but does what is expected... :-(
>  */
> -public class ClassMediatorTestMediator extends AbstractMediator implements
> ManagedLifecycle {
> +public class ClassMediatorTestMediator extends AbstractMediator {
>
>     public static boolean invoked = false;
>     public static boolean initialized = false;
>
> Modified:
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> URL:
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>
> ==============================================================================
> ---
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> (original)
> +++
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> Fri Mar 13 07:16:16 2009
> @@ -19,15 +19,14 @@
>
>  package org.apache.synapse.mediators.spring;
>
> -import org.apache.synapse.MessageContext;
>  import org.apache.synapse.Mediator;
> -import org.apache.synapse.ManagedLifecycle;
> +import org.apache.synapse.MessageContext;
>  import org.apache.synapse.SynapseException;
>  import org.apache.synapse.SynapseLog;
> +import org.apache.synapse.config.Entry;
> +import org.apache.synapse.config.SynapseConfigUtils;
>  import org.apache.synapse.core.SynapseEnvironment;
>  import org.apache.synapse.mediators.AbstractMediator;
> -import org.apache.synapse.config.SynapseConfigUtils;
> -import org.apache.synapse.config.Entry;
>  import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
>  import org.springframework.context.ApplicationContext;
>  import org.springframework.context.support.GenericApplicationContext;
> @@ -41,7 +40,7 @@
>  * refers to a Spring bean name, and also either a Spring configuration
> defined to Synapse
>  * or an inlined Spring configuration.
>  */
> -public class SpringMediator extends AbstractMediator implements
> ManagedLifecycle {
> +public class SpringMediator extends AbstractMediator {
>
>     /**
>      * The Spring bean ref to be used
>
> Modified:
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> URL:
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>
> ==============================================================================
> ---
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> (original)
> +++
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> Fri Mar 13 07:16:16 2009
> @@ -19,20 +19,20 @@
>  package org.apache.synapse.mediators.throttle;
>
>  import org.apache.axiom.om.OMElement;
> +import org.apache.axis2.clustering.ClusterManager;
> +import org.apache.axis2.clustering.ClusteringFault;
> +import org.apache.axis2.clustering.context.Replicator;
> +import org.apache.axis2.context.ConfigurationContext;
>  import org.apache.neethi.PolicyEngine;
>  import org.apache.synapse.ManagedLifecycle;
>  import org.apache.synapse.Mediator;
>  import org.apache.synapse.MessageContext;
>  import org.apache.synapse.SynapseLog;
> -import org.apache.synapse.transport.nhttp.NhttpConstants;
>  import org.apache.synapse.config.Entry;
>  import org.apache.synapse.core.SynapseEnvironment;
>  import org.apache.synapse.core.axis2.Axis2MessageContext;
>  import org.apache.synapse.mediators.AbstractMediator;
> -import org.apache.axis2.context.ConfigurationContext;
> -import org.apache.axis2.clustering.context.Replicator;
> -import org.apache.axis2.clustering.ClusteringFault;
> -import org.apache.axis2.clustering.ClusterManager;
> +import org.apache.synapse.transport.nhttp.NhttpConstants;
>  import org.wso2.throttle.*;
>
>
> @@ -42,7 +42,7 @@
>  * Only support IP based throttling- Throotling can manage per IP using the
> throttle policy
>  */
>
> -public class ThrottleMediator extends AbstractMediator implements
> ManagedLifecycle {
> +public class ThrottleMediator extends AbstractMediator {
>
>     /* The key for getting the throttling policy - key refers to a/an
> [registry] entry    */
>     private String policyKey = null;
>
>
>


-- 
Ruwan Linton
Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
WSO2 Inc.; http://wso2.org
email: ruwan@wso2.com; cell: +94 77 341 3097
blog: http://ruwansblog.blogspot.com

Re: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

Posted by indika kumara <in...@gmail.com>.
Andreas

I agree with you.  It is my fault that setting empty methods. But, I
never did it for enforce any things, It was happened with my changes
to remove two ‘init’ methods(Only concern was removing tow init
methods  ). I didn’t care it until this thread begins.

Definitely, it may require substantial changes.  But, if something
needs to be correct, then it should do at some point. If community
like for changes, we need to do. I may not able to take responsibly at
this stage as I can’t guarantee allocating time.  One thing, I have to
fix some jiras and statistic collection functionally. Other thing, I
am always busy during these days due to education related things. It
is great if you can do this (if you have time and community too like
these changes)

Thanks
Indika


On Tue, Mar 17, 2009 at 4:13 AM, Andreas Veithen
<an...@gmail.com> wrote:
> Indika,
>
> I still fail to see how the fact that AbstractMediator implements
> ManagedLifecycle (with empty default implementations for init and
> destroy) is enforcing anything. What is the improvement compared with
> the situation before?
>
> On the other hand, I agree with you that the issues related to
> mediator lifecycle management that we have seen in the past are (or at
> least could be seen as) an indication of a flaw in the design. Indeed,
> one attribute of a good design or architecture is that it enforces
> things and prevents people from implementing things in the wrong way.
>
> From the issues we have seen in the past, I would identify two
> problems with the current lifecycle management:
>
> 1. We rely on the fact that mediators having child sequences (list
> mediators, switch-case, etc.) are able to correctly manage the
> lifecycle of their child mediators. We have seen examples in the past
> where this wasn't the case.
>
> 2. We will sooner or later run into problems where during
> initialization, one managed object tries to interact with another
> managed object that has not yet been initialized. (This is the typical
> problem that arises with managed objects)
>
> If we want to avoid these issues, then we should use (or should have
> used) another pattern: Register all managed objects in a central place
> as soon as they are created. Note that in case of mediators, this
> would require some sort of configuration context to be passed around
> to MediatorFactory implementations and to MediatorFactoryFinder
> (getMediator in particular). Instead of initializing the managed
> objects recursively as described above, one would then simply
> initialize all the registered objects sequentially. This solves issue
> 1 and enforces lifecycle management because the only place where a
> mediator can be created is MediatorFactoryFinder#getMediator and that
> method would require the configuration context. The pattern could also
> be used to solve issue 2 because one could postpone the initialization
> of a managed object if it fails due to some uninitialized dependency.
>
> The problem with all this is that it would require some substantial
> changes that will break existing code...
>
> Regards,
>
> Andreas
>
> On Mon, Mar 16, 2009 at 17:53, indika kumara <in...@gmail.com> wrote:
>> Hi All
>>
>> Just now had a time to look at this.
>>
>> Actually what I did from commit say by my commit log ‘remove
>> ManagedLifecycle from mediators that extends AbstractMediator as
>> AbstractMediator already implements ManagedLifecycle’. Actually, I
>> just replied to the thread as I have to replay as this related with
>> me. I just want to get rid if this thread as I had many works to do
>> and I really don’t care other things, when I have important things to
>> do.
>>
>> I am trying to take design decision on this and I expect to get answer
>> for these.
>>
>> 1)      Is ‘ManagedLifecycle’ is a trick to allow mediators and others to
>> do require work related with initialization and destroy. Currently, I
>> can see only this as a trick.  Trick is still worked.
>> 2)      Otherwise…. Synapse initiators came up with great set of
>> abstractions such as mediators, endpoints, tasks, registry, etc to
>> build an ESB using these abstractions. Then, they have thought that
>> these abstractions should be properly managed. Therefore, came up with
>> a new abstraction “Lifecycle Management” to enforce that.  If it is
>> the case, ‘implementers’ of this abstraction really misused concept of
>> design.
>> One:
>> There is no semantic validation. The “Lifecycle Management”
>> abstraction has great semantic and just naming ‘init’, ‘destroy’
>> cannot get this as it is just syntax. Abstractions are the ever greats
>> things that builds the any system. Currently, there is no
>> differentiating on calling a method based on ‘init’ or ‘destroy’ has
>> been already called or not on that. Definitely, it can get exceptions
>> like ‘NPE’ if ‘init’ had not been called. This is not semantic
>> validation but failure due to avoiding it. I can remind some
>> situations … As I remind some user has reported errors that have been
>> happened due to fact Mediators inside switch case, has not been
>> initiated. Another situation was occurred when using an indirect
>> endpoint (only for indirect endpoint) within in send mediator. Send
>> mediator’s init method did not get called and as a reason indirect
>> endpoint has been not initialized. Still, this kind of things possible
>> as any user can create custom mediators and there is no semantic
>> validation on “Lifecycle Management”. Actually, these are transient
>> failures - until get executed a particular code fragment failures are
>> hidden. There are the ever bad failures. All these are happened due to
>> fact there is no semantic validation on. There cannot be an
>> abstraction without semantic. Without semantic validation, it is just
>> a class for use to implements some trick.
>>
>> Two:
>> There are no semantic enforcements. All initialized and not
>> initialized objects can be used together.
>>
>> For the case two, I can only do refractor.
>>
>> I just want to say the way I think about these and never want to prove
>> concerns of others are bad or good.
>>
>> I may have said one to one. If it was happened it is completely due I
>> wanted get grid of this thread as I had many works to do.
>>
>> Thanks
>> Indika
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
>> For additional commands, e-mail: dev-help@synapse.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
> For additional commands, e-mail: dev-help@synapse.apache.org
>
>

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


Re: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

Posted by Andreas Veithen <an...@gmail.com>.
Indika,

I still fail to see how the fact that AbstractMediator implements
ManagedLifecycle (with empty default implementations for init and
destroy) is enforcing anything. What is the improvement compared with
the situation before?

On the other hand, I agree with you that the issues related to
mediator lifecycle management that we have seen in the past are (or at
least could be seen as) an indication of a flaw in the design. Indeed,
one attribute of a good design or architecture is that it enforces
things and prevents people from implementing things in the wrong way.

>From the issues we have seen in the past, I would identify two
problems with the current lifecycle management:

1. We rely on the fact that mediators having child sequences (list
mediators, switch-case, etc.) are able to correctly manage the
lifecycle of their child mediators. We have seen examples in the past
where this wasn't the case.

2. We will sooner or later run into problems where during
initialization, one managed object tries to interact with another
managed object that has not yet been initialized. (This is the typical
problem that arises with managed objects)

If we want to avoid these issues, then we should use (or should have
used) another pattern: Register all managed objects in a central place
as soon as they are created. Note that in case of mediators, this
would require some sort of configuration context to be passed around
to MediatorFactory implementations and to MediatorFactoryFinder
(getMediator in particular). Instead of initializing the managed
objects recursively as described above, one would then simply
initialize all the registered objects sequentially. This solves issue
1 and enforces lifecycle management because the only place where a
mediator can be created is MediatorFactoryFinder#getMediator and that
method would require the configuration context. The pattern could also
be used to solve issue 2 because one could postpone the initialization
of a managed object if it fails due to some uninitialized dependency.

The problem with all this is that it would require some substantial
changes that will break existing code...

Regards,

Andreas

On Mon, Mar 16, 2009 at 17:53, indika kumara <in...@gmail.com> wrote:
> Hi All
>
> Just now had a time to look at this.
>
> Actually what I did from commit say by my commit log ‘remove
> ManagedLifecycle from mediators that extends AbstractMediator as
> AbstractMediator already implements ManagedLifecycle’. Actually, I
> just replied to the thread as I have to replay as this related with
> me. I just want to get rid if this thread as I had many works to do
> and I really don’t care other things, when I have important things to
> do.
>
> I am trying to take design decision on this and I expect to get answer
> for these.
>
> 1)      Is ‘ManagedLifecycle’ is a trick to allow mediators and others to
> do require work related with initialization and destroy. Currently, I
> can see only this as a trick.  Trick is still worked.
> 2)      Otherwise…. Synapse initiators came up with great set of
> abstractions such as mediators, endpoints, tasks, registry, etc to
> build an ESB using these abstractions. Then, they have thought that
> these abstractions should be properly managed. Therefore, came up with
> a new abstraction “Lifecycle Management” to enforce that.  If it is
> the case, ‘implementers’ of this abstraction really misused concept of
> design.
> One:
> There is no semantic validation. The “Lifecycle Management”
> abstraction has great semantic and just naming ‘init’, ‘destroy’
> cannot get this as it is just syntax. Abstractions are the ever greats
> things that builds the any system. Currently, there is no
> differentiating on calling a method based on ‘init’ or ‘destroy’ has
> been already called or not on that. Definitely, it can get exceptions
> like ‘NPE’ if ‘init’ had not been called. This is not semantic
> validation but failure due to avoiding it. I can remind some
> situations … As I remind some user has reported errors that have been
> happened due to fact Mediators inside switch case, has not been
> initiated. Another situation was occurred when using an indirect
> endpoint (only for indirect endpoint) within in send mediator. Send
> mediator’s init method did not get called and as a reason indirect
> endpoint has been not initialized. Still, this kind of things possible
> as any user can create custom mediators and there is no semantic
> validation on “Lifecycle Management”. Actually, these are transient
> failures - until get executed a particular code fragment failures are
> hidden. There are the ever bad failures. All these are happened due to
> fact there is no semantic validation on. There cannot be an
> abstraction without semantic. Without semantic validation, it is just
> a class for use to implements some trick.
>
> Two:
> There are no semantic enforcements. All initialized and not
> initialized objects can be used together.
>
> For the case two, I can only do refractor.
>
> I just want to say the way I think about these and never want to prove
> concerns of others are bad or good.
>
> I may have said one to one. If it was happened it is completely due I
> wanted get grid of this thread as I had many works to do.
>
> Thanks
> Indika
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
> For additional commands, e-mail: dev-help@synapse.apache.org
>
>

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


Re: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

Posted by indika kumara <in...@gmail.com>.
Hi All

Just now had a time to look at this.

Actually what I did from commit say by my commit log ‘remove
ManagedLifecycle from mediators that extends AbstractMediator as
AbstractMediator already implements ManagedLifecycle’. Actually, I
just replied to the thread as I have to replay as this related with
me. I just want to get rid if this thread as I had many works to do
and I really don’t care other things, when I have important things to
do.

I am trying to take design decision on this and I expect to get answer
for these.

1)	Is ‘ManagedLifecycle’ is a trick to allow mediators and others to
do require work related with initialization and destroy. Currently, I
can see only this as a trick.  Trick is still worked.
2)	Otherwise…. Synapse initiators came up with great set of
abstractions such as mediators, endpoints, tasks, registry, etc to
build an ESB using these abstractions. Then, they have thought that
these abstractions should be properly managed. Therefore, came up with
a new abstraction “Lifecycle Management” to enforce that.  If it is
the case, ‘implementers’ of this abstraction really misused concept of
design.
One:
There is no semantic validation. The “Lifecycle Management”
abstraction has great semantic and just naming ‘init’, ‘destroy’
cannot get this as it is just syntax. Abstractions are the ever greats
things that builds the any system. Currently, there is no
differentiating on calling a method based on ‘init’ or ‘destroy’ has
been already called or not on that. Definitely, it can get exceptions
like ‘NPE’ if ‘init’ had not been called. This is not semantic
validation but failure due to avoiding it. I can remind some
situations … As I remind some user has reported errors that have been
happened due to fact Mediators inside switch case, has not been
initiated. Another situation was occurred when using an indirect
endpoint (only for indirect endpoint) within in send mediator. Send
mediator’s init method did not get called and as a reason indirect
endpoint has been not initialized. Still, this kind of things possible
as any user can create custom mediators and there is no semantic
validation on “Lifecycle Management”. Actually, these are transient
failures - until get executed a particular code fragment failures are
hidden. There are the ever bad failures. All these are happened due to
fact there is no semantic validation on. There cannot be an
abstraction without semantic. Without semantic validation, it is just
a class for use to implements some trick.

Two:
There are no semantic enforcements. All initialized and not
initialized objects can be used together.

For the case two, I can only do refractor.

I just want to say the way I think about these and never want to prove
concerns of others are bad or good.

I may have said one to one. If it was happened it is completely due I
wanted get grid of this thread as I had many works to do.

Thanks
Indika

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


Re: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

Posted by indika kumara <in...@gmail.com>.
Hi All

Thanks ALL for valuable feedback ….

Actually, I didn’t do this for any design purpose. Actually, I saw
that AbstractMediator already has implemented the ‘ManagedLifecycle’
(may be due to change for remove two init methods – my wrong) and I
too saw many mediators that extends from AbstractMediator too
implements ‘ManagedLifecycle’. So I removed it, with out thinking
twice - no any design decision. Actually, these days, I am really too
busy due education related things. (Even I replied to these thread,
without thinking twice). As a reason, my concerns about these things
are really low. Even I sometime commit as bulks due to fact I only
work only when I have time (no iterative work). So, thanks for the
reviewing code changes and giving feed back.

For me, enforcing mediator to be have properly managed lifecycle it
good (I didn’t try to do that by my change or even I never think such
a thing when doing change). May be there are no thing to do in this
method (no benefit). Generally, abstraction is not only for code reuse
or benefit. One of great usage is enforcing semantically meaningful
things / behaviors.  Mediator is a one of main abstraction in synapse.
Permitting to access (call mediate) it, only if it is in initialized
state, is semantically meaningful as it creates a secure stand box
around it. Simply, tell that any meaningful abstractions in the
synapse only can be accessed if those have properly initialized. This
may be not having any benefit but may semantically meaningful.

Thanks for review and feedback. I will revert changes. But  I have to
find times. If I could finish my assignments within weekend, I will
definitely do it at this week end.


Thanks
Indika

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


RE: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

Posted by "Hubert, Eric" <Er...@foxmobile.com>.
Indika,

> I may wrong but state full means outcome of the current request may be
> depend on what previous requests did. If it is session ware, then it
> depends on previous requests on the current session. Keeping life
> cycle state (initialized, destroyed), not relate with above thing. 

I agree the term state might not be properly chosen by Ruwan, but his explanation of his concerns was understandable at least understandable to me and somehow I seem to have the same concerns.


> me, if it is good, if we can enforce that, all the mediators need to
> be properly initialized and destroyed. 

With this change you do not enforce anything. You could only enforce this by making the methods abstract. Any empty implementation enforces nothing, or?


> Minimally, any mediator that is
> an abstract mediator (it is a mediator with some common behaviors),
> need to properly initialized and destroyed (currently it is not
> there).

Why? What about the POJOCommandMediator? If this would be the case the class name of AbstractMediator should reflect this and the lifecycle methods should be abstract.


> It is possible to fill the blank with some useful things. For example,
> cache SynapseEnvironment or Axis2 Configuration Context... There are
> many mediators that try to access these with in mediate method by
> casting to axi2 message context, then get axi2 configuration context,
> then get synapse environment,etc …. Can completely eliminate those
> codes. Keeping SynapseEnvironment is never bad thing…..

If there is really a some common code in conjunction with managed lifecycle it might be a better idea to create a new abstract class extending from AbstractMediator implementing those methods and letting all mediators needing a lifecycle extending from those. Having had only a short look at some Synapse mediators I actually doubt the benefit.

Hmmm, I did not get the full meaning of your last two sentences. I'm quite new to the Synapse code, which maybe the reason. But if many mediators are doing the same thing (and this does not sound to be lifecyle-dependend) then you may implement some common functionality in AbstractMediator and use this, or?

Regards,
   Eric

Re: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

Posted by Ruwan Linton <ru...@gmail.com>.
Hi Indika,

On Sat, Mar 14, 2009 at 10:41 AM, indika kumara <in...@gmail.com>wrote:

> Ruwan
>
> I may wrong but state full means outcome of the current request may be
> depend on what previous requests did. If it is session ware, then it
> depends on previous requests on the current session. Keeping life
> cycle state (initialized, destroyed), not relate with above thing. For
> me, if it is good, if we can enforce that, all the mediators need to
> be properly initialized and destroyed. Minimally, any mediator that is
> an abstract mediator (it is a mediator with some common behaviors),
> need to properly initialized and destroyed (currently it is not
> there).


What I meant is actually the life cycle management, I agree with the
definition of the state fullness ;-)


>
>
> It is possible to fill the blank with some useful things. For example,
> cache SynapseEnvironment or Axis2 Configuration Context... There are
> many mediators that try to access these with in mediate method by
> casting to axi2 message context, then get axi2 configuration context,
> then get synapse environment,etc …. Can completely eliminate those
> codes. Keeping SynapseEnvironment is never bad thing…..


Indika, the SynapseEnvironment can be obtained directly by synapse API why
do you need to cache that? and caching the ConfigurationContext is deadly
wrong because it might change over the time;

org.apache.synapse.SynapseEnvironment =
org.apache.synapse.MessageContext.getEnvironment();

For getting the ConfigurationContext, what you should do is to add a method
to get the ConfigurationContext from the current message context to the
AbstractMediator class.

I am sorry, I still do not see any value of all mediators being
ManagedLifecycles... :-(

Thanks,
Ruwan


>
>
> Thanks
> Indika
>
> On Sat, Mar 14, 2009 at 8:07 AM, Ruwan Linton <ru...@gmail.com>
> wrote:
> > I know that the implementation is blank... but isn't it conceptually
> wrong?
> > We had most of the mediators as stateless and now it seems all of them
> have
> > a life cycle because almost all of them are extended from
> AbstractMediator,
> > to get the common functionality.
> >
> > I think a mediator with a life cycle has to implement the
> ManagedLifeCycle
> > interface and not the AbstractMediator otherwise the design is wrong :-(
> > What do others think about this??
> >
> > Thanks,
> > Ruwan
> >
> > 2009/3/13 indika kumara <in...@gmail.com>
> >>
> >> No need to implements as default behavior is doing noting. Only need
> >> to override if has any special things do to at life cycle event
> >>
> >> On Fri, Mar 13, 2009 at 11:30 PM, indika kumara <in...@gmail.com>
> >> wrote:
> >> > Ruwan
> >> >
> >> > I thought any mediators that is an abstract mediator (extend from
> >> > abstract mediator), has a manageable life. And, any independent
> >> > mediators (that is not an abstract mediator), only will have a
> >> > manageable life if he wants and he need to tell that by explicitly
> >> > implementing interface.
> >> >
> >> > Thanks
> >> > Indika
> >> >
> >> > On Fri, Mar 13, 2009 at 10:50 PM, Ruwan Linton <
> ruwan.linton@gmail.com>
> >> > wrote:
> >> >> Indika,
> >> >>
> >> >> Why does AbstractMediator implements the ManagedLifecycle? does this
> >> >> means
> >> >> that all the mediators have init and destroy methods?
> >> >>
> >> >> Thanks,
> >> >> Ruwan
> >> >>
> >> >> 2009/3/13 <in...@apache.org>
> >> >>>
> >> >>> Author: indika
> >> >>> Date: Fri Mar 13 07:16:16 2009
> >> >>> New Revision: 753144
> >> >>>
> >> >>> URL: http://svn.apache.org/viewvc?rev=753144&view=rev
> >> >>> Log:
> >> >>> remove ManagedLifecycle from mediators that extends AbstractMediator
> >> >>> as
> >> >>> AbstractMediator already implements ManagedLifecycle
> >> >>>
> >> >>> Modified:
> >> >>>
> >> >>>
> >> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> >> >>>
> >> >>>
> >> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> >> >>>
> >> >>>
> >> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> >> >>>
> >> >>>
> >> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> >> >>>
> >> >>>
> >> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> >> >>>
> >> >>>
> >> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> >> >>>
> >> >>>
> >> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> >> >>>
> >> >>>
> >> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> >> >>>
> >> >>>
> >> >>>
>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> >> >>>
> >> >>>
> >> >>>
>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> >> >>>
> >> >>>
> >> >>>
>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> >> >>>
> >> >>>
> >> >>>
>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> >> >>>
> >> >>> Modified:
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> >> >>> URL:
> >> >>>
> >> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >> >>>
> >> >>>
> >> >>>
> ==============================================================================
> >> >>> ---
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> >> >>> (original)
> >> >>> +++
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> >> >>> Fri Mar 13 07:16:16 2009
> >> >>> @@ -24,7 +24,6 @@
> >> >>>  import org.apache.axis2.clustering.context.Replicator;
> >> >>>  import org.apache.axis2.context.ConfigurationContext;
> >> >>>  import org.apache.axis2.saaj.util.SAAJUtil;
> >> >>> -import org.apache.synapse.ManagedLifecycle;
> >> >>>  import org.apache.synapse.MessageContext;
> >> >>>  import org.apache.synapse.SynapseException;
> >> >>>  import org.apache.synapse.SynapseLog;
> >> >>> @@ -58,7 +57,7 @@
> >> >>>  *
> >> >>>  * @see org.apache.synapse.Mediator
> >> >>>  */
> >> >>> -public class CacheMediator extends AbstractMediator implements
> >> >>> ManagedLifecycle {
> >> >>> +public class CacheMediator extends AbstractMediator {
> >> >>>
> >> >>>     private String id = null;
> >> >>>     private String scope = CachingConstants.SCOPE_PER_HOST;// global
> >> >>>
> >> >>> Modified:
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> >> >>> URL:
> >> >>>
> >> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >> >>>
> >> >>>
> >> >>>
> ==============================================================================
> >> >>> ---
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> >> >>> (original)
> >> >>> +++
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> >> >>> Fri Mar 13 07:16:16 2009
> >> >>> @@ -23,15 +23,14 @@
> >> >>>  import org.apache.axiom.om.OMNode;
> >> >>>  import org.apache.axis2.AxisFault;
> >> >>>  import org.apache.axis2.Constants;
> >> >>> -import org.apache.axis2.transport.http.HTTPConstants;
> >> >>> -import org.apache.axis2.description.Parameter;
> >> >>>  import org.apache.axis2.addressing.AddressingConstants;
> >> >>>  import org.apache.axis2.addressing.EndpointReference;
> >> >>>  import org.apache.axis2.client.Options;
> >> >>>  import org.apache.axis2.client.ServiceClient;
> >> >>>  import org.apache.axis2.context.ConfigurationContext;
> >> >>>  import org.apache.axis2.context.ConfigurationContextFactory;
> >> >>> -import org.apache.synapse.ManagedLifecycle;
> >> >>> +import org.apache.axis2.description.Parameter;
> >> >>> +import org.apache.axis2.transport.http.HTTPConstants;
> >> >>>  import org.apache.synapse.MessageContext;
> >> >>>  import org.apache.synapse.SynapseException;
> >> >>>  import org.apache.synapse.SynapseLog;
> >> >>> @@ -51,7 +50,7 @@
> >> >>>  *      <target xpath="expression" | key="string"/>
> >> >>>  * </callout>
> >> >>>  */
> >> >>> -public class CalloutMediator extends AbstractMediator implements
> >> >>> ManagedLifecycle {
> >> >>> +public class CalloutMediator extends AbstractMediator {
> >> >>>
> >> >>>     private ServiceClient sc = null;
> >> >>>     private String serviceURL = null;
> >> >>> @@ -179,6 +178,7 @@
> >> >>>         return null;
> >> >>>     }
> >> >>>
> >> >>> +    @Override
> >> >>>     public void init(SynapseEnvironment synEnv) {
> >> >>>         try {
> >> >>>             ConfigurationContext cfgCtx
> >> >>> @@ -193,6 +193,7 @@
> >> >>>         }
> >> >>>     }
> >> >>>
> >> >>> +    @Override
> >> >>>     public void destroy() {
> >> >>>         try {
> >> >>>             sc.cleanup();
> >> >>>
> >> >>> Modified:
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> >> >>> URL:
> >> >>>
> >> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >> >>>
> >> >>>
> >> >>>
> ==============================================================================
> >> >>> ---
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> >> >>> (original)
> >> >>> +++
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> >> >>> Fri Mar 13 07:16:16 2009
> >> >>> @@ -21,7 +21,6 @@
> >> >>>
> >> >>>  import org.apache.commons.dbcp.BasicDataSource;
> >> >>>  import org.apache.commons.dbcp.datasources.PerUserPoolDataSource;
> >> >>> -import org.apache.synapse.ManagedLifecycle;
> >> >>>  import org.apache.synapse.MessageContext;
> >> >>>  import org.apache.synapse.SynapseException;
> >> >>>  import org.apache.synapse.SynapseLog;
> >> >>> @@ -34,13 +33,15 @@
> >> >>>  import javax.xml.namespace.QName;
> >> >>>  import java.math.BigDecimal;
> >> >>>  import java.sql.*;
> >> >>> -import java.sql.Date;
> >> >>> -import java.util.*;
> >> >>> +import java.util.ArrayList;
> >> >>> +import java.util.HashMap;
> >> >>> +import java.util.List;
> >> >>> +import java.util.Map;
> >> >>>
> >> >>>  /**
> >> >>>  * This abstract DB mediator will perform common DB connection
> pooling
> >> >>> etc. for all DB mediators
> >> >>>  */
> >> >>> -public abstract class AbstractDBMediator extends AbstractMediator
> >> >>> implements ManagedLifecycle {
> >> >>> +public abstract class AbstractDBMediator extends AbstractMediator {
> >> >>>
> >> >>>     /** Hold JDBC properties */
> >> >>>     protected final Map dataSourceProps = new HashMap();
> >> >>>
> >> >>> Modified:
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> >> >>> URL:
> >> >>>
> >> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >> >>>
> >> >>>
> >> >>>
> ==============================================================================
> >> >>> ---
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> >> >>> (original)
> >> >>> +++
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> >> >>> Fri Mar 13 07:16:16 2009
> >> >>> @@ -23,7 +23,6 @@
> >> >>>  import org.apache.axiom.soap.SOAP12Constants;
> >> >>>  import org.apache.commons.logging.Log;
> >> >>>  import org.apache.commons.logging.LogFactory;
> >> >>> -import org.apache.synapse.ManagedLifecycle;
> >> >>>  import org.apache.synapse.MessageContext;
> >> >>>  import org.apache.synapse.SynapseLog;
> >> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >> >>> @@ -48,7 +47,7 @@
> >> >>>  * so that aggregations that never would complete could be timed out
> >> >>> and
> >> >>> cleared from memory and
> >> >>>  * any fault conditions handled
> >> >>>  */
> >> >>> -public class AggregateMediator extends AbstractMediator implements
> >> >>> ManagedLifecycle {
> >> >>> +public class AggregateMediator extends AbstractMediator {
> >> >>>
> >> >>>     private static final Log log =
> >> >>> LogFactory.getLog(AggregateMediator.class);
> >> >>>
> >> >>>
> >> >>> Modified:
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> >> >>> URL:
> >> >>>
> >> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >> >>>
> >> >>>
> >> >>>
> ==============================================================================
> >> >>> ---
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> >> >>> (original)
> >> >>> +++
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> >> >>> Fri Mar 13 07:16:16 2009
> >> >>> @@ -19,23 +19,23 @@
> >> >>>
> >> >>>  package org.apache.synapse.mediators.eip.splitter;
> >> >>>
> >> >>> -import org.apache.synapse.MessageContext;
> >> >>> +import org.apache.axis2.AxisFault;
> >> >>> +import org.apache.axis2.Constants;
> >> >>> +import org.apache.axis2.context.OperationContext;
> >> >>>  import org.apache.synapse.ManagedLifecycle;
> >> >>> +import org.apache.synapse.MessageContext;
> >> >>>  import org.apache.synapse.SynapseLog;
> >> >>> -import org.apache.synapse.endpoints.Endpoint;
> >> >>> -import org.apache.synapse.core.axis2.Axis2MessageContext;
> >> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >> >>> -import org.apache.synapse.util.MessageHelper;
> >> >>> +import org.apache.synapse.core.axis2.Axis2MessageContext;
> >> >>> +import org.apache.synapse.endpoints.Endpoint;
> >> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >> >>> -import org.apache.synapse.mediators.eip.Target;
> >> >>>  import org.apache.synapse.mediators.eip.EIPConstants;
> >> >>> -import org.apache.axis2.AxisFault;
> >> >>> -import org.apache.axis2.Constants;
> >> >>> -import org.apache.axis2.context.OperationContext;
> >> >>> +import org.apache.synapse.mediators.eip.Target;
> >> >>> +import org.apache.synapse.util.MessageHelper;
> >> >>>
> >> >>>  import java.util.ArrayList;
> >> >>> -import java.util.List;
> >> >>>  import java.util.Iterator;
> >> >>> +import java.util.List;
> >> >>>
> >> >>>  /**
> >> >>>  * This mediator will clone the message into multiple messages and
> >> >>> mediate
> >> >>> as specified in the
> >> >>> @@ -43,7 +43,7 @@
> >> >>>  * specifies an Action and/or To address to be set to the cloned
> >> >>> message.
> >> >>> The number of cloned
> >> >>>  * messages created is the number of targets specified
> >> >>>  */
> >> >>> -public class CloneMediator extends AbstractMediator implements
> >> >>> ManagedLifecycle {
> >> >>> +public class CloneMediator extends AbstractMediator {
> >> >>>
> >> >>>     /**
> >> >>>      * Continue processing the parent message or not?
> >> >>>
> >> >>> Modified:
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> >> >>> URL:
> >> >>>
> >> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >> >>>
> >> >>>
> >> >>>
> ==============================================================================
> >> >>> ---
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> >> >>> (original)
> >> >>> +++
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> >> >>> Fri Mar 13 07:16:16 2009
> >> >>> @@ -28,9 +28,9 @@
> >> >>>  import org.apache.synapse.ManagedLifecycle;
> >> >>>  import org.apache.synapse.MessageContext;
> >> >>>  import org.apache.synapse.SynapseLog;
> >> >>> -import org.apache.synapse.endpoints.Endpoint;
> >> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >> >>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
> >> >>> +import org.apache.synapse.endpoints.Endpoint;
> >> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >> >>>  import org.apache.synapse.mediators.eip.EIPConstants;
> >> >>>  import org.apache.synapse.mediators.eip.EIPUtils;
> >> >>> @@ -47,7 +47,7 @@
> >> >>>  * each resulting element. This is very much similar to the clone
> >> >>> mediator, and
> >> >>>  * hands over the newly created messages to a target for processing
> >> >>>  */
> >> >>> -public class IterateMediator extends AbstractMediator implements
> >> >>> ManagedLifecycle {
> >> >>> +public class IterateMediator extends AbstractMediator {
> >> >>>
> >> >>>     /** Continue mediation on the parent message or not? */
> >> >>>     private boolean continueParent = false;
> >> >>>
> >> >>> Modified:
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> >> >>> URL:
> >> >>>
> >> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >> >>>
> >> >>>
> >> >>>
> ==============================================================================
> >> >>> ---
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> >> >>> (original)
> >> >>> +++
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> >> >>> Fri Mar 13 07:16:16 2009
> >> >>> @@ -19,11 +19,7 @@
> >> >>>
> >> >>>  package org.apache.synapse.mediators.ext;
> >> >>>
> >> >>> -import org.apache.synapse.ManagedLifecycle;
> >> >>> -import org.apache.synapse.Mediator;
> >> >>> -import org.apache.synapse.MessageContext;
> >> >>> -import org.apache.synapse.SynapseException;
> >> >>> -import org.apache.synapse.SynapseLog;
> >> >>> +import org.apache.synapse.*;
> >> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >> >>>
> >> >>> @@ -41,7 +37,7 @@
> >> >>>  *
> >> >>>  * @see Mediator
> >> >>>  */
> >> >>> -public class ClassMediator extends AbstractMediator implements
> >> >>> ManagedLifecycle {
> >> >>> +public class ClassMediator extends AbstractMediator {
> >> >>>
> >> >>>     /** The reference to the actual class that implments the
> Mediator
> >> >>> interface */
> >> >>>     private Mediator mediator = null;
> >> >>>
> >> >>> Modified:
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> >> >>> URL:
> >> >>>
> >> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >> >>>
> >> >>>
> >> >>>
> ==============================================================================
> >> >>> ---
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> >> >>> (original)
> >> >>> +++
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> >> >>> Fri Mar 13 07:16:16 2009
> >> >>> @@ -36,7 +36,7 @@
> >> >>>  * the given list of cases. This is actually a list of sequences,
> and
> >> >>> depending on the
> >> >>>  * selected case, the selected sequence gets executed.
> >> >>>  */
> >> >>> -public class SwitchMediator extends AbstractMediator implements
> >> >>> ManagedLifecycle {
> >> >>> +public class SwitchMediator extends AbstractMediator {
> >> >>>
> >> >>>     /** The XPath expression specifying the source element to apply
> >> >>> the
> >> >>> switch case expressions against   */
> >> >>>     private SynapseXPath source = null;
> >> >>>
> >> >>> Modified:
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> >> >>> URL:
> >> >>>
> >> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >> >>>
> >> >>>
> >> >>>
> ==============================================================================
> >> >>> ---
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> >> >>> (original)
> >> >>> +++
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> >> >>> Fri Mar 13 07:16:16 2009
> >> >>> @@ -1,21 +1,20 @@
> >> >>>  package org.apache.synapse.mediators.eip;
> >> >>>
> >> >>> -import org.apache.synapse.mediators.AbstractMediator;
> >> >>> -import org.apache.synapse.MessageContext;
> >> >>> -import org.apache.synapse.ManagedLifecycle;
> >> >>> -import org.apache.synapse.core.SynapseEnvironment;
> >> >>> -import org.apache.axiom.soap.SOAPEnvelope;
> >> >>>  import org.apache.axiom.om.OMAbstractFactory;
> >> >>> +import org.apache.axiom.soap.SOAPEnvelope;
> >> >>>  import org.apache.axis2.AxisFault;
> >> >>> +import org.apache.synapse.MessageContext;
> >> >>> +import org.apache.synapse.core.SynapseEnvironment;
> >> >>> +import org.apache.synapse.mediators.AbstractMediator;
> >> >>>
> >> >>> -import java.util.List;
> >> >>>  import java.util.ArrayList;
> >> >>> +import java.util.List;
> >> >>>
> >> >>>  /**
> >> >>>  * Created by IntelliJ IDEA. User: ruwan Date: Oct 3, 2007 Time:
> >> >>> 7:26:09
> >> >>> AM To change this template
> >> >>>  * use File | Settings | File Templates.
> >> >>>  */
> >> >>> -public class SplitTestHelperMediator extends AbstractMediator
> >> >>> implements
> >> >>> ManagedLifecycle {
> >> >>> +public class SplitTestHelperMediator extends AbstractMediator {
> >> >>>
> >> >>>     private List mediatedContext = new ArrayList();
> >> >>>     int msgcount;
> >> >>>
> >> >>> Modified:
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> >> >>> URL:
> >> >>>
> >> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >> >>>
> >> >>>
> >> >>>
> ==============================================================================
> >> >>> ---
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> >> >>> (original)
> >> >>> +++
> >> >>>
> >> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> >> >>> Fri Mar 13 07:16:16 2009
> >> >>> @@ -20,8 +20,6 @@
> >> >>>  package org.apache.synapse.mediators.ext;
> >> >>>
> >> >>>  import org.apache.synapse.MessageContext;
> >> >>> -import org.apache.synapse.Mediator;
> >> >>> -import org.apache.synapse.ManagedLifecycle;
> >> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >> >>>
> >> >>> @@ -30,7 +28,7 @@
> >> >>>  * use a static member variable just to test this.. This class is
> not
> >> >>> nice.. :-)
> >> >>>  * but does what is expected... :-(
> >> >>>  */
> >> >>> -public class ClassMediatorTestMediator extends AbstractMediator
> >> >>> implements ManagedLifecycle {
> >> >>> +public class ClassMediatorTestMediator extends AbstractMediator {
> >> >>>
> >> >>>     public static boolean invoked = false;
> >> >>>     public static boolean initialized = false;
> >> >>>
> >> >>> Modified:
> >> >>>
> >> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> >> >>> URL:
> >> >>>
> >> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >> >>>
> >> >>>
> >> >>>
> ==============================================================================
> >> >>> ---
> >> >>>
> >> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> >> >>> (original)
> >> >>> +++
> >> >>>
> >> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> >> >>> Fri Mar 13 07:16:16 2009
> >> >>> @@ -19,15 +19,14 @@
> >> >>>
> >> >>>  package org.apache.synapse.mediators.spring;
> >> >>>
> >> >>> -import org.apache.synapse.MessageContext;
> >> >>>  import org.apache.synapse.Mediator;
> >> >>> -import org.apache.synapse.ManagedLifecycle;
> >> >>> +import org.apache.synapse.MessageContext;
> >> >>>  import org.apache.synapse.SynapseException;
> >> >>>  import org.apache.synapse.SynapseLog;
> >> >>> +import org.apache.synapse.config.Entry;
> >> >>> +import org.apache.synapse.config.SynapseConfigUtils;
> >> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >> >>> -import org.apache.synapse.config.SynapseConfigUtils;
> >> >>> -import org.apache.synapse.config.Entry;
> >> >>>  import
> org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
> >> >>>  import org.springframework.context.ApplicationContext;
> >> >>>  import
> org.springframework.context.support.GenericApplicationContext;
> >> >>> @@ -41,7 +40,7 @@
> >> >>>  * refers to a Spring bean name, and also either a Spring
> >> >>> configuration
> >> >>> defined to Synapse
> >> >>>  * or an inlined Spring configuration.
> >> >>>  */
> >> >>> -public class SpringMediator extends AbstractMediator implements
> >> >>> ManagedLifecycle {
> >> >>> +public class SpringMediator extends AbstractMediator {
> >> >>>
> >> >>>     /**
> >> >>>      * The Spring bean ref to be used
> >> >>>
> >> >>> Modified:
> >> >>>
> >> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> >> >>> URL:
> >> >>>
> >> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >> >>>
> >> >>>
> >> >>>
> ==============================================================================
> >> >>> ---
> >> >>>
> >> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> >> >>> (original)
> >> >>> +++
> >> >>>
> >> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> >> >>> Fri Mar 13 07:16:16 2009
> >> >>> @@ -19,20 +19,20 @@
> >> >>>  package org.apache.synapse.mediators.throttle;
> >> >>>
> >> >>>  import org.apache.axiom.om.OMElement;
> >> >>> +import org.apache.axis2.clustering.ClusterManager;
> >> >>> +import org.apache.axis2.clustering.ClusteringFault;
> >> >>> +import org.apache.axis2.clustering.context.Replicator;
> >> >>> +import org.apache.axis2.context.ConfigurationContext;
> >> >>>  import org.apache.neethi.PolicyEngine;
> >> >>>  import org.apache.synapse.ManagedLifecycle;
> >> >>>  import org.apache.synapse.Mediator;
> >> >>>  import org.apache.synapse.MessageContext;
> >> >>>  import org.apache.synapse.SynapseLog;
> >> >>> -import org.apache.synapse.transport.nhttp.NhttpConstants;
> >> >>>  import org.apache.synapse.config.Entry;
> >> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >> >>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
> >> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >> >>> -import org.apache.axis2.context.ConfigurationContext;
> >> >>> -import org.apache.axis2.clustering.context.Replicator;
> >> >>> -import org.apache.axis2.clustering.ClusteringFault;
> >> >>> -import org.apache.axis2.clustering.ClusterManager;
> >> >>> +import org.apache.synapse.transport.nhttp.NhttpConstants;
> >> >>>  import org.wso2.throttle.*;
> >> >>>
> >> >>>
> >> >>> @@ -42,7 +42,7 @@
> >> >>>  * Only support IP based throttling- Throotling can manage per IP
> >> >>> using
> >> >>> the throttle policy
> >> >>>  */
> >> >>>
> >> >>> -public class ThrottleMediator extends AbstractMediator implements
> >> >>> ManagedLifecycle {
> >> >>> +public class ThrottleMediator extends AbstractMediator {
> >> >>>
> >> >>>     /* The key for getting the throttling policy - key refers to
> a/an
> >> >>> [registry] entry    */
> >> >>>     private String policyKey = null;
> >> >>>
> >> >>>
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> Ruwan Linton
> >> >> Senior Software Engineer & Product Manager; WSO2 ESB;
> >> >> http://wso2.org/esb
> >> >> WSO2 Inc.; http://wso2.org
> >> >> email: ruwan@wso2.com; cell: +94 77 341 3097
> >> >> blog: http://ruwansblog.blogspot.com
> >> >>
> >> >
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
> >> For additional commands, e-mail: dev-help@synapse.apache.org
> >>
> >
> >
> >
> > --
> > Ruwan Linton
> > Senior Software Engineer & Product Manager; WSO2 ESB;
> http://wso2.org/esb
> > WSO2 Inc.; http://wso2.org
> > email: ruwan@wso2.com; cell: +94 77 341 3097
> > blog: http://ruwansblog.blogspot.com
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
> For additional commands, e-mail: dev-help@synapse.apache.org
>
>


-- 
Ruwan Linton
Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
WSO2 Inc.; http://wso2.org
email: ruwan@wso2.com; cell: +94 77 341 3097
blog: http://ruwansblog.blogspot.com

Re: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

Posted by indika kumara <in...@gmail.com>.
Ruwan

I may wrong but state full means outcome of the current request may be
depend on what previous requests did. If it is session ware, then it
depends on previous requests on the current session. Keeping life
cycle state (initialized, destroyed), not relate with above thing. For
me, if it is good, if we can enforce that, all the mediators need to
be properly initialized and destroyed. Minimally, any mediator that is
an abstract mediator (it is a mediator with some common behaviors),
need to properly initialized and destroyed (currently it is not
there).

It is possible to fill the blank with some useful things. For example,
cache SynapseEnvironment or Axis2 Configuration Context... There are
many mediators that try to access these with in mediate method by
casting to axi2 message context, then get axi2 configuration context,
then get synapse environment,etc …. Can completely eliminate those
codes. Keeping SynapseEnvironment is never bad thing…..

Thanks
Indika

On Sat, Mar 14, 2009 at 8:07 AM, Ruwan Linton <ru...@gmail.com> wrote:
> I know that the implementation is blank... but isn't it conceptually wrong?
> We had most of the mediators as stateless and now it seems all of them have
> a life cycle because almost all of them are extended from AbstractMediator,
> to get the common functionality.
>
> I think a mediator with a life cycle has to implement the ManagedLifeCycle
> interface and not the AbstractMediator otherwise the design is wrong :-(
> What do others think about this??
>
> Thanks,
> Ruwan
>
> 2009/3/13 indika kumara <in...@gmail.com>
>>
>> No need to implements as default behavior is doing noting. Only need
>> to override if has any special things do to at life cycle event
>>
>> On Fri, Mar 13, 2009 at 11:30 PM, indika kumara <in...@gmail.com>
>> wrote:
>> > Ruwan
>> >
>> > I thought any mediators that is an abstract mediator (extend from
>> > abstract mediator), has a manageable life. And, any independent
>> > mediators (that is not an abstract mediator), only will have a
>> > manageable life if he wants and he need to tell that by explicitly
>> > implementing interface.
>> >
>> > Thanks
>> > Indika
>> >
>> > On Fri, Mar 13, 2009 at 10:50 PM, Ruwan Linton <ru...@gmail.com>
>> > wrote:
>> >> Indika,
>> >>
>> >> Why does AbstractMediator implements the ManagedLifecycle? does this
>> >> means
>> >> that all the mediators have init and destroy methods?
>> >>
>> >> Thanks,
>> >> Ruwan
>> >>
>> >> 2009/3/13 <in...@apache.org>
>> >>>
>> >>> Author: indika
>> >>> Date: Fri Mar 13 07:16:16 2009
>> >>> New Revision: 753144
>> >>>
>> >>> URL: http://svn.apache.org/viewvc?rev=753144&view=rev
>> >>> Log:
>> >>> remove ManagedLifecycle from mediators that extends AbstractMediator
>> >>> as
>> >>> AbstractMediator already implements ManagedLifecycle
>> >>>
>> >>> Modified:
>> >>>
>> >>>
>> >>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>> >>>
>> >>>
>> >>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>> >>>
>> >>>
>> >>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>> >>>
>> >>>
>> >>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>> >>>
>> >>>
>> >>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>> >>>
>> >>>
>> >>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>> >>>
>> >>>
>> >>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>> >>>
>> >>>
>> >>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>> >>>
>> >>>
>> >>>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>> >>>
>> >>>
>> >>>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>> >>>
>> >>>
>> >>>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>> >>>
>> >>>
>> >>>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>> >>>
>> >>> Modified:
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>> >>> URL:
>> >>>
>> >>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>> >>>
>> >>>
>> >>> ==============================================================================
>> >>> ---
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>> >>> (original)
>> >>> +++
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>> >>> Fri Mar 13 07:16:16 2009
>> >>> @@ -24,7 +24,6 @@
>> >>>  import org.apache.axis2.clustering.context.Replicator;
>> >>>  import org.apache.axis2.context.ConfigurationContext;
>> >>>  import org.apache.axis2.saaj.util.SAAJUtil;
>> >>> -import org.apache.synapse.ManagedLifecycle;
>> >>>  import org.apache.synapse.MessageContext;
>> >>>  import org.apache.synapse.SynapseException;
>> >>>  import org.apache.synapse.SynapseLog;
>> >>> @@ -58,7 +57,7 @@
>> >>>  *
>> >>>  * @see org.apache.synapse.Mediator
>> >>>  */
>> >>> -public class CacheMediator extends AbstractMediator implements
>> >>> ManagedLifecycle {
>> >>> +public class CacheMediator extends AbstractMediator {
>> >>>
>> >>>     private String id = null;
>> >>>     private String scope = CachingConstants.SCOPE_PER_HOST;// global
>> >>>
>> >>> Modified:
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>> >>> URL:
>> >>>
>> >>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>> >>>
>> >>>
>> >>> ==============================================================================
>> >>> ---
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>> >>> (original)
>> >>> +++
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>> >>> Fri Mar 13 07:16:16 2009
>> >>> @@ -23,15 +23,14 @@
>> >>>  import org.apache.axiom.om.OMNode;
>> >>>  import org.apache.axis2.AxisFault;
>> >>>  import org.apache.axis2.Constants;
>> >>> -import org.apache.axis2.transport.http.HTTPConstants;
>> >>> -import org.apache.axis2.description.Parameter;
>> >>>  import org.apache.axis2.addressing.AddressingConstants;
>> >>>  import org.apache.axis2.addressing.EndpointReference;
>> >>>  import org.apache.axis2.client.Options;
>> >>>  import org.apache.axis2.client.ServiceClient;
>> >>>  import org.apache.axis2.context.ConfigurationContext;
>> >>>  import org.apache.axis2.context.ConfigurationContextFactory;
>> >>> -import org.apache.synapse.ManagedLifecycle;
>> >>> +import org.apache.axis2.description.Parameter;
>> >>> +import org.apache.axis2.transport.http.HTTPConstants;
>> >>>  import org.apache.synapse.MessageContext;
>> >>>  import org.apache.synapse.SynapseException;
>> >>>  import org.apache.synapse.SynapseLog;
>> >>> @@ -51,7 +50,7 @@
>> >>>  *      <target xpath="expression" | key="string"/>
>> >>>  * </callout>
>> >>>  */
>> >>> -public class CalloutMediator extends AbstractMediator implements
>> >>> ManagedLifecycle {
>> >>> +public class CalloutMediator extends AbstractMediator {
>> >>>
>> >>>     private ServiceClient sc = null;
>> >>>     private String serviceURL = null;
>> >>> @@ -179,6 +178,7 @@
>> >>>         return null;
>> >>>     }
>> >>>
>> >>> +    @Override
>> >>>     public void init(SynapseEnvironment synEnv) {
>> >>>         try {
>> >>>             ConfigurationContext cfgCtx
>> >>> @@ -193,6 +193,7 @@
>> >>>         }
>> >>>     }
>> >>>
>> >>> +    @Override
>> >>>     public void destroy() {
>> >>>         try {
>> >>>             sc.cleanup();
>> >>>
>> >>> Modified:
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>> >>> URL:
>> >>>
>> >>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>> >>>
>> >>>
>> >>> ==============================================================================
>> >>> ---
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>> >>> (original)
>> >>> +++
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>> >>> Fri Mar 13 07:16:16 2009
>> >>> @@ -21,7 +21,6 @@
>> >>>
>> >>>  import org.apache.commons.dbcp.BasicDataSource;
>> >>>  import org.apache.commons.dbcp.datasources.PerUserPoolDataSource;
>> >>> -import org.apache.synapse.ManagedLifecycle;
>> >>>  import org.apache.synapse.MessageContext;
>> >>>  import org.apache.synapse.SynapseException;
>> >>>  import org.apache.synapse.SynapseLog;
>> >>> @@ -34,13 +33,15 @@
>> >>>  import javax.xml.namespace.QName;
>> >>>  import java.math.BigDecimal;
>> >>>  import java.sql.*;
>> >>> -import java.sql.Date;
>> >>> -import java.util.*;
>> >>> +import java.util.ArrayList;
>> >>> +import java.util.HashMap;
>> >>> +import java.util.List;
>> >>> +import java.util.Map;
>> >>>
>> >>>  /**
>> >>>  * This abstract DB mediator will perform common DB connection pooling
>> >>> etc. for all DB mediators
>> >>>  */
>> >>> -public abstract class AbstractDBMediator extends AbstractMediator
>> >>> implements ManagedLifecycle {
>> >>> +public abstract class AbstractDBMediator extends AbstractMediator {
>> >>>
>> >>>     /** Hold JDBC properties */
>> >>>     protected final Map dataSourceProps = new HashMap();
>> >>>
>> >>> Modified:
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>> >>> URL:
>> >>>
>> >>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>> >>>
>> >>>
>> >>> ==============================================================================
>> >>> ---
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>> >>> (original)
>> >>> +++
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>> >>> Fri Mar 13 07:16:16 2009
>> >>> @@ -23,7 +23,6 @@
>> >>>  import org.apache.axiom.soap.SOAP12Constants;
>> >>>  import org.apache.commons.logging.Log;
>> >>>  import org.apache.commons.logging.LogFactory;
>> >>> -import org.apache.synapse.ManagedLifecycle;
>> >>>  import org.apache.synapse.MessageContext;
>> >>>  import org.apache.synapse.SynapseLog;
>> >>>  import org.apache.synapse.core.SynapseEnvironment;
>> >>> @@ -48,7 +47,7 @@
>> >>>  * so that aggregations that never would complete could be timed out
>> >>> and
>> >>> cleared from memory and
>> >>>  * any fault conditions handled
>> >>>  */
>> >>> -public class AggregateMediator extends AbstractMediator implements
>> >>> ManagedLifecycle {
>> >>> +public class AggregateMediator extends AbstractMediator {
>> >>>
>> >>>     private static final Log log =
>> >>> LogFactory.getLog(AggregateMediator.class);
>> >>>
>> >>>
>> >>> Modified:
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>> >>> URL:
>> >>>
>> >>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>> >>>
>> >>>
>> >>> ==============================================================================
>> >>> ---
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>> >>> (original)
>> >>> +++
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>> >>> Fri Mar 13 07:16:16 2009
>> >>> @@ -19,23 +19,23 @@
>> >>>
>> >>>  package org.apache.synapse.mediators.eip.splitter;
>> >>>
>> >>> -import org.apache.synapse.MessageContext;
>> >>> +import org.apache.axis2.AxisFault;
>> >>> +import org.apache.axis2.Constants;
>> >>> +import org.apache.axis2.context.OperationContext;
>> >>>  import org.apache.synapse.ManagedLifecycle;
>> >>> +import org.apache.synapse.MessageContext;
>> >>>  import org.apache.synapse.SynapseLog;
>> >>> -import org.apache.synapse.endpoints.Endpoint;
>> >>> -import org.apache.synapse.core.axis2.Axis2MessageContext;
>> >>>  import org.apache.synapse.core.SynapseEnvironment;
>> >>> -import org.apache.synapse.util.MessageHelper;
>> >>> +import org.apache.synapse.core.axis2.Axis2MessageContext;
>> >>> +import org.apache.synapse.endpoints.Endpoint;
>> >>>  import org.apache.synapse.mediators.AbstractMediator;
>> >>> -import org.apache.synapse.mediators.eip.Target;
>> >>>  import org.apache.synapse.mediators.eip.EIPConstants;
>> >>> -import org.apache.axis2.AxisFault;
>> >>> -import org.apache.axis2.Constants;
>> >>> -import org.apache.axis2.context.OperationContext;
>> >>> +import org.apache.synapse.mediators.eip.Target;
>> >>> +import org.apache.synapse.util.MessageHelper;
>> >>>
>> >>>  import java.util.ArrayList;
>> >>> -import java.util.List;
>> >>>  import java.util.Iterator;
>> >>> +import java.util.List;
>> >>>
>> >>>  /**
>> >>>  * This mediator will clone the message into multiple messages and
>> >>> mediate
>> >>> as specified in the
>> >>> @@ -43,7 +43,7 @@
>> >>>  * specifies an Action and/or To address to be set to the cloned
>> >>> message.
>> >>> The number of cloned
>> >>>  * messages created is the number of targets specified
>> >>>  */
>> >>> -public class CloneMediator extends AbstractMediator implements
>> >>> ManagedLifecycle {
>> >>> +public class CloneMediator extends AbstractMediator {
>> >>>
>> >>>     /**
>> >>>      * Continue processing the parent message or not?
>> >>>
>> >>> Modified:
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>> >>> URL:
>> >>>
>> >>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>> >>>
>> >>>
>> >>> ==============================================================================
>> >>> ---
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>> >>> (original)
>> >>> +++
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>> >>> Fri Mar 13 07:16:16 2009
>> >>> @@ -28,9 +28,9 @@
>> >>>  import org.apache.synapse.ManagedLifecycle;
>> >>>  import org.apache.synapse.MessageContext;
>> >>>  import org.apache.synapse.SynapseLog;
>> >>> -import org.apache.synapse.endpoints.Endpoint;
>> >>>  import org.apache.synapse.core.SynapseEnvironment;
>> >>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
>> >>> +import org.apache.synapse.endpoints.Endpoint;
>> >>>  import org.apache.synapse.mediators.AbstractMediator;
>> >>>  import org.apache.synapse.mediators.eip.EIPConstants;
>> >>>  import org.apache.synapse.mediators.eip.EIPUtils;
>> >>> @@ -47,7 +47,7 @@
>> >>>  * each resulting element. This is very much similar to the clone
>> >>> mediator, and
>> >>>  * hands over the newly created messages to a target for processing
>> >>>  */
>> >>> -public class IterateMediator extends AbstractMediator implements
>> >>> ManagedLifecycle {
>> >>> +public class IterateMediator extends AbstractMediator {
>> >>>
>> >>>     /** Continue mediation on the parent message or not? */
>> >>>     private boolean continueParent = false;
>> >>>
>> >>> Modified:
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>> >>> URL:
>> >>>
>> >>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>> >>>
>> >>>
>> >>> ==============================================================================
>> >>> ---
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>> >>> (original)
>> >>> +++
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>> >>> Fri Mar 13 07:16:16 2009
>> >>> @@ -19,11 +19,7 @@
>> >>>
>> >>>  package org.apache.synapse.mediators.ext;
>> >>>
>> >>> -import org.apache.synapse.ManagedLifecycle;
>> >>> -import org.apache.synapse.Mediator;
>> >>> -import org.apache.synapse.MessageContext;
>> >>> -import org.apache.synapse.SynapseException;
>> >>> -import org.apache.synapse.SynapseLog;
>> >>> +import org.apache.synapse.*;
>> >>>  import org.apache.synapse.core.SynapseEnvironment;
>> >>>  import org.apache.synapse.mediators.AbstractMediator;
>> >>>
>> >>> @@ -41,7 +37,7 @@
>> >>>  *
>> >>>  * @see Mediator
>> >>>  */
>> >>> -public class ClassMediator extends AbstractMediator implements
>> >>> ManagedLifecycle {
>> >>> +public class ClassMediator extends AbstractMediator {
>> >>>
>> >>>     /** The reference to the actual class that implments the Mediator
>> >>> interface */
>> >>>     private Mediator mediator = null;
>> >>>
>> >>> Modified:
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>> >>> URL:
>> >>>
>> >>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>> >>>
>> >>>
>> >>> ==============================================================================
>> >>> ---
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>> >>> (original)
>> >>> +++
>> >>>
>> >>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>> >>> Fri Mar 13 07:16:16 2009
>> >>> @@ -36,7 +36,7 @@
>> >>>  * the given list of cases. This is actually a list of sequences, and
>> >>> depending on the
>> >>>  * selected case, the selected sequence gets executed.
>> >>>  */
>> >>> -public class SwitchMediator extends AbstractMediator implements
>> >>> ManagedLifecycle {
>> >>> +public class SwitchMediator extends AbstractMediator {
>> >>>
>> >>>     /** The XPath expression specifying the source element to apply
>> >>> the
>> >>> switch case expressions against   */
>> >>>     private SynapseXPath source = null;
>> >>>
>> >>> Modified:
>> >>>
>> >>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>> >>> URL:
>> >>>
>> >>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>> >>>
>> >>>
>> >>> ==============================================================================
>> >>> ---
>> >>>
>> >>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>> >>> (original)
>> >>> +++
>> >>>
>> >>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>> >>> Fri Mar 13 07:16:16 2009
>> >>> @@ -1,21 +1,20 @@
>> >>>  package org.apache.synapse.mediators.eip;
>> >>>
>> >>> -import org.apache.synapse.mediators.AbstractMediator;
>> >>> -import org.apache.synapse.MessageContext;
>> >>> -import org.apache.synapse.ManagedLifecycle;
>> >>> -import org.apache.synapse.core.SynapseEnvironment;
>> >>> -import org.apache.axiom.soap.SOAPEnvelope;
>> >>>  import org.apache.axiom.om.OMAbstractFactory;
>> >>> +import org.apache.axiom.soap.SOAPEnvelope;
>> >>>  import org.apache.axis2.AxisFault;
>> >>> +import org.apache.synapse.MessageContext;
>> >>> +import org.apache.synapse.core.SynapseEnvironment;
>> >>> +import org.apache.synapse.mediators.AbstractMediator;
>> >>>
>> >>> -import java.util.List;
>> >>>  import java.util.ArrayList;
>> >>> +import java.util.List;
>> >>>
>> >>>  /**
>> >>>  * Created by IntelliJ IDEA. User: ruwan Date: Oct 3, 2007 Time:
>> >>> 7:26:09
>> >>> AM To change this template
>> >>>  * use File | Settings | File Templates.
>> >>>  */
>> >>> -public class SplitTestHelperMediator extends AbstractMediator
>> >>> implements
>> >>> ManagedLifecycle {
>> >>> +public class SplitTestHelperMediator extends AbstractMediator {
>> >>>
>> >>>     private List mediatedContext = new ArrayList();
>> >>>     int msgcount;
>> >>>
>> >>> Modified:
>> >>>
>> >>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>> >>> URL:
>> >>>
>> >>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>> >>>
>> >>>
>> >>> ==============================================================================
>> >>> ---
>> >>>
>> >>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>> >>> (original)
>> >>> +++
>> >>>
>> >>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>> >>> Fri Mar 13 07:16:16 2009
>> >>> @@ -20,8 +20,6 @@
>> >>>  package org.apache.synapse.mediators.ext;
>> >>>
>> >>>  import org.apache.synapse.MessageContext;
>> >>> -import org.apache.synapse.Mediator;
>> >>> -import org.apache.synapse.ManagedLifecycle;
>> >>>  import org.apache.synapse.core.SynapseEnvironment;
>> >>>  import org.apache.synapse.mediators.AbstractMediator;
>> >>>
>> >>> @@ -30,7 +28,7 @@
>> >>>  * use a static member variable just to test this.. This class is not
>> >>> nice.. :-)
>> >>>  * but does what is expected... :-(
>> >>>  */
>> >>> -public class ClassMediatorTestMediator extends AbstractMediator
>> >>> implements ManagedLifecycle {
>> >>> +public class ClassMediatorTestMediator extends AbstractMediator {
>> >>>
>> >>>     public static boolean invoked = false;
>> >>>     public static boolean initialized = false;
>> >>>
>> >>> Modified:
>> >>>
>> >>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>> >>> URL:
>> >>>
>> >>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>> >>>
>> >>>
>> >>> ==============================================================================
>> >>> ---
>> >>>
>> >>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>> >>> (original)
>> >>> +++
>> >>>
>> >>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>> >>> Fri Mar 13 07:16:16 2009
>> >>> @@ -19,15 +19,14 @@
>> >>>
>> >>>  package org.apache.synapse.mediators.spring;
>> >>>
>> >>> -import org.apache.synapse.MessageContext;
>> >>>  import org.apache.synapse.Mediator;
>> >>> -import org.apache.synapse.ManagedLifecycle;
>> >>> +import org.apache.synapse.MessageContext;
>> >>>  import org.apache.synapse.SynapseException;
>> >>>  import org.apache.synapse.SynapseLog;
>> >>> +import org.apache.synapse.config.Entry;
>> >>> +import org.apache.synapse.config.SynapseConfigUtils;
>> >>>  import org.apache.synapse.core.SynapseEnvironment;
>> >>>  import org.apache.synapse.mediators.AbstractMediator;
>> >>> -import org.apache.synapse.config.SynapseConfigUtils;
>> >>> -import org.apache.synapse.config.Entry;
>> >>>  import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
>> >>>  import org.springframework.context.ApplicationContext;
>> >>>  import org.springframework.context.support.GenericApplicationContext;
>> >>> @@ -41,7 +40,7 @@
>> >>>  * refers to a Spring bean name, and also either a Spring
>> >>> configuration
>> >>> defined to Synapse
>> >>>  * or an inlined Spring configuration.
>> >>>  */
>> >>> -public class SpringMediator extends AbstractMediator implements
>> >>> ManagedLifecycle {
>> >>> +public class SpringMediator extends AbstractMediator {
>> >>>
>> >>>     /**
>> >>>      * The Spring bean ref to be used
>> >>>
>> >>> Modified:
>> >>>
>> >>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>> >>> URL:
>> >>>
>> >>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>> >>>
>> >>>
>> >>> ==============================================================================
>> >>> ---
>> >>>
>> >>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>> >>> (original)
>> >>> +++
>> >>>
>> >>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>> >>> Fri Mar 13 07:16:16 2009
>> >>> @@ -19,20 +19,20 @@
>> >>>  package org.apache.synapse.mediators.throttle;
>> >>>
>> >>>  import org.apache.axiom.om.OMElement;
>> >>> +import org.apache.axis2.clustering.ClusterManager;
>> >>> +import org.apache.axis2.clustering.ClusteringFault;
>> >>> +import org.apache.axis2.clustering.context.Replicator;
>> >>> +import org.apache.axis2.context.ConfigurationContext;
>> >>>  import org.apache.neethi.PolicyEngine;
>> >>>  import org.apache.synapse.ManagedLifecycle;
>> >>>  import org.apache.synapse.Mediator;
>> >>>  import org.apache.synapse.MessageContext;
>> >>>  import org.apache.synapse.SynapseLog;
>> >>> -import org.apache.synapse.transport.nhttp.NhttpConstants;
>> >>>  import org.apache.synapse.config.Entry;
>> >>>  import org.apache.synapse.core.SynapseEnvironment;
>> >>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
>> >>>  import org.apache.synapse.mediators.AbstractMediator;
>> >>> -import org.apache.axis2.context.ConfigurationContext;
>> >>> -import org.apache.axis2.clustering.context.Replicator;
>> >>> -import org.apache.axis2.clustering.ClusteringFault;
>> >>> -import org.apache.axis2.clustering.ClusterManager;
>> >>> +import org.apache.synapse.transport.nhttp.NhttpConstants;
>> >>>  import org.wso2.throttle.*;
>> >>>
>> >>>
>> >>> @@ -42,7 +42,7 @@
>> >>>  * Only support IP based throttling- Throotling can manage per IP
>> >>> using
>> >>> the throttle policy
>> >>>  */
>> >>>
>> >>> -public class ThrottleMediator extends AbstractMediator implements
>> >>> ManagedLifecycle {
>> >>> +public class ThrottleMediator extends AbstractMediator {
>> >>>
>> >>>     /* The key for getting the throttling policy - key refers to a/an
>> >>> [registry] entry    */
>> >>>     private String policyKey = null;
>> >>>
>> >>>
>> >>
>> >>
>> >>
>> >> --
>> >> Ruwan Linton
>> >> Senior Software Engineer & Product Manager; WSO2 ESB;
>> >> http://wso2.org/esb
>> >> WSO2 Inc.; http://wso2.org
>> >> email: ruwan@wso2.com; cell: +94 77 341 3097
>> >> blog: http://ruwansblog.blogspot.com
>> >>
>> >
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
>> For additional commands, e-mail: dev-help@synapse.apache.org
>>
>
>
>
> --
> Ruwan Linton
> Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
> WSO2 Inc.; http://wso2.org
> email: ruwan@wso2.com; cell: +94 77 341 3097
> blog: http://ruwansblog.blogspot.com
>

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


Re: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

Posted by Ruwan Linton <ru...@gmail.com>.
On Sat, Mar 14, 2009 at 3:49 PM, Hubert, Eric <Er...@foxmobile.com>wrote:

>   Hi all,
>
>
>
> I agree with Ruwan. Not every mediator has some work to do at
> initialisation (like resource allocation) and wants to do some work before
> shutdown (like freeing resources or other cleanup). An abstract class with
> “implemented methods” without any implementation is always somehow strange.
>
> If someone looks at the Interface ManagedLifeCylce and all implementing
> classes of that interface he should get an overview of all implementations
> having a need to be part of this life cycle for reasons mentioned above. Now
> this list does not reflect this (look at POJOCommandMediator to name only
> one).
>

Exactly.... because of the above explanation of Eric, it is going to be
wrong from the design, if you do this :(

Thanks,
Ruwan


>
>
> I did not get the benefit/reasoning of AbstractMediator implementing this
> interface. AbstractMediator offers functionality which is useful for any
> mediator with and without lifecycle. This is at least my impression.
>
>
>
> Regards,
>
>    Eric
>
>
>   ------------------------------
>
> *From:* Ruwan Linton [mailto:ruwan.linton@gmail.com]
> *Sent:* Saturday, March 14, 2009 3:37 AM
> *To:* dev@synapse.apache.org
> *Su**bject:* Re: svn commit: r753144 - in /synapse/trunk/java/modules:
> core/src/main/java/org/apache/synapse/mediators/builtin/
> core/src/main/java/org/apache/synapse/mediators/db/
> core/src/main/java/org/apache/synapse/mediators/eip/aggregator/
> core/src/main/java/
>
>
>
> I know that the implementation is blank... but isn't it conceptually wrong?
> We had most of the mediators as stateless and now it seems all of them have
> a life cycle because almost all of them are extended from AbstractMediator,
> to get the common functionality.
>
> I think a mediator with a life cycle has to implement the ManagedLifeCycle
> interface and not the AbstractMediator otherwise the design is wrong :-(
> What do others think about this??
>
> Thanks,
> Ruwan
>
> 2009/3/13 indika kumara <in...@gmail.com>
>
> No need to implements as default behavior is doing noting. Only need
> to override if has any special things do to at life cycle event
>
>
> On Fri, Mar 13, 2009 at 11:30 PM, indika kumara <in...@gmail.com>
> wrote:
> > Ruwan
> >
> > I thought any mediators that is an abstract mediator (extend from
> > abstract mediator), has a manageable life. And, any independent
> > mediators (that is not an abstract mediator), only will have a
> > manageable life if he wants and he need to tell that by explicitly
> > implementing interface.
> >
> > Thanks
> > Indika
> >
> > On Fri, Mar 13, 2009 at 10:50 PM, Ruwan Linton <ru...@gmail.com>
> wrote:
> >> Indika,
> >>
> >> Why does AbstractMediator implements the ManagedLifecycle? does this
> means
> >> that all the mediators have init and destroy methods?
> >>
> >> Thanks,
> >> Ruwan
> >>
> >> 2009/3/13 <in...@apache.org>
> >>>
> >>> Author: indika
> >>> Date: Fri Mar 13 07:16:16 2009
> >>> New Revision: 753144
> >>>
> >>> URL: http://svn.apache.org/viewvc?rev=753144&view=rev
> >>> Log:
> >>> remove ManagedLifecycle from mediators that extends AbstractMediator as
> >>> AbstractMediator already implements ManagedLifecycle
> >>>
> >>> Modified:
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -24,7 +24,6 @@
> >>>  import org.apache.axis2.clustering.context.Replicator;
> >>>  import org.apache.axis2.context.ConfigurationContext;
> >>>  import org.apache.axis2.saaj.util.SAAJUtil;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>>  import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseException;
> >>>  import org.apache.synapse.SynapseLog;
> >>> @@ -58,7 +57,7 @@
> >>>  *
> >>>  * @see org.apache.synapse.Mediator
> >>>  */
> >>> -public class CacheMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class CacheMediator extends AbstractMediator {
> >>>
> >>>     private String id = null;
> >>>     private String scope = CachingConstants.SCOPE_PER_HOST;// global
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -23,15 +23,14 @@
> >>>  import org.apache.axiom.om.OMNode;
> >>>  import org.apache.axis2.AxisFault;
> >>>  import org.apache.axis2.Constants;
> >>> -import org.apache.axis2.transport.http.HTTPConstants;
> >>> -import org.apache.axis2.description.Parameter;
> >>>  import org.apache.axis2.addressing.AddressingConstants;
> >>>  import org.apache.axis2.addressing.EndpointReference;
> >>>  import org.apache.axis2.client.Options;
> >>>  import org.apache.axis2.client.ServiceClient;
> >>>  import org.apache.axis2.context.ConfigurationContext;
> >>>  import org.apache.axis2.context.ConfigurationContextFactory;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>> +import org.apache.axis2.description.Parameter;
> >>> +import org.apache.axis2.transport.http.HTTPConstants;
> >>>  import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseException;
> >>>  import org.apache.synapse.SynapseLog;
> >>> @@ -51,7 +50,7 @@
> >>>  *      <target xpath="expression" | key="string"/>
> >>>  * </callout>
> >>>  */
> >>> -public class CalloutMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class CalloutMediator extends AbstractMediator {
> >>>
> >>>     private ServiceClient sc = null;
> >>>     private String serviceURL = null;
> >>> @@ -179,6 +178,7 @@
> >>>         return null;
> >>>     }
> >>>
> >>> +    @Override
> >>>     public void init(SynapseEnvironment synEnv) {
> >>>         try {
> >>>             ConfigurationContext cfgCtx
> >>> @@ -193,6 +193,7 @@
> >>>         }
> >>>     }
> >>>
> >>> +    @Override
> >>>     public void destroy() {
> >>>         try {
> >>>             sc.cleanup();
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -21,7 +21,6 @@
> >>>
> >>>  import org.apache.commons.dbcp.BasicDataSource;
> >>>  import org.apache.commons.dbcp.datasources.PerUserPoolDataSource;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>>  import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseException;
> >>>  import org.apache.synapse.SynapseLog;
> >>> @@ -34,13 +33,15 @@
> >>>  import javax.xml.namespace.QName;
> >>>  import java.math.BigDecimal;
> >>>  import java.sql.*;
> >>> -import java.sql.Date;
> >>> -import java.util.*;
> >>> +import java.util.ArrayList;
> >>> +import java.util.HashMap;
> >>> +import java.util.List;
> >>> +import java.util.Map;
> >>>
> >>>  /**
> >>>  * This abstract DB mediator will perform common DB connection pooling
> >>> etc. for all DB mediators
> >>>  */
> >>> -public abstract class AbstractDBMediator extends AbstractMediator
> >>> implements ManagedLifecycle {
> >>> +public abstract class AbstractDBMediator extends AbstractMediator {
> >>>
> >>>     /** Hold JDBC properties */
> >>>     protected final Map dataSourceProps = new HashMap();
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -23,7 +23,6 @@
> >>>  import org.apache.axiom.soap.SOAP12Constants;
> >>>  import org.apache.commons.logging.Log;
> >>>  import org.apache.commons.logging.LogFactory;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>>  import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseLog;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>> @@ -48,7 +47,7 @@
> >>>  * so that aggregations that never would complete could be timed out
> and
> >>> cleared from memory and
> >>>  * any fault conditions handled
> >>>  */
> >>> -public class AggregateMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class AggregateMediator extends AbstractMediator {
> >>>
> >>>     private static final Log log =
> >>> LogFactory.getLog(AggregateMediator.class);
> >>>
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -19,23 +19,23 @@
> >>>
> >>>  package org.apache.synapse.mediators.eip.splitter;
> >>>
> >>> -import org.apache.synapse.MessageContext;
> >>> +import org.apache.axis2.AxisFault;
> >>> +import org.apache.axis2.Constants;
> >>> +import org.apache.axis2.context.OperationContext;
> >>>  import org.apache.synapse.ManagedLifecycle;
> >>> +import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseLog;
> >>> -import org.apache.synapse.endpoints.Endpoint;
> >>> -import org.apache.synapse.core.axis2.Axis2MessageContext;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>> -import org.apache.synapse.util.MessageHelper;
> >>> +import org.apache.synapse.core.axis2.Axis2MessageContext;
> >>> +import org.apache.synapse.endpoints.Endpoint;
> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >>> -import org.apache.synapse.mediators.eip.Target;
> >>>  import org.apache.synapse.mediators.eip.EIPConstants;
> >>> -import org.apache.axis2.AxisFault;
> >>> -import org.apache.axis2.Constants;
> >>> -import org.apache.axis2.context.OperationContext;
> >>> +import org.apache.synapse.mediators.eip.Target;
> >>> +import org.apache.synapse.util.MessageHelper;
> >>>
> >>>  import java.util.ArrayList;
> >>> -import java.util.List;
> >>>  import java.util.Iterator;
> >>> +import java.util.List;
> >>>
> >>>  /**
> >>>  * This mediator will clone the message into multiple messages and
> mediate
> >>> as specified in the
> >>> @@ -43,7 +43,7 @@
> >>>  * specifies an Action and/or To address to be set to the cloned
> message.
> >>> The number of cloned
> >>>  * messages created is the number of targets specified
> >>>  */
> >>> -public class CloneMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class CloneMediator extends AbstractMediator {
> >>>
> >>>     /**
> >>>      * Continue processing the parent message or not?
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -28,9 +28,9 @@
> >>>  import org.apache.synapse.ManagedLifecycle;
> >>>  import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseLog;
> >>> -import org.apache.synapse.endpoints.Endpoint;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
> >>> +import org.apache.synapse.endpoints.Endpoint;
> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >>>  import org.apache.synapse.mediators.eip.EIPConstants;
> >>>  import org.apache.synapse.mediators.eip.EIPUtils;
> >>> @@ -47,7 +47,7 @@
> >>>  * each resulting element. This is very much similar to the clone
> >>> mediator, and
> >>>  * hands over the newly created messages to a target for processing
> >>>  */
> >>> -public class IterateMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class IterateMediator extends AbstractMediator {
> >>>
> >>>     /** Continue mediation on the parent message or not? */
> >>>     private boolean continueParent = false;
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -19,11 +19,7 @@
> >>>
> >>>  package org.apache.synapse.mediators.ext;
> >>>
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>> -import org.apache.synapse.Mediator;
> >>> -import org.apache.synapse.MessageContext;
> >>> -import org.apache.synapse.SynapseException;
> >>> -import org.apache.synapse.SynapseLog;
> >>> +import org.apache.synapse.*;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >>>
> >>> @@ -41,7 +37,7 @@
> >>>  *
> >>>  * @see Mediator
> >>>  */
> >>> -public class ClassMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class ClassMediator extends AbstractMediator {
> >>>
> >>>     /** The reference to the actual class that implments the Mediator
> >>> interface */
> >>>     private Mediator mediator = null;
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -36,7 +36,7 @@
> >>>  * the given list of cases. This is actually a list of sequences, and
> >>> depending on the
> >>>  * selected case, the selected sequence gets executed.
> >>>  */
> >>> -public class SwitchMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class SwitchMediator extends AbstractMediator {
> >>>
> >>>     /** The XPath expression specifying the source element to apply the
> >>> switch case expressions against   */
> >>>     private SynapseXPath source = null;
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -1,21 +1,20 @@
> >>>  package org.apache.synapse.mediators.eip;
> >>>
> >>> -import org.apache.synapse.mediators.AbstractMediator;
> >>> -import org.apache.synapse.MessageContext;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>> -import org.apache.synapse.core.SynapseEnvironment;
> >>> -import org.apache.axiom.soap.SOAPEnvelope;
> >>>  import org.apache.axiom.om.OMAbstractFactory;
> >>> +import org.apache.axiom.soap.SOAPEnvelope;
> >>>  import org.apache.axis2.AxisFault;
> >>> +import org.apache.synapse.MessageContext;
> >>> +import org.apache.synapse.core.SynapseEnvironment;
> >>> +import org.apache.synapse.mediators.AbstractMediator;
> >>>
> >>> -import java.util.List;
> >>>  import java.util.ArrayList;
> >>> +import java.util.List;
> >>>
> >>>  /**
> >>>  * Created by IntelliJ IDEA. User: ruwan Date: Oct 3, 2007 Time:
> 7:26:09
> >>> AM To change this template
> >>>  * use File | Settings | File Templates.
> >>>  */
> >>> -public class SplitTestHelperMediator extends AbstractMediator
> implements
> >>> ManagedLifecycle {
> >>> +public class SplitTestHelperMediator extends AbstractMediator {
> >>>
> >>>     private List mediatedContext = new ArrayList();
> >>>     int msgcount;
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -20,8 +20,6 @@
> >>>  package org.apache.synapse.mediators.ext;
> >>>
> >>>  import org.apache.synapse.MessageContext;
> >>> -import org.apache.synapse.Mediator;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >>>
> >>> @@ -30,7 +28,7 @@
> >>>  * use a static member variable just to test this.. This class is not
> >>> nice.. :-)
> >>>  * but does what is expected... :-(
> >>>  */
> >>> -public class ClassMediatorTestMediator extends AbstractMediator
> >>> implements ManagedLifecycle {
> >>> +public class ClassMediatorTestMediator extends AbstractMediator {
> >>>
> >>>     public static boolean invoked = false;
> >>>     public static boolean initialized = false;
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -19,15 +19,14 @@
> >>>
> >>>  package org.apache.synapse.mediators.spring;
> >>>
> >>> -import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.Mediator;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>> +import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseException;
> >>>  import org.apache.synapse.SynapseLog;
> >>> +import org.apache.synapse.config.Entry;
> >>> +import org.apache.synapse.config.SynapseConfigUtils;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >>> -import org.apache.synapse.config.SynapseConfigUtils;
> >>> -import org.apache.synapse.config.Entry;
> >>>  import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
> >>>  import org.springframework.context.ApplicationContext;
> >>>  import org.springframework.context.support.GenericApplicationContext;
> >>> @@ -41,7 +40,7 @@
> >>>  * refers to a Spring bean name, and also either a Spring configuration
> >>> defined to Synapse
> >>>  * or an inlined Spring configuration.
> >>>  */
> >>> -public class SpringMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class SpringMediator extends AbstractMediator {
> >>>
> >>>     /**
> >>>      * The Spring bean ref to be used
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -19,20 +19,20 @@
> >>>  package org.apache.synapse.mediators.throttle;
> >>>
> >>>  import org.apache.axiom.om.OMElement;
> >>> +import org.apache.axis2.clustering.ClusterManager;
> >>> +import org.apache.axis2.clustering.ClusteringFault;
> >>> +import org.apache.axis2.clustering.context.Replicator;
> >>> +import org.apache.axis2.context.ConfigurationContext;
> >>>  import org.apache.neethi.PolicyEngine;
> >>>  import org.apache.synapse.ManagedLifecycle;
> >>>  import org.apache.synapse.Mediator;
> >>>  import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseLog;
> >>> -import org.apache.synapse.transport.nhttp.NhttpConstants;
> >>>  import org.apache.synapse.config.Entry;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >>> -import org.apache.axis2.context.ConfigurationContext;
> >>> -import org.apache.axis2.clustering.context.Replicator;
> >>> -import org.apache.axis2.clustering.ClusteringFault;
> >>> -import org.apache.axis2.clustering.ClusterManager;
> >>> +import org.apache.synapse.transport.nhttp.NhttpConstants;
> >>>  import org.wso2.throttle.*;
> >>>
> >>>
> >>> @@ -42,7 +42,7 @@
> >>>  * Only support IP based throttling- Throotling can manage per IP using
> >>> the throttle policy
> >>>  */
> >>>
> >>> -public class ThrottleMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class ThrottleMediator extends AbstractMediator {
> >>>
> >>>     /* The key for getting the throttling policy - key refers to a/an
> >>> [registry] entry    */
> >>>     private String policyKey = null;
> >>>
> >>>
> >>
> >>
> >>
> >> --
> >> Ruwan Linton
> >> Senior Software Engineer & Product Manager; WSO2 ESB;
> http://wso2.org/esb
> >> WSO2 Inc.; http://wso2.org
> >> email: ruwan@wso2.com; cell: +94 77 341 3097
> >> blog: http://ruwansblog.blogspot.com
> >>
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
> For additional commands, e-mail: dev-help@synapse.apache.org
>
>
>
>
> --
> Ruwan Linton
> Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
> WSO2 Inc.; http://wso2.org
> email: ruwan@wso2.com; cell: +94 77 341 3097
> blog: http://ruwansblog.blogspot.com
>



-- 
Ruwan Linton
Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
WSO2 Inc.; http://wso2.org
email: ruwan@wso2.com; cell: +94 77 341 3097
blog: http://ruwansblog.blogspot.com

RE: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

Posted by "Hubert, Eric" <Er...@foxmobile.com>.
Hi all,

 

I agree with Ruwan. Not every mediator has some work to do at initialisation (like resource allocation) and wants to do some work before shutdown (like freeing resources or other cleanup). An abstract class with “implemented methods” without any implementation is always somehow strange. 

If someone looks at the Interface ManagedLifeCylce and all implementing classes of that interface he should get an overview of all implementations having a need to be part of this life cycle for reasons mentioned above. Now this list does not reflect this (look at POJOCommandMediator to name only one). 

 

I did not get the benefit/reasoning of AbstractMediator implementing this interface. AbstractMediator offers functionality which is useful for any mediator with and without lifecycle. This is at least my impression. 

 

Regards,

   Eric

 

________________________________

From: Ruwan Linton [mailto:ruwan.linton@gmail.com] 
Sent: Saturday, March 14, 2009 3:37 AM
To: dev@synapse.apache.org
Subject: Re: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

 

I know that the implementation is blank... but isn't it conceptually wrong? We had most of the mediators as stateless and now it seems all of them have a life cycle because almost all of them are extended from AbstractMediator, to get the common functionality.

I think a mediator with a life cycle has to implement the ManagedLifeCycle interface and not the AbstractMediator otherwise the design is wrong :-( What do others think about this??

Thanks,
Ruwan

2009/3/13 indika kumara <in...@gmail.com>

No need to implements as default behavior is doing noting. Only need
to override if has any special things do to at life cycle event


On Fri, Mar 13, 2009 at 11:30 PM, indika kumara <in...@gmail.com> wrote:
> Ruwan
>
> I thought any mediators that is an abstract mediator (extend from
> abstract mediator), has a manageable life. And, any independent
> mediators (that is not an abstract mediator), only will have a
> manageable life if he wants and he need to tell that by explicitly
> implementing interface.
>
> Thanks
> Indika
>
> On Fri, Mar 13, 2009 at 10:50 PM, Ruwan Linton <ru...@gmail.com> wrote:
>> Indika,
>>
>> Why does AbstractMediator implements the ManagedLifecycle? does this means
>> that all the mediators have init and destroy methods?
>>
>> Thanks,
>> Ruwan
>>
>> 2009/3/13 <in...@apache.org>
>>>
>>> Author: indika
>>> Date: Fri Mar 13 07:16:16 2009
>>> New Revision: 753144
>>>
>>> URL: http://svn.apache.org/viewvc?rev=753144&view=rev
>>> Log:
>>> remove ManagedLifecycle from mediators that extends AbstractMediator as
>>> AbstractMediator already implements ManagedLifecycle
>>>
>>> Modified:
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>>>
>>>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>>>
>>>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -24,7 +24,6 @@
>>>  import org.apache.axis2.clustering.context.Replicator;
>>>  import org.apache.axis2.context.ConfigurationContext;
>>>  import org.apache.axis2.saaj.util.SAAJUtil;
>>> -import org.apache.synapse.ManagedLifecycle;
>>>  import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseException;
>>>  import org.apache.synapse.SynapseLog;
>>> @@ -58,7 +57,7 @@
>>>  *
>>>  * @see org.apache.synapse.Mediator
>>>  */
>>> -public class CacheMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class CacheMediator extends AbstractMediator {
>>>
>>>     private String id = null;
>>>     private String scope = CachingConstants.SCOPE_PER_HOST;// global
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -23,15 +23,14 @@
>>>  import org.apache.axiom.om.OMNode;
>>>  import org.apache.axis2.AxisFault;
>>>  import org.apache.axis2.Constants;
>>> -import org.apache.axis2.transport.http.HTTPConstants;
>>> -import org.apache.axis2.description.Parameter;
>>>  import org.apache.axis2.addressing.AddressingConstants;
>>>  import org.apache.axis2.addressing.EndpointReference;
>>>  import org.apache.axis2.client.Options;
>>>  import org.apache.axis2.client.ServiceClient;
>>>  import org.apache.axis2.context.ConfigurationContext;
>>>  import org.apache.axis2.context.ConfigurationContextFactory;
>>> -import org.apache.synapse.ManagedLifecycle;
>>> +import org.apache.axis2.description.Parameter;
>>> +import org.apache.axis2.transport.http.HTTPConstants;
>>>  import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseException;
>>>  import org.apache.synapse.SynapseLog;
>>> @@ -51,7 +50,7 @@
>>>  *      <target xpath="expression" | key="string"/>
>>>  * </callout>
>>>  */
>>> -public class CalloutMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class CalloutMediator extends AbstractMediator {
>>>
>>>     private ServiceClient sc = null;
>>>     private String serviceURL = null;
>>> @@ -179,6 +178,7 @@
>>>         return null;
>>>     }
>>>
>>> +    @Override
>>>     public void init(SynapseEnvironment synEnv) {
>>>         try {
>>>             ConfigurationContext cfgCtx
>>> @@ -193,6 +193,7 @@
>>>         }
>>>     }
>>>
>>> +    @Override
>>>     public void destroy() {
>>>         try {
>>>             sc.cleanup();
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -21,7 +21,6 @@
>>>
>>>  import org.apache.commons.dbcp.BasicDataSource;
>>>  import org.apache.commons.dbcp.datasources.PerUserPoolDataSource;
>>> -import org.apache.synapse.ManagedLifecycle;
>>>  import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseException;
>>>  import org.apache.synapse.SynapseLog;
>>> @@ -34,13 +33,15 @@
>>>  import javax.xml.namespace.QName;
>>>  import java.math.BigDecimal;
>>>  import java.sql.*;
>>> -import java.sql.Date;
>>> -import java.util.*;
>>> +import java.util.ArrayList;
>>> +import java.util.HashMap;
>>> +import java.util.List;
>>> +import java.util.Map;
>>>
>>>  /**
>>>  * This abstract DB mediator will perform common DB connection pooling
>>> etc. for all DB mediators
>>>  */
>>> -public abstract class AbstractDBMediator extends AbstractMediator
>>> implements ManagedLifecycle {
>>> +public abstract class AbstractDBMediator extends AbstractMediator {
>>>
>>>     /** Hold JDBC properties */
>>>     protected final Map dataSourceProps = new HashMap();
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -23,7 +23,6 @@
>>>  import org.apache.axiom.soap.SOAP12Constants;
>>>  import org.apache.commons.logging.Log;
>>>  import org.apache.commons.logging.LogFactory;
>>> -import org.apache.synapse.ManagedLifecycle;
>>>  import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseLog;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>> @@ -48,7 +47,7 @@
>>>  * so that aggregations that never would complete could be timed out and
>>> cleared from memory and
>>>  * any fault conditions handled
>>>  */
>>> -public class AggregateMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class AggregateMediator extends AbstractMediator {
>>>
>>>     private static final Log log =
>>> LogFactory.getLog(AggregateMediator.class);
>>>
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -19,23 +19,23 @@
>>>
>>>  package org.apache.synapse.mediators.eip.splitter;
>>>
>>> -import org.apache.synapse.MessageContext;
>>> +import org.apache.axis2.AxisFault;
>>> +import org.apache.axis2.Constants;
>>> +import org.apache.axis2.context.OperationContext;
>>>  import org.apache.synapse.ManagedLifecycle;
>>> +import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseLog;
>>> -import org.apache.synapse.endpoints.Endpoint;
>>> -import org.apache.synapse.core.axis2.Axis2MessageContext;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>> -import org.apache.synapse.util.MessageHelper;
>>> +import org.apache.synapse.core.axis2.Axis2MessageContext;
>>> +import org.apache.synapse.endpoints.Endpoint;
>>>  import org.apache.synapse.mediators.AbstractMediator;
>>> -import org.apache.synapse.mediators.eip.Target;
>>>  import org.apache.synapse.mediators.eip.EIPConstants;
>>> -import org.apache.axis2.AxisFault;
>>> -import org.apache.axis2.Constants;
>>> -import org.apache.axis2.context.OperationContext;
>>> +import org.apache.synapse.mediators.eip.Target;
>>> +import org.apache.synapse.util.MessageHelper;
>>>
>>>  import java.util.ArrayList;
>>> -import java.util.List;
>>>  import java.util.Iterator;
>>> +import java.util.List;
>>>
>>>  /**
>>>  * This mediator will clone the message into multiple messages and mediate
>>> as specified in the
>>> @@ -43,7 +43,7 @@
>>>  * specifies an Action and/or To address to be set to the cloned message.
>>> The number of cloned
>>>  * messages created is the number of targets specified
>>>  */
>>> -public class CloneMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class CloneMediator extends AbstractMediator {
>>>
>>>     /**
>>>      * Continue processing the parent message or not?
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -28,9 +28,9 @@
>>>  import org.apache.synapse.ManagedLifecycle;
>>>  import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseLog;
>>> -import org.apache.synapse.endpoints.Endpoint;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
>>> +import org.apache.synapse.endpoints.Endpoint;
>>>  import org.apache.synapse.mediators.AbstractMediator;
>>>  import org.apache.synapse.mediators.eip.EIPConstants;
>>>  import org.apache.synapse.mediators.eip.EIPUtils;
>>> @@ -47,7 +47,7 @@
>>>  * each resulting element. This is very much similar to the clone
>>> mediator, and
>>>  * hands over the newly created messages to a target for processing
>>>  */
>>> -public class IterateMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class IterateMediator extends AbstractMediator {
>>>
>>>     /** Continue mediation on the parent message or not? */
>>>     private boolean continueParent = false;
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -19,11 +19,7 @@
>>>
>>>  package org.apache.synapse.mediators.ext;
>>>
>>> -import org.apache.synapse.ManagedLifecycle;
>>> -import org.apache.synapse.Mediator;
>>> -import org.apache.synapse.MessageContext;
>>> -import org.apache.synapse.SynapseException;
>>> -import org.apache.synapse.SynapseLog;
>>> +import org.apache.synapse.*;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>>  import org.apache.synapse.mediators.AbstractMediator;
>>>
>>> @@ -41,7 +37,7 @@
>>>  *
>>>  * @see Mediator
>>>  */
>>> -public class ClassMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class ClassMediator extends AbstractMediator {
>>>
>>>     /** The reference to the actual class that implments the Mediator
>>> interface */
>>>     private Mediator mediator = null;
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -36,7 +36,7 @@
>>>  * the given list of cases. This is actually a list of sequences, and
>>> depending on the
>>>  * selected case, the selected sequence gets executed.
>>>  */
>>> -public class SwitchMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class SwitchMediator extends AbstractMediator {
>>>
>>>     /** The XPath expression specifying the source element to apply the
>>> switch case expressions against   */
>>>     private SynapseXPath source = null;
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -1,21 +1,20 @@
>>>  package org.apache.synapse.mediators.eip;
>>>
>>> -import org.apache.synapse.mediators.AbstractMediator;
>>> -import org.apache.synapse.MessageContext;
>>> -import org.apache.synapse.ManagedLifecycle;
>>> -import org.apache.synapse.core.SynapseEnvironment;
>>> -import org.apache.axiom.soap.SOAPEnvelope;
>>>  import org.apache.axiom.om.OMAbstractFactory;
>>> +import org.apache.axiom.soap.SOAPEnvelope;
>>>  import org.apache.axis2.AxisFault;
>>> +import org.apache.synapse.MessageContext;
>>> +import org.apache.synapse.core.SynapseEnvironment;
>>> +import org.apache.synapse.mediators.AbstractMediator;
>>>
>>> -import java.util.List;
>>>  import java.util.ArrayList;
>>> +import java.util.List;
>>>
>>>  /**
>>>  * Created by IntelliJ IDEA. User: ruwan Date: Oct 3, 2007 Time: 7:26:09
>>> AM To change this template
>>>  * use File | Settings | File Templates.
>>>  */
>>> -public class SplitTestHelperMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class SplitTestHelperMediator extends AbstractMediator {
>>>
>>>     private List mediatedContext = new ArrayList();
>>>     int msgcount;
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -20,8 +20,6 @@
>>>  package org.apache.synapse.mediators.ext;
>>>
>>>  import org.apache.synapse.MessageContext;
>>> -import org.apache.synapse.Mediator;
>>> -import org.apache.synapse.ManagedLifecycle;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>>  import org.apache.synapse.mediators.AbstractMediator;
>>>
>>> @@ -30,7 +28,7 @@
>>>  * use a static member variable just to test this.. This class is not
>>> nice.. :-)
>>>  * but does what is expected... :-(
>>>  */
>>> -public class ClassMediatorTestMediator extends AbstractMediator
>>> implements ManagedLifecycle {
>>> +public class ClassMediatorTestMediator extends AbstractMediator {
>>>
>>>     public static boolean invoked = false;
>>>     public static boolean initialized = false;
>>>
>>> Modified:
>>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -19,15 +19,14 @@
>>>
>>>  package org.apache.synapse.mediators.spring;
>>>
>>> -import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.Mediator;
>>> -import org.apache.synapse.ManagedLifecycle;
>>> +import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseException;
>>>  import org.apache.synapse.SynapseLog;
>>> +import org.apache.synapse.config.Entry;
>>> +import org.apache.synapse.config.SynapseConfigUtils;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>>  import org.apache.synapse.mediators.AbstractMediator;
>>> -import org.apache.synapse.config.SynapseConfigUtils;
>>> -import org.apache.synapse.config.Entry;
>>>  import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
>>>  import org.springframework.context.ApplicationContext;
>>>  import org.springframework.context.support.GenericApplicationContext;
>>> @@ -41,7 +40,7 @@
>>>  * refers to a Spring bean name, and also either a Spring configuration
>>> defined to Synapse
>>>  * or an inlined Spring configuration.
>>>  */
>>> -public class SpringMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class SpringMediator extends AbstractMediator {
>>>
>>>     /**
>>>      * The Spring bean ref to be used
>>>
>>> Modified:
>>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -19,20 +19,20 @@
>>>  package org.apache.synapse.mediators.throttle;
>>>
>>>  import org.apache.axiom.om.OMElement;
>>> +import org.apache.axis2.clustering.ClusterManager;
>>> +import org.apache.axis2.clustering.ClusteringFault;
>>> +import org.apache.axis2.clustering.context.Replicator;
>>> +import org.apache.axis2.context.ConfigurationContext;
>>>  import org.apache.neethi.PolicyEngine;
>>>  import org.apache.synapse.ManagedLifecycle;
>>>  import org.apache.synapse.Mediator;
>>>  import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseLog;
>>> -import org.apache.synapse.transport.nhttp.NhttpConstants;
>>>  import org.apache.synapse.config.Entry;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
>>>  import org.apache.synapse.mediators.AbstractMediator;
>>> -import org.apache.axis2.context.ConfigurationContext;
>>> -import org.apache.axis2.clustering.context.Replicator;
>>> -import org.apache.axis2.clustering.ClusteringFault;
>>> -import org.apache.axis2.clustering.ClusterManager;
>>> +import org.apache.synapse.transport.nhttp.NhttpConstants;
>>>  import org.wso2.throttle.*;
>>>
>>>
>>> @@ -42,7 +42,7 @@
>>>  * Only support IP based throttling- Throotling can manage per IP using
>>> the throttle policy
>>>  */
>>>
>>> -public class ThrottleMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class ThrottleMediator extends AbstractMediator {
>>>
>>>     /* The key for getting the throttling policy - key refers to a/an
>>> [registry] entry    */
>>>     private String policyKey = null;
>>>
>>>
>>
>>
>>
>> --
>> Ruwan Linton
>> Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
>> WSO2 Inc.; http://wso2.org
>> email: ruwan@wso2.com; cell: +94 77 341 3097
>> blog: http://ruwansblog.blogspot.com
>>
>

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




-- 
Ruwan Linton
Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
WSO2 Inc.; http://wso2.org
email: ruwan@wso2.com; cell: +94 77 341 3097
blog: http://ruwansblog.blogspot.com 


Re: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

Posted by Ruwan Linton <ru...@gmail.com>.
I know that the implementation is blank... but isn't it conceptually wrong?
We had most of the mediators as stateless and now it seems all of them have
a life cycle because almost all of them are extended from AbstractMediator,
to get the common functionality.

I think a mediator with a life cycle has to implement the ManagedLifeCycle
interface and not the AbstractMediator otherwise the design is wrong :-(
What do others think about this??

Thanks,
Ruwan

2009/3/13 indika kumara <in...@gmail.com>

> No need to implements as default behavior is doing noting. Only need
> to override if has any special things do to at life cycle event
>
> On Fri, Mar 13, 2009 at 11:30 PM, indika kumara <in...@gmail.com>
> wrote:
> > Ruwan
> >
> > I thought any mediators that is an abstract mediator (extend from
> > abstract mediator), has a manageable life. And, any independent
> > mediators (that is not an abstract mediator), only will have a
> > manageable life if he wants and he need to tell that by explicitly
> > implementing interface.
> >
> > Thanks
> > Indika
> >
> > On Fri, Mar 13, 2009 at 10:50 PM, Ruwan Linton <ru...@gmail.com>
> wrote:
> >> Indika,
> >>
> >> Why does AbstractMediator implements the ManagedLifecycle? does this
> means
> >> that all the mediators have init and destroy methods?
> >>
> >> Thanks,
> >> Ruwan
> >>
> >> 2009/3/13 <in...@apache.org>
> >>>
> >>> Author: indika
> >>> Date: Fri Mar 13 07:16:16 2009
> >>> New Revision: 753144
> >>>
> >>> URL: http://svn.apache.org/viewvc?rev=753144&view=rev
> >>> Log:
> >>> remove ManagedLifecycle from mediators that extends AbstractMediator as
> >>> AbstractMediator already implements ManagedLifecycle
> >>>
> >>> Modified:
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> >>>
> >>>
>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -24,7 +24,6 @@
> >>>  import org.apache.axis2.clustering.context.Replicator;
> >>>  import org.apache.axis2.context.ConfigurationContext;
> >>>  import org.apache.axis2.saaj.util.SAAJUtil;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>>  import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseException;
> >>>  import org.apache.synapse.SynapseLog;
> >>> @@ -58,7 +57,7 @@
> >>>  *
> >>>  * @see org.apache.synapse.Mediator
> >>>  */
> >>> -public class CacheMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class CacheMediator extends AbstractMediator {
> >>>
> >>>     private String id = null;
> >>>     private String scope = CachingConstants.SCOPE_PER_HOST;// global
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -23,15 +23,14 @@
> >>>  import org.apache.axiom.om.OMNode;
> >>>  import org.apache.axis2.AxisFault;
> >>>  import org.apache.axis2.Constants;
> >>> -import org.apache.axis2.transport.http.HTTPConstants;
> >>> -import org.apache.axis2.description.Parameter;
> >>>  import org.apache.axis2.addressing.AddressingConstants;
> >>>  import org.apache.axis2.addressing.EndpointReference;
> >>>  import org.apache.axis2.client.Options;
> >>>  import org.apache.axis2.client.ServiceClient;
> >>>  import org.apache.axis2.context.ConfigurationContext;
> >>>  import org.apache.axis2.context.ConfigurationContextFactory;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>> +import org.apache.axis2.description.Parameter;
> >>> +import org.apache.axis2.transport.http.HTTPConstants;
> >>>  import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseException;
> >>>  import org.apache.synapse.SynapseLog;
> >>> @@ -51,7 +50,7 @@
> >>>  *      <target xpath="expression" | key="string"/>
> >>>  * </callout>
> >>>  */
> >>> -public class CalloutMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class CalloutMediator extends AbstractMediator {
> >>>
> >>>     private ServiceClient sc = null;
> >>>     private String serviceURL = null;
> >>> @@ -179,6 +178,7 @@
> >>>         return null;
> >>>     }
> >>>
> >>> +    @Override
> >>>     public void init(SynapseEnvironment synEnv) {
> >>>         try {
> >>>             ConfigurationContext cfgCtx
> >>> @@ -193,6 +193,7 @@
> >>>         }
> >>>     }
> >>>
> >>> +    @Override
> >>>     public void destroy() {
> >>>         try {
> >>>             sc.cleanup();
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -21,7 +21,6 @@
> >>>
> >>>  import org.apache.commons.dbcp.BasicDataSource;
> >>>  import org.apache.commons.dbcp.datasources.PerUserPoolDataSource;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>>  import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseException;
> >>>  import org.apache.synapse.SynapseLog;
> >>> @@ -34,13 +33,15 @@
> >>>  import javax.xml.namespace.QName;
> >>>  import java.math.BigDecimal;
> >>>  import java.sql.*;
> >>> -import java.sql.Date;
> >>> -import java.util.*;
> >>> +import java.util.ArrayList;
> >>> +import java.util.HashMap;
> >>> +import java.util.List;
> >>> +import java.util.Map;
> >>>
> >>>  /**
> >>>  * This abstract DB mediator will perform common DB connection pooling
> >>> etc. for all DB mediators
> >>>  */
> >>> -public abstract class AbstractDBMediator extends AbstractMediator
> >>> implements ManagedLifecycle {
> >>> +public abstract class AbstractDBMediator extends AbstractMediator {
> >>>
> >>>     /** Hold JDBC properties */
> >>>     protected final Map dataSourceProps = new HashMap();
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -23,7 +23,6 @@
> >>>  import org.apache.axiom.soap.SOAP12Constants;
> >>>  import org.apache.commons.logging.Log;
> >>>  import org.apache.commons.logging.LogFactory;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>>  import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseLog;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>> @@ -48,7 +47,7 @@
> >>>  * so that aggregations that never would complete could be timed out
> and
> >>> cleared from memory and
> >>>  * any fault conditions handled
> >>>  */
> >>> -public class AggregateMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class AggregateMediator extends AbstractMediator {
> >>>
> >>>     private static final Log log =
> >>> LogFactory.getLog(AggregateMediator.class);
> >>>
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -19,23 +19,23 @@
> >>>
> >>>  package org.apache.synapse.mediators.eip.splitter;
> >>>
> >>> -import org.apache.synapse.MessageContext;
> >>> +import org.apache.axis2.AxisFault;
> >>> +import org.apache.axis2.Constants;
> >>> +import org.apache.axis2.context.OperationContext;
> >>>  import org.apache.synapse.ManagedLifecycle;
> >>> +import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseLog;
> >>> -import org.apache.synapse.endpoints.Endpoint;
> >>> -import org.apache.synapse.core.axis2.Axis2MessageContext;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>> -import org.apache.synapse.util.MessageHelper;
> >>> +import org.apache.synapse.core.axis2.Axis2MessageContext;
> >>> +import org.apache.synapse.endpoints.Endpoint;
> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >>> -import org.apache.synapse.mediators.eip.Target;
> >>>  import org.apache.synapse.mediators.eip.EIPConstants;
> >>> -import org.apache.axis2.AxisFault;
> >>> -import org.apache.axis2.Constants;
> >>> -import org.apache.axis2.context.OperationContext;
> >>> +import org.apache.synapse.mediators.eip.Target;
> >>> +import org.apache.synapse.util.MessageHelper;
> >>>
> >>>  import java.util.ArrayList;
> >>> -import java.util.List;
> >>>  import java.util.Iterator;
> >>> +import java.util.List;
> >>>
> >>>  /**
> >>>  * This mediator will clone the message into multiple messages and
> mediate
> >>> as specified in the
> >>> @@ -43,7 +43,7 @@
> >>>  * specifies an Action and/or To address to be set to the cloned
> message.
> >>> The number of cloned
> >>>  * messages created is the number of targets specified
> >>>  */
> >>> -public class CloneMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class CloneMediator extends AbstractMediator {
> >>>
> >>>     /**
> >>>      * Continue processing the parent message or not?
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -28,9 +28,9 @@
> >>>  import org.apache.synapse.ManagedLifecycle;
> >>>  import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseLog;
> >>> -import org.apache.synapse.endpoints.Endpoint;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
> >>> +import org.apache.synapse.endpoints.Endpoint;
> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >>>  import org.apache.synapse.mediators.eip.EIPConstants;
> >>>  import org.apache.synapse.mediators.eip.EIPUtils;
> >>> @@ -47,7 +47,7 @@
> >>>  * each resulting element. This is very much similar to the clone
> >>> mediator, and
> >>>  * hands over the newly created messages to a target for processing
> >>>  */
> >>> -public class IterateMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class IterateMediator extends AbstractMediator {
> >>>
> >>>     /** Continue mediation on the parent message or not? */
> >>>     private boolean continueParent = false;
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -19,11 +19,7 @@
> >>>
> >>>  package org.apache.synapse.mediators.ext;
> >>>
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>> -import org.apache.synapse.Mediator;
> >>> -import org.apache.synapse.MessageContext;
> >>> -import org.apache.synapse.SynapseException;
> >>> -import org.apache.synapse.SynapseLog;
> >>> +import org.apache.synapse.*;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >>>
> >>> @@ -41,7 +37,7 @@
> >>>  *
> >>>  * @see Mediator
> >>>  */
> >>> -public class ClassMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class ClassMediator extends AbstractMediator {
> >>>
> >>>     /** The reference to the actual class that implments the Mediator
> >>> interface */
> >>>     private Mediator mediator = null;
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -36,7 +36,7 @@
> >>>  * the given list of cases. This is actually a list of sequences, and
> >>> depending on the
> >>>  * selected case, the selected sequence gets executed.
> >>>  */
> >>> -public class SwitchMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class SwitchMediator extends AbstractMediator {
> >>>
> >>>     /** The XPath expression specifying the source element to apply the
> >>> switch case expressions against   */
> >>>     private SynapseXPath source = null;
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -1,21 +1,20 @@
> >>>  package org.apache.synapse.mediators.eip;
> >>>
> >>> -import org.apache.synapse.mediators.AbstractMediator;
> >>> -import org.apache.synapse.MessageContext;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>> -import org.apache.synapse.core.SynapseEnvironment;
> >>> -import org.apache.axiom.soap.SOAPEnvelope;
> >>>  import org.apache.axiom.om.OMAbstractFactory;
> >>> +import org.apache.axiom.soap.SOAPEnvelope;
> >>>  import org.apache.axis2.AxisFault;
> >>> +import org.apache.synapse.MessageContext;
> >>> +import org.apache.synapse.core.SynapseEnvironment;
> >>> +import org.apache.synapse.mediators.AbstractMediator;
> >>>
> >>> -import java.util.List;
> >>>  import java.util.ArrayList;
> >>> +import java.util.List;
> >>>
> >>>  /**
> >>>  * Created by IntelliJ IDEA. User: ruwan Date: Oct 3, 2007 Time:
> 7:26:09
> >>> AM To change this template
> >>>  * use File | Settings | File Templates.
> >>>  */
> >>> -public class SplitTestHelperMediator extends AbstractMediator
> implements
> >>> ManagedLifecycle {
> >>> +public class SplitTestHelperMediator extends AbstractMediator {
> >>>
> >>>     private List mediatedContext = new ArrayList();
> >>>     int msgcount;
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -20,8 +20,6 @@
> >>>  package org.apache.synapse.mediators.ext;
> >>>
> >>>  import org.apache.synapse.MessageContext;
> >>> -import org.apache.synapse.Mediator;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >>>
> >>> @@ -30,7 +28,7 @@
> >>>  * use a static member variable just to test this.. This class is not
> >>> nice.. :-)
> >>>  * but does what is expected... :-(
> >>>  */
> >>> -public class ClassMediatorTestMediator extends AbstractMediator
> >>> implements ManagedLifecycle {
> >>> +public class ClassMediatorTestMediator extends AbstractMediator {
> >>>
> >>>     public static boolean invoked = false;
> >>>     public static boolean initialized = false;
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -19,15 +19,14 @@
> >>>
> >>>  package org.apache.synapse.mediators.spring;
> >>>
> >>> -import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.Mediator;
> >>> -import org.apache.synapse.ManagedLifecycle;
> >>> +import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseException;
> >>>  import org.apache.synapse.SynapseLog;
> >>> +import org.apache.synapse.config.Entry;
> >>> +import org.apache.synapse.config.SynapseConfigUtils;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >>> -import org.apache.synapse.config.SynapseConfigUtils;
> >>> -import org.apache.synapse.config.Entry;
> >>>  import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
> >>>  import org.springframework.context.ApplicationContext;
> >>>  import org.springframework.context.support.GenericApplicationContext;
> >>> @@ -41,7 +40,7 @@
> >>>  * refers to a Spring bean name, and also either a Spring configuration
> >>> defined to Synapse
> >>>  * or an inlined Spring configuration.
> >>>  */
> >>> -public class SpringMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class SpringMediator extends AbstractMediator {
> >>>
> >>>     /**
> >>>      * The Spring bean ref to be used
> >>>
> >>> Modified:
> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> >>> URL:
> >>>
> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java?rev=753144&r1=753143&r2=753144&view=diff
> >>>
> >>>
> ==============================================================================
> >>> ---
> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> >>> (original)
> >>> +++
> >>>
> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
> >>> Fri Mar 13 07:16:16 2009
> >>> @@ -19,20 +19,20 @@
> >>>  package org.apache.synapse.mediators.throttle;
> >>>
> >>>  import org.apache.axiom.om.OMElement;
> >>> +import org.apache.axis2.clustering.ClusterManager;
> >>> +import org.apache.axis2.clustering.ClusteringFault;
> >>> +import org.apache.axis2.clustering.context.Replicator;
> >>> +import org.apache.axis2.context.ConfigurationContext;
> >>>  import org.apache.neethi.PolicyEngine;
> >>>  import org.apache.synapse.ManagedLifecycle;
> >>>  import org.apache.synapse.Mediator;
> >>>  import org.apache.synapse.MessageContext;
> >>>  import org.apache.synapse.SynapseLog;
> >>> -import org.apache.synapse.transport.nhttp.NhttpConstants;
> >>>  import org.apache.synapse.config.Entry;
> >>>  import org.apache.synapse.core.SynapseEnvironment;
> >>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
> >>>  import org.apache.synapse.mediators.AbstractMediator;
> >>> -import org.apache.axis2.context.ConfigurationContext;
> >>> -import org.apache.axis2.clustering.context.Replicator;
> >>> -import org.apache.axis2.clustering.ClusteringFault;
> >>> -import org.apache.axis2.clustering.ClusterManager;
> >>> +import org.apache.synapse.transport.nhttp.NhttpConstants;
> >>>  import org.wso2.throttle.*;
> >>>
> >>>
> >>> @@ -42,7 +42,7 @@
> >>>  * Only support IP based throttling- Throotling can manage per IP using
> >>> the throttle policy
> >>>  */
> >>>
> >>> -public class ThrottleMediator extends AbstractMediator implements
> >>> ManagedLifecycle {
> >>> +public class ThrottleMediator extends AbstractMediator {
> >>>
> >>>     /* The key for getting the throttling policy - key refers to a/an
> >>> [registry] entry    */
> >>>     private String policyKey = null;
> >>>
> >>>
> >>
> >>
> >>
> >> --
> >> Ruwan Linton
> >> Senior Software Engineer & Product Manager; WSO2 ESB;
> http://wso2.org/esb
> >> WSO2 Inc.; http://wso2.org
> >> email: ruwan@wso2.com; cell: +94 77 341 3097
> >> blog: http://ruwansblog.blogspot.com
> >>
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
> For additional commands, e-mail: dev-help@synapse.apache.org
>
>


-- 
Ruwan Linton
Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
WSO2 Inc.; http://wso2.org
email: ruwan@wso2.com; cell: +94 77 341 3097
blog: http://ruwansblog.blogspot.com

Re: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

Posted by indika kumara <in...@gmail.com>.
No need to implements as default behavior is doing noting. Only need
to override if has any special things do to at life cycle event

On Fri, Mar 13, 2009 at 11:30 PM, indika kumara <in...@gmail.com> wrote:
> Ruwan
>
> I thought any mediators that is an abstract mediator (extend from
> abstract mediator), has a manageable life. And, any independent
> mediators (that is not an abstract mediator), only will have a
> manageable life if he wants and he need to tell that by explicitly
> implementing interface.
>
> Thanks
> Indika
>
> On Fri, Mar 13, 2009 at 10:50 PM, Ruwan Linton <ru...@gmail.com> wrote:
>> Indika,
>>
>> Why does AbstractMediator implements the ManagedLifecycle? does this means
>> that all the mediators have init and destroy methods?
>>
>> Thanks,
>> Ruwan
>>
>> 2009/3/13 <in...@apache.org>
>>>
>>> Author: indika
>>> Date: Fri Mar 13 07:16:16 2009
>>> New Revision: 753144
>>>
>>> URL: http://svn.apache.org/viewvc?rev=753144&view=rev
>>> Log:
>>> remove ManagedLifecycle from mediators that extends AbstractMediator as
>>> AbstractMediator already implements ManagedLifecycle
>>>
>>> Modified:
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>>>
>>>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>>>
>>>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>>>
>>>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -24,7 +24,6 @@
>>>  import org.apache.axis2.clustering.context.Replicator;
>>>  import org.apache.axis2.context.ConfigurationContext;
>>>  import org.apache.axis2.saaj.util.SAAJUtil;
>>> -import org.apache.synapse.ManagedLifecycle;
>>>  import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseException;
>>>  import org.apache.synapse.SynapseLog;
>>> @@ -58,7 +57,7 @@
>>>  *
>>>  * @see org.apache.synapse.Mediator
>>>  */
>>> -public class CacheMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class CacheMediator extends AbstractMediator {
>>>
>>>     private String id = null;
>>>     private String scope = CachingConstants.SCOPE_PER_HOST;// global
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -23,15 +23,14 @@
>>>  import org.apache.axiom.om.OMNode;
>>>  import org.apache.axis2.AxisFault;
>>>  import org.apache.axis2.Constants;
>>> -import org.apache.axis2.transport.http.HTTPConstants;
>>> -import org.apache.axis2.description.Parameter;
>>>  import org.apache.axis2.addressing.AddressingConstants;
>>>  import org.apache.axis2.addressing.EndpointReference;
>>>  import org.apache.axis2.client.Options;
>>>  import org.apache.axis2.client.ServiceClient;
>>>  import org.apache.axis2.context.ConfigurationContext;
>>>  import org.apache.axis2.context.ConfigurationContextFactory;
>>> -import org.apache.synapse.ManagedLifecycle;
>>> +import org.apache.axis2.description.Parameter;
>>> +import org.apache.axis2.transport.http.HTTPConstants;
>>>  import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseException;
>>>  import org.apache.synapse.SynapseLog;
>>> @@ -51,7 +50,7 @@
>>>  *      <target xpath="expression" | key="string"/>
>>>  * </callout>
>>>  */
>>> -public class CalloutMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class CalloutMediator extends AbstractMediator {
>>>
>>>     private ServiceClient sc = null;
>>>     private String serviceURL = null;
>>> @@ -179,6 +178,7 @@
>>>         return null;
>>>     }
>>>
>>> +    @Override
>>>     public void init(SynapseEnvironment synEnv) {
>>>         try {
>>>             ConfigurationContext cfgCtx
>>> @@ -193,6 +193,7 @@
>>>         }
>>>     }
>>>
>>> +    @Override
>>>     public void destroy() {
>>>         try {
>>>             sc.cleanup();
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -21,7 +21,6 @@
>>>
>>>  import org.apache.commons.dbcp.BasicDataSource;
>>>  import org.apache.commons.dbcp.datasources.PerUserPoolDataSource;
>>> -import org.apache.synapse.ManagedLifecycle;
>>>  import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseException;
>>>  import org.apache.synapse.SynapseLog;
>>> @@ -34,13 +33,15 @@
>>>  import javax.xml.namespace.QName;
>>>  import java.math.BigDecimal;
>>>  import java.sql.*;
>>> -import java.sql.Date;
>>> -import java.util.*;
>>> +import java.util.ArrayList;
>>> +import java.util.HashMap;
>>> +import java.util.List;
>>> +import java.util.Map;
>>>
>>>  /**
>>>  * This abstract DB mediator will perform common DB connection pooling
>>> etc. for all DB mediators
>>>  */
>>> -public abstract class AbstractDBMediator extends AbstractMediator
>>> implements ManagedLifecycle {
>>> +public abstract class AbstractDBMediator extends AbstractMediator {
>>>
>>>     /** Hold JDBC properties */
>>>     protected final Map dataSourceProps = new HashMap();
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -23,7 +23,6 @@
>>>  import org.apache.axiom.soap.SOAP12Constants;
>>>  import org.apache.commons.logging.Log;
>>>  import org.apache.commons.logging.LogFactory;
>>> -import org.apache.synapse.ManagedLifecycle;
>>>  import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseLog;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>> @@ -48,7 +47,7 @@
>>>  * so that aggregations that never would complete could be timed out and
>>> cleared from memory and
>>>  * any fault conditions handled
>>>  */
>>> -public class AggregateMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class AggregateMediator extends AbstractMediator {
>>>
>>>     private static final Log log =
>>> LogFactory.getLog(AggregateMediator.class);
>>>
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -19,23 +19,23 @@
>>>
>>>  package org.apache.synapse.mediators.eip.splitter;
>>>
>>> -import org.apache.synapse.MessageContext;
>>> +import org.apache.axis2.AxisFault;
>>> +import org.apache.axis2.Constants;
>>> +import org.apache.axis2.context.OperationContext;
>>>  import org.apache.synapse.ManagedLifecycle;
>>> +import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseLog;
>>> -import org.apache.synapse.endpoints.Endpoint;
>>> -import org.apache.synapse.core.axis2.Axis2MessageContext;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>> -import org.apache.synapse.util.MessageHelper;
>>> +import org.apache.synapse.core.axis2.Axis2MessageContext;
>>> +import org.apache.synapse.endpoints.Endpoint;
>>>  import org.apache.synapse.mediators.AbstractMediator;
>>> -import org.apache.synapse.mediators.eip.Target;
>>>  import org.apache.synapse.mediators.eip.EIPConstants;
>>> -import org.apache.axis2.AxisFault;
>>> -import org.apache.axis2.Constants;
>>> -import org.apache.axis2.context.OperationContext;
>>> +import org.apache.synapse.mediators.eip.Target;
>>> +import org.apache.synapse.util.MessageHelper;
>>>
>>>  import java.util.ArrayList;
>>> -import java.util.List;
>>>  import java.util.Iterator;
>>> +import java.util.List;
>>>
>>>  /**
>>>  * This mediator will clone the message into multiple messages and mediate
>>> as specified in the
>>> @@ -43,7 +43,7 @@
>>>  * specifies an Action and/or To address to be set to the cloned message.
>>> The number of cloned
>>>  * messages created is the number of targets specified
>>>  */
>>> -public class CloneMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class CloneMediator extends AbstractMediator {
>>>
>>>     /**
>>>      * Continue processing the parent message or not?
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -28,9 +28,9 @@
>>>  import org.apache.synapse.ManagedLifecycle;
>>>  import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseLog;
>>> -import org.apache.synapse.endpoints.Endpoint;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
>>> +import org.apache.synapse.endpoints.Endpoint;
>>>  import org.apache.synapse.mediators.AbstractMediator;
>>>  import org.apache.synapse.mediators.eip.EIPConstants;
>>>  import org.apache.synapse.mediators.eip.EIPUtils;
>>> @@ -47,7 +47,7 @@
>>>  * each resulting element. This is very much similar to the clone
>>> mediator, and
>>>  * hands over the newly created messages to a target for processing
>>>  */
>>> -public class IterateMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class IterateMediator extends AbstractMediator {
>>>
>>>     /** Continue mediation on the parent message or not? */
>>>     private boolean continueParent = false;
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -19,11 +19,7 @@
>>>
>>>  package org.apache.synapse.mediators.ext;
>>>
>>> -import org.apache.synapse.ManagedLifecycle;
>>> -import org.apache.synapse.Mediator;
>>> -import org.apache.synapse.MessageContext;
>>> -import org.apache.synapse.SynapseException;
>>> -import org.apache.synapse.SynapseLog;
>>> +import org.apache.synapse.*;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>>  import org.apache.synapse.mediators.AbstractMediator;
>>>
>>> @@ -41,7 +37,7 @@
>>>  *
>>>  * @see Mediator
>>>  */
>>> -public class ClassMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class ClassMediator extends AbstractMediator {
>>>
>>>     /** The reference to the actual class that implments the Mediator
>>> interface */
>>>     private Mediator mediator = null;
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -36,7 +36,7 @@
>>>  * the given list of cases. This is actually a list of sequences, and
>>> depending on the
>>>  * selected case, the selected sequence gets executed.
>>>  */
>>> -public class SwitchMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class SwitchMediator extends AbstractMediator {
>>>
>>>     /** The XPath expression specifying the source element to apply the
>>> switch case expressions against   */
>>>     private SynapseXPath source = null;
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -1,21 +1,20 @@
>>>  package org.apache.synapse.mediators.eip;
>>>
>>> -import org.apache.synapse.mediators.AbstractMediator;
>>> -import org.apache.synapse.MessageContext;
>>> -import org.apache.synapse.ManagedLifecycle;
>>> -import org.apache.synapse.core.SynapseEnvironment;
>>> -import org.apache.axiom.soap.SOAPEnvelope;
>>>  import org.apache.axiom.om.OMAbstractFactory;
>>> +import org.apache.axiom.soap.SOAPEnvelope;
>>>  import org.apache.axis2.AxisFault;
>>> +import org.apache.synapse.MessageContext;
>>> +import org.apache.synapse.core.SynapseEnvironment;
>>> +import org.apache.synapse.mediators.AbstractMediator;
>>>
>>> -import java.util.List;
>>>  import java.util.ArrayList;
>>> +import java.util.List;
>>>
>>>  /**
>>>  * Created by IntelliJ IDEA. User: ruwan Date: Oct 3, 2007 Time: 7:26:09
>>> AM To change this template
>>>  * use File | Settings | File Templates.
>>>  */
>>> -public class SplitTestHelperMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class SplitTestHelperMediator extends AbstractMediator {
>>>
>>>     private List mediatedContext = new ArrayList();
>>>     int msgcount;
>>>
>>> Modified:
>>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -20,8 +20,6 @@
>>>  package org.apache.synapse.mediators.ext;
>>>
>>>  import org.apache.synapse.MessageContext;
>>> -import org.apache.synapse.Mediator;
>>> -import org.apache.synapse.ManagedLifecycle;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>>  import org.apache.synapse.mediators.AbstractMediator;
>>>
>>> @@ -30,7 +28,7 @@
>>>  * use a static member variable just to test this.. This class is not
>>> nice.. :-)
>>>  * but does what is expected... :-(
>>>  */
>>> -public class ClassMediatorTestMediator extends AbstractMediator
>>> implements ManagedLifecycle {
>>> +public class ClassMediatorTestMediator extends AbstractMediator {
>>>
>>>     public static boolean invoked = false;
>>>     public static boolean initialized = false;
>>>
>>> Modified:
>>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -19,15 +19,14 @@
>>>
>>>  package org.apache.synapse.mediators.spring;
>>>
>>> -import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.Mediator;
>>> -import org.apache.synapse.ManagedLifecycle;
>>> +import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseException;
>>>  import org.apache.synapse.SynapseLog;
>>> +import org.apache.synapse.config.Entry;
>>> +import org.apache.synapse.config.SynapseConfigUtils;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>>  import org.apache.synapse.mediators.AbstractMediator;
>>> -import org.apache.synapse.config.SynapseConfigUtils;
>>> -import org.apache.synapse.config.Entry;
>>>  import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
>>>  import org.springframework.context.ApplicationContext;
>>>  import org.springframework.context.support.GenericApplicationContext;
>>> @@ -41,7 +40,7 @@
>>>  * refers to a Spring bean name, and also either a Spring configuration
>>> defined to Synapse
>>>  * or an inlined Spring configuration.
>>>  */
>>> -public class SpringMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class SpringMediator extends AbstractMediator {
>>>
>>>     /**
>>>      * The Spring bean ref to be used
>>>
>>> Modified:
>>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>>> URL:
>>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>>
>>> ==============================================================================
>>> ---
>>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>>> (original)
>>> +++
>>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>>> Fri Mar 13 07:16:16 2009
>>> @@ -19,20 +19,20 @@
>>>  package org.apache.synapse.mediators.throttle;
>>>
>>>  import org.apache.axiom.om.OMElement;
>>> +import org.apache.axis2.clustering.ClusterManager;
>>> +import org.apache.axis2.clustering.ClusteringFault;
>>> +import org.apache.axis2.clustering.context.Replicator;
>>> +import org.apache.axis2.context.ConfigurationContext;
>>>  import org.apache.neethi.PolicyEngine;
>>>  import org.apache.synapse.ManagedLifecycle;
>>>  import org.apache.synapse.Mediator;
>>>  import org.apache.synapse.MessageContext;
>>>  import org.apache.synapse.SynapseLog;
>>> -import org.apache.synapse.transport.nhttp.NhttpConstants;
>>>  import org.apache.synapse.config.Entry;
>>>  import org.apache.synapse.core.SynapseEnvironment;
>>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
>>>  import org.apache.synapse.mediators.AbstractMediator;
>>> -import org.apache.axis2.context.ConfigurationContext;
>>> -import org.apache.axis2.clustering.context.Replicator;
>>> -import org.apache.axis2.clustering.ClusteringFault;
>>> -import org.apache.axis2.clustering.ClusterManager;
>>> +import org.apache.synapse.transport.nhttp.NhttpConstants;
>>>  import org.wso2.throttle.*;
>>>
>>>
>>> @@ -42,7 +42,7 @@
>>>  * Only support IP based throttling- Throotling can manage per IP using
>>> the throttle policy
>>>  */
>>>
>>> -public class ThrottleMediator extends AbstractMediator implements
>>> ManagedLifecycle {
>>> +public class ThrottleMediator extends AbstractMediator {
>>>
>>>     /* The key for getting the throttling policy - key refers to a/an
>>> [registry] entry    */
>>>     private String policyKey = null;
>>>
>>>
>>
>>
>>
>> --
>> Ruwan Linton
>> Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
>> WSO2 Inc.; http://wso2.org
>> email: ruwan@wso2.com; cell: +94 77 341 3097
>> blog: http://ruwansblog.blogspot.com
>>
>

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


Re: svn commit: r753144 - in /synapse/trunk/java/modules: core/src/main/java/org/apache/synapse/mediators/builtin/ core/src/main/java/org/apache/synapse/mediators/db/ core/src/main/java/org/apache/synapse/mediators/eip/aggregator/ core/src/main/java/

Posted by indika kumara <in...@gmail.com>.
Ruwan

I thought any mediators that is an abstract mediator (extend from
abstract mediator), has a manageable life. And, any independent
mediators (that is not an abstract mediator), only will have a
manageable life if he wants and he need to tell that by explicitly
implementing interface.

Thanks
Indika

On Fri, Mar 13, 2009 at 10:50 PM, Ruwan Linton <ru...@gmail.com> wrote:
> Indika,
>
> Why does AbstractMediator implements the ManagedLifecycle? does this means
> that all the mediators have init and destroy methods?
>
> Thanks,
> Ruwan
>
> 2009/3/13 <in...@apache.org>
>>
>> Author: indika
>> Date: Fri Mar 13 07:16:16 2009
>> New Revision: 753144
>>
>> URL: http://svn.apache.org/viewvc?rev=753144&view=rev
>> Log:
>> remove ManagedLifecycle from mediators that extends AbstractMediator as
>> AbstractMediator already implements ManagedLifecycle
>>
>> Modified:
>>
>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>>
>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>>
>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>>
>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>>
>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>>
>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>>
>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>>
>>  synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>>
>>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>>
>>  synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>>
>>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>>
>>  synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>>
>> Modified:
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>> URL:
>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>
>> ==============================================================================
>> ---
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>> (original)
>> +++
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CacheMediator.java
>> Fri Mar 13 07:16:16 2009
>> @@ -24,7 +24,6 @@
>>  import org.apache.axis2.clustering.context.Replicator;
>>  import org.apache.axis2.context.ConfigurationContext;
>>  import org.apache.axis2.saaj.util.SAAJUtil;
>> -import org.apache.synapse.ManagedLifecycle;
>>  import org.apache.synapse.MessageContext;
>>  import org.apache.synapse.SynapseException;
>>  import org.apache.synapse.SynapseLog;
>> @@ -58,7 +57,7 @@
>>  *
>>  * @see org.apache.synapse.Mediator
>>  */
>> -public class CacheMediator extends AbstractMediator implements
>> ManagedLifecycle {
>> +public class CacheMediator extends AbstractMediator {
>>
>>     private String id = null;
>>     private String scope = CachingConstants.SCOPE_PER_HOST;// global
>>
>> Modified:
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>> URL:
>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>
>> ==============================================================================
>> ---
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>> (original)
>> +++
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/builtin/CalloutMediator.java
>> Fri Mar 13 07:16:16 2009
>> @@ -23,15 +23,14 @@
>>  import org.apache.axiom.om.OMNode;
>>  import org.apache.axis2.AxisFault;
>>  import org.apache.axis2.Constants;
>> -import org.apache.axis2.transport.http.HTTPConstants;
>> -import org.apache.axis2.description.Parameter;
>>  import org.apache.axis2.addressing.AddressingConstants;
>>  import org.apache.axis2.addressing.EndpointReference;
>>  import org.apache.axis2.client.Options;
>>  import org.apache.axis2.client.ServiceClient;
>>  import org.apache.axis2.context.ConfigurationContext;
>>  import org.apache.axis2.context.ConfigurationContextFactory;
>> -import org.apache.synapse.ManagedLifecycle;
>> +import org.apache.axis2.description.Parameter;
>> +import org.apache.axis2.transport.http.HTTPConstants;
>>  import org.apache.synapse.MessageContext;
>>  import org.apache.synapse.SynapseException;
>>  import org.apache.synapse.SynapseLog;
>> @@ -51,7 +50,7 @@
>>  *      <target xpath="expression" | key="string"/>
>>  * </callout>
>>  */
>> -public class CalloutMediator extends AbstractMediator implements
>> ManagedLifecycle {
>> +public class CalloutMediator extends AbstractMediator {
>>
>>     private ServiceClient sc = null;
>>     private String serviceURL = null;
>> @@ -179,6 +178,7 @@
>>         return null;
>>     }
>>
>> +    @Override
>>     public void init(SynapseEnvironment synEnv) {
>>         try {
>>             ConfigurationContext cfgCtx
>> @@ -193,6 +193,7 @@
>>         }
>>     }
>>
>> +    @Override
>>     public void destroy() {
>>         try {
>>             sc.cleanup();
>>
>> Modified:
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>> URL:
>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>
>> ==============================================================================
>> ---
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>> (original)
>> +++
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/db/AbstractDBMediator.java
>> Fri Mar 13 07:16:16 2009
>> @@ -21,7 +21,6 @@
>>
>>  import org.apache.commons.dbcp.BasicDataSource;
>>  import org.apache.commons.dbcp.datasources.PerUserPoolDataSource;
>> -import org.apache.synapse.ManagedLifecycle;
>>  import org.apache.synapse.MessageContext;
>>  import org.apache.synapse.SynapseException;
>>  import org.apache.synapse.SynapseLog;
>> @@ -34,13 +33,15 @@
>>  import javax.xml.namespace.QName;
>>  import java.math.BigDecimal;
>>  import java.sql.*;
>> -import java.sql.Date;
>> -import java.util.*;
>> +import java.util.ArrayList;
>> +import java.util.HashMap;
>> +import java.util.List;
>> +import java.util.Map;
>>
>>  /**
>>  * This abstract DB mediator will perform common DB connection pooling
>> etc. for all DB mediators
>>  */
>> -public abstract class AbstractDBMediator extends AbstractMediator
>> implements ManagedLifecycle {
>> +public abstract class AbstractDBMediator extends AbstractMediator {
>>
>>     /** Hold JDBC properties */
>>     protected final Map dataSourceProps = new HashMap();
>>
>> Modified:
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>> URL:
>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>
>> ==============================================================================
>> ---
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>> (original)
>> +++
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/aggregator/AggregateMediator.java
>> Fri Mar 13 07:16:16 2009
>> @@ -23,7 +23,6 @@
>>  import org.apache.axiom.soap.SOAP12Constants;
>>  import org.apache.commons.logging.Log;
>>  import org.apache.commons.logging.LogFactory;
>> -import org.apache.synapse.ManagedLifecycle;
>>  import org.apache.synapse.MessageContext;
>>  import org.apache.synapse.SynapseLog;
>>  import org.apache.synapse.core.SynapseEnvironment;
>> @@ -48,7 +47,7 @@
>>  * so that aggregations that never would complete could be timed out and
>> cleared from memory and
>>  * any fault conditions handled
>>  */
>> -public class AggregateMediator extends AbstractMediator implements
>> ManagedLifecycle {
>> +public class AggregateMediator extends AbstractMediator {
>>
>>     private static final Log log =
>> LogFactory.getLog(AggregateMediator.class);
>>
>>
>> Modified:
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>> URL:
>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>
>> ==============================================================================
>> ---
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>> (original)
>> +++
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/CloneMediator.java
>> Fri Mar 13 07:16:16 2009
>> @@ -19,23 +19,23 @@
>>
>>  package org.apache.synapse.mediators.eip.splitter;
>>
>> -import org.apache.synapse.MessageContext;
>> +import org.apache.axis2.AxisFault;
>> +import org.apache.axis2.Constants;
>> +import org.apache.axis2.context.OperationContext;
>>  import org.apache.synapse.ManagedLifecycle;
>> +import org.apache.synapse.MessageContext;
>>  import org.apache.synapse.SynapseLog;
>> -import org.apache.synapse.endpoints.Endpoint;
>> -import org.apache.synapse.core.axis2.Axis2MessageContext;
>>  import org.apache.synapse.core.SynapseEnvironment;
>> -import org.apache.synapse.util.MessageHelper;
>> +import org.apache.synapse.core.axis2.Axis2MessageContext;
>> +import org.apache.synapse.endpoints.Endpoint;
>>  import org.apache.synapse.mediators.AbstractMediator;
>> -import org.apache.synapse.mediators.eip.Target;
>>  import org.apache.synapse.mediators.eip.EIPConstants;
>> -import org.apache.axis2.AxisFault;
>> -import org.apache.axis2.Constants;
>> -import org.apache.axis2.context.OperationContext;
>> +import org.apache.synapse.mediators.eip.Target;
>> +import org.apache.synapse.util.MessageHelper;
>>
>>  import java.util.ArrayList;
>> -import java.util.List;
>>  import java.util.Iterator;
>> +import java.util.List;
>>
>>  /**
>>  * This mediator will clone the message into multiple messages and mediate
>> as specified in the
>> @@ -43,7 +43,7 @@
>>  * specifies an Action and/or To address to be set to the cloned message.
>> The number of cloned
>>  * messages created is the number of targets specified
>>  */
>> -public class CloneMediator extends AbstractMediator implements
>> ManagedLifecycle {
>> +public class CloneMediator extends AbstractMediator {
>>
>>     /**
>>      * Continue processing the parent message or not?
>>
>> Modified:
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>> URL:
>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>
>> ==============================================================================
>> ---
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>> (original)
>> +++
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/eip/splitter/IterateMediator.java
>> Fri Mar 13 07:16:16 2009
>> @@ -28,9 +28,9 @@
>>  import org.apache.synapse.ManagedLifecycle;
>>  import org.apache.synapse.MessageContext;
>>  import org.apache.synapse.SynapseLog;
>> -import org.apache.synapse.endpoints.Endpoint;
>>  import org.apache.synapse.core.SynapseEnvironment;
>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
>> +import org.apache.synapse.endpoints.Endpoint;
>>  import org.apache.synapse.mediators.AbstractMediator;
>>  import org.apache.synapse.mediators.eip.EIPConstants;
>>  import org.apache.synapse.mediators.eip.EIPUtils;
>> @@ -47,7 +47,7 @@
>>  * each resulting element. This is very much similar to the clone
>> mediator, and
>>  * hands over the newly created messages to a target for processing
>>  */
>> -public class IterateMediator extends AbstractMediator implements
>> ManagedLifecycle {
>> +public class IterateMediator extends AbstractMediator {
>>
>>     /** Continue mediation on the parent message or not? */
>>     private boolean continueParent = false;
>>
>> Modified:
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>> URL:
>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>
>> ==============================================================================
>> ---
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>> (original)
>> +++
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/ext/ClassMediator.java
>> Fri Mar 13 07:16:16 2009
>> @@ -19,11 +19,7 @@
>>
>>  package org.apache.synapse.mediators.ext;
>>
>> -import org.apache.synapse.ManagedLifecycle;
>> -import org.apache.synapse.Mediator;
>> -import org.apache.synapse.MessageContext;
>> -import org.apache.synapse.SynapseException;
>> -import org.apache.synapse.SynapseLog;
>> +import org.apache.synapse.*;
>>  import org.apache.synapse.core.SynapseEnvironment;
>>  import org.apache.synapse.mediators.AbstractMediator;
>>
>> @@ -41,7 +37,7 @@
>>  *
>>  * @see Mediator
>>  */
>> -public class ClassMediator extends AbstractMediator implements
>> ManagedLifecycle {
>> +public class ClassMediator extends AbstractMediator {
>>
>>     /** The reference to the actual class that implments the Mediator
>> interface */
>>     private Mediator mediator = null;
>>
>> Modified:
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>> URL:
>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>
>> ==============================================================================
>> ---
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>> (original)
>> +++
>> synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/filters/SwitchMediator.java
>> Fri Mar 13 07:16:16 2009
>> @@ -36,7 +36,7 @@
>>  * the given list of cases. This is actually a list of sequences, and
>> depending on the
>>  * selected case, the selected sequence gets executed.
>>  */
>> -public class SwitchMediator extends AbstractMediator implements
>> ManagedLifecycle {
>> +public class SwitchMediator extends AbstractMediator {
>>
>>     /** The XPath expression specifying the source element to apply the
>> switch case expressions against   */
>>     private SynapseXPath source = null;
>>
>> Modified:
>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>> URL:
>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>
>> ==============================================================================
>> ---
>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>> (original)
>> +++
>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/eip/SplitTestHelperMediator.java
>> Fri Mar 13 07:16:16 2009
>> @@ -1,21 +1,20 @@
>>  package org.apache.synapse.mediators.eip;
>>
>> -import org.apache.synapse.mediators.AbstractMediator;
>> -import org.apache.synapse.MessageContext;
>> -import org.apache.synapse.ManagedLifecycle;
>> -import org.apache.synapse.core.SynapseEnvironment;
>> -import org.apache.axiom.soap.SOAPEnvelope;
>>  import org.apache.axiom.om.OMAbstractFactory;
>> +import org.apache.axiom.soap.SOAPEnvelope;
>>  import org.apache.axis2.AxisFault;
>> +import org.apache.synapse.MessageContext;
>> +import org.apache.synapse.core.SynapseEnvironment;
>> +import org.apache.synapse.mediators.AbstractMediator;
>>
>> -import java.util.List;
>>  import java.util.ArrayList;
>> +import java.util.List;
>>
>>  /**
>>  * Created by IntelliJ IDEA. User: ruwan Date: Oct 3, 2007 Time: 7:26:09
>> AM To change this template
>>  * use File | Settings | File Templates.
>>  */
>> -public class SplitTestHelperMediator extends AbstractMediator implements
>> ManagedLifecycle {
>> +public class SplitTestHelperMediator extends AbstractMediator {
>>
>>     private List mediatedContext = new ArrayList();
>>     int msgcount;
>>
>> Modified:
>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>> URL:
>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>
>> ==============================================================================
>> ---
>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>> (original)
>> +++
>> synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/ext/ClassMediatorTestMediator.java
>> Fri Mar 13 07:16:16 2009
>> @@ -20,8 +20,6 @@
>>  package org.apache.synapse.mediators.ext;
>>
>>  import org.apache.synapse.MessageContext;
>> -import org.apache.synapse.Mediator;
>> -import org.apache.synapse.ManagedLifecycle;
>>  import org.apache.synapse.core.SynapseEnvironment;
>>  import org.apache.synapse.mediators.AbstractMediator;
>>
>> @@ -30,7 +28,7 @@
>>  * use a static member variable just to test this.. This class is not
>> nice.. :-)
>>  * but does what is expected... :-(
>>  */
>> -public class ClassMediatorTestMediator extends AbstractMediator
>> implements ManagedLifecycle {
>> +public class ClassMediatorTestMediator extends AbstractMediator {
>>
>>     public static boolean invoked = false;
>>     public static boolean initialized = false;
>>
>> Modified:
>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>> URL:
>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>
>> ==============================================================================
>> ---
>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>> (original)
>> +++
>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/spring/SpringMediator.java
>> Fri Mar 13 07:16:16 2009
>> @@ -19,15 +19,14 @@
>>
>>  package org.apache.synapse.mediators.spring;
>>
>> -import org.apache.synapse.MessageContext;
>>  import org.apache.synapse.Mediator;
>> -import org.apache.synapse.ManagedLifecycle;
>> +import org.apache.synapse.MessageContext;
>>  import org.apache.synapse.SynapseException;
>>  import org.apache.synapse.SynapseLog;
>> +import org.apache.synapse.config.Entry;
>> +import org.apache.synapse.config.SynapseConfigUtils;
>>  import org.apache.synapse.core.SynapseEnvironment;
>>  import org.apache.synapse.mediators.AbstractMediator;
>> -import org.apache.synapse.config.SynapseConfigUtils;
>> -import org.apache.synapse.config.Entry;
>>  import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
>>  import org.springframework.context.ApplicationContext;
>>  import org.springframework.context.support.GenericApplicationContext;
>> @@ -41,7 +40,7 @@
>>  * refers to a Spring bean name, and also either a Spring configuration
>> defined to Synapse
>>  * or an inlined Spring configuration.
>>  */
>> -public class SpringMediator extends AbstractMediator implements
>> ManagedLifecycle {
>> +public class SpringMediator extends AbstractMediator {
>>
>>     /**
>>      * The Spring bean ref to be used
>>
>> Modified:
>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>> URL:
>> http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java?rev=753144&r1=753143&r2=753144&view=diff
>>
>> ==============================================================================
>> ---
>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>> (original)
>> +++
>> synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
>> Fri Mar 13 07:16:16 2009
>> @@ -19,20 +19,20 @@
>>  package org.apache.synapse.mediators.throttle;
>>
>>  import org.apache.axiom.om.OMElement;
>> +import org.apache.axis2.clustering.ClusterManager;
>> +import org.apache.axis2.clustering.ClusteringFault;
>> +import org.apache.axis2.clustering.context.Replicator;
>> +import org.apache.axis2.context.ConfigurationContext;
>>  import org.apache.neethi.PolicyEngine;
>>  import org.apache.synapse.ManagedLifecycle;
>>  import org.apache.synapse.Mediator;
>>  import org.apache.synapse.MessageContext;
>>  import org.apache.synapse.SynapseLog;
>> -import org.apache.synapse.transport.nhttp.NhttpConstants;
>>  import org.apache.synapse.config.Entry;
>>  import org.apache.synapse.core.SynapseEnvironment;
>>  import org.apache.synapse.core.axis2.Axis2MessageContext;
>>  import org.apache.synapse.mediators.AbstractMediator;
>> -import org.apache.axis2.context.ConfigurationContext;
>> -import org.apache.axis2.clustering.context.Replicator;
>> -import org.apache.axis2.clustering.ClusteringFault;
>> -import org.apache.axis2.clustering.ClusterManager;
>> +import org.apache.synapse.transport.nhttp.NhttpConstants;
>>  import org.wso2.throttle.*;
>>
>>
>> @@ -42,7 +42,7 @@
>>  * Only support IP based throttling- Throotling can manage per IP using
>> the throttle policy
>>  */
>>
>> -public class ThrottleMediator extends AbstractMediator implements
>> ManagedLifecycle {
>> +public class ThrottleMediator extends AbstractMediator {
>>
>>     /* The key for getting the throttling policy - key refers to a/an
>> [registry] entry    */
>>     private String policyKey = null;
>>
>>
>
>
>
> --
> Ruwan Linton
> Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
> WSO2 Inc.; http://wso2.org
> email: ruwan@wso2.com; cell: +94 77 341 3097
> blog: http://ruwansblog.blogspot.com
>

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