synapse-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ruwan Linton <>
Subject Re: Dependency Management with Synapse
Date Fri, 03 Apr 2009 16:04:19 GMT
I think this is really important, even though I am not sure about how we are
going to do the dependency resolution at the startup.

One other scenario is that the resource deletion. For the moment, you can
delete any of the resource from the SynapseConfiguration through the synapse
API. Upon deleting these resource (for example sequences or endpoints) we do
not check whether there is a live reference to that particular resource or
not. In WSO2 ESB we allow the users to manage the configuration at runtime
and this is an important requirement for us to handle on the synapse layer.

I propose that we improve the delete methods of the Synapse Configuration in
a way that we can pass a boolean value to the delete method which specifies
whether you want to cascade delete the entries if there are live references
to this entry or to not to delete if there are references.

Further, we should be able to see the references for a particular resource
in the synapse configuration.

Saliya, please create a JIRA issue for this if there are no issues already
there in the JIRA for this.


On Fri, Apr 3, 2009 at 6:32 PM, Saliya Ekanayake <> wrote:

> Hi,
> At present Synapse may fail due to dangling references. As an example
> consider a proxy service which refers to a sequence. If the sequence
> definition is not there it will be a dangling reference and Synapse will
> fail to mediate properly.
> The following items are the possible items on which others may depend.
> 1. sequences
> 2. endpoints
> 3. local entries
> 4. resources in the registry (remote)
> A way to overcome the issue is to resolve dependencies at startup. This,
> however, has an issue since we cannot distinguish between references for
> local entries and for registry. If we force the user to have all the
> referring items either in local entries or in registry prior to start
> Synapse, then we can clearly identify missing resources. Anyway if the user
> removes a used resource from registry then again Synapse will not be able to
> handle it. Therefore, IMHO it will be good to omit the dependency management
> on registry resources.
> Resolving the remaining dependencies can be achieved by having a list of
> dependents in each of the 1 - 3 elements. This list can be populated at
> start time, of course an additional step is necessary to do this.
> So I would like to know what you folks think about this approach.
> Thanks,
> Saliya
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

Ruwan Linton
Senior Software Engineer & Product Manager; WSO2 ESB;
WSO2 Inc.;
email:; cell: +94 77 341 3097

View raw message