RE: Problem with empty load balance groups
> > Two solutions would be acceptable to me: > > a) The ESB does not start if a load balancing group is empty and output > > the name(s) of the empty laodbalance groups. This approach might cause > > compatibility issues with existing (mis)configurations. Also unused > > configuration parts would cause Synapse not to start. On the other hand > > this is "fail fast" and if we would have a schema, this configuration > > would probably be disallowed. > > > > b) At runtime the problem is detected and a fault is sent to the client > > indicating that no member of a loadbalancing group are available. > > > > Do you have other solutions in mind? What solution do you prefer? > > > I would certainly prefer option "A".. it would be easier to implement > and also better in dealing with the issue than at runtime. Ok, I will go this road. If you currently set log4j level to debug for synapse core, you already have this behaviour - even though surely not intended. ;-) NPE during debug output in LoadbalanceEndpoint.setAlgorithm() Regards, Eric
Proposing a new extension Mediator for Synapse
Hi devs, I am Purposing a JMX MBean mediator for synapse as a extension mediator . >From that users will be able to expose(registor) there MBeans /MXBeans as mediators (like in ClassMediator and SpringMediator) The Usage i see here is as follows, Users can put that MBean mediator in any mediation Sequence doing that they will be able to do things like following 1.they can put some properties that got set depending on the Message and use jconsole or any other custom console to monitor those in runtime. 2. They can expose properties in there MBean that can do changes in the Message context (say modifications done to message in side the mediator depend on those properties ) .so that in Run rime using a jconsole or a custom console they will be able to change the Message context. If this add value to synapse i would be glad to implement this feature. thank you, Charith Dhanushka Wickramarachchi http://charithwiki.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/s
Indika, Why does AbstractMediator implements the ManagedLifecycle? does this means that all the mediators have init and destroy methods? Thanks, Ruwan 2009/3/13 > 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 @@ > * > * > */ > -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 >
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/s
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 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 >> >> 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;
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/s
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 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 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 >>> >>> 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.a
Re: VFS - Synapse Memory Leak
I committed the code and it will be available in the next WS-Commons transport build. The methods are located in org.apache.axis2.format.ElementHelper in the axis2-transport-base module. Andreas On Thu, Mar 12, 2009 at 00:06, Kim Horn wrote: > Hello Andreas, > This is great and really helps, have not had time to try it out but will soon. > > Contributing the java.io.Reader would be a great help but it will take me a > while to get up to speed to do the Synapse iterator. > > In the short term I am going to use a brute force approach that is now > feasible given the memory issue is resolved. Just thought of this one today. > Use VFS proxy to FTP file locally; so streaming helps here. A POJOCommand on > to split file into another directory, stream in and out. Another > independent VFS proxy watches that directory and submits each file to Web > service. Hopefully memory will be fine. Overloading the destination may still > be an issue ? > > Kim > > > > -Original Message- > From: Andreas Veithen [mailto:andreas.veit...@gmail.com] > Sent: Monday, 9 March 2009 10:55 PM > To: dev@synapse.apache.org > Subject: Re: VFS - Synapse Memory Leak > > The changes I did in the VFS transport and the message builders for > text/plain and application/octet-stream certainly don't provide an > out-of-the-box solution for your use case, but they are the > prerequisite. > > Concerning your first proposed solution (let the VFS write the content > to a temporary file), I don't like this because it would create a > tight coupling between the VFS transport and the mediator. A design > goal should be that the solution will still work if the file comes > from another source, e.g. an attachment in an MTOM or SwA message. > > I thing that an all-Synapse solution (2 or 3) should be possible, but > this will require development of a custom mediator. This mediator > would read the content, split it up (and store the chunks in memory or > an disk) and executes a sub-sequence for each chunk. The execution of > the sub-sequence would happen synchronously to limit the memory/disk > space consumption (to the maximum chunk size) and to avoid flooding > the destination service. > > Note that it is probably not possible to implemented the mediator > using a script because of the problematic String handling. Also, > Spring, POJO and class mediators don't support sub-sequences (I > think). Therefore it should be implemented as a full-featured Java > mediator, probably taking the existing iterate mediator as a template. > I can contribute the required code to get the text content in the form > of a java.io.Reader. > > Regards, > > Andreas > > On Mon, Mar 9, 2009 at 03:05, kimhorn wrote: >> >> Although this is a good feature it may not solve the actual problem ? >> The main first issue on my list was the memory leak. >> However, the real problem is once I get this massive files I have to send >> it to a web Service that can only take it in small chunks (about 14MB) . >> Streaming it straight out would just kill the destination Web service. It >> would get the memory error. The text document can be split apart easily, as >> it has independant records on each line seperated by . >> >> In an earlier post; that was not responded too, I mentioned: >> >> "Otherwise; for large EDI files a VFS iterator Mediator that streams through >> input file and outputs smaller >> chunks for processing, in Synapse, may be a solution ? " >> >> So I had mentioned a few solutions, in prior posts, solution now are: >> >> 1) VFS writes straight to temporary file, then a Java mediator can process >> the file by splitting it into many smaller files. These files then trigger >> another VFS proxy that submits these to the final web Service. >> The problem is is that is uses the file system (not so bad). >> 2) A Java Mediator takes the package and splits it up by wrapping >> into many XML elements that can then be acted on by a Synapse >> Iterator. So replace the text message with many smaller XML elements. >> Problem is that this loads whole message into memory. >> 3) Create another Iterator in Synapse that works on Regular expression (to >> split the text data) or actually uses a for loop approach to chop the file >> into chunks based on the loop index value. E.g. Index = 23 means a 14K chunk >> 23 chunks into the data. >> 4) Using the approach proposed now - just submit the file straight (stream >> it) to another web service that chops it up. It may return an XML document >> with many sub elelements that allows the standard Iterator to work. Similar >> to (2) but using another service rather than Java to split document. >> 5) Using the approach proposed now - just submit the file straight (stream >> it) to another web service that chops it up but calls a Synapse proxy with >> each small packet of data that then forwards it to the final WEb Service. So >> the Web Service iterates across the data; and not Synapse. >> >> Then other solutions replace Synapse wi
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/s
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 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 >> >> 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 >> 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 >> > 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 >> >>> >> >>> 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 >> >>> Fr