synapse-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hiranya Jayathilaka (JIRA)" <>
Subject [jira] [Commented] (SYNAPSE-928) [GSoC] Versioning of Synapse config artifacts
Date Sat, 27 Apr 2013 22:38:15 GMT


Hiranya Jayathilaka commented on SYNAPSE-928:

I believe versioning support has already been implemented for APIs (by Udayanga). See the
mail thread for details.The same concept
can be extended to support versioning in other types of artifacts too. I guess proxy service
versioning will be almost identical to API versioning. If a proxy service named TestService
has two versions 1.0 and 2.0, they should be exposed over URLs '/services/TestService/1.0'
and '/services/TestService/2.0'. URL '/services/TestService' should be dispatched to the latest
available version of TestService. I'd also recommend you to look at how Axis2 supports versioning
for its service artifacts. IIRC this is supported by Axis2's hierarchical services feature
(see I think
Synapse service versioning should have similar semantics.

Versioning of sequences and endpoints will be a little different though, since they are not
directly exposed to user in any way like APIs or proxy services. So their versions are only
visible within the realm of SynapseConfiguration. Only exception would be the main sequence
and fault sequence, which are, in a way, exposed to the user. Some changes to the way Synapse
looks up configuration artifacts is necessary to properly support this. For instance right
now when we want to lookup a sequence we do something like:

<sequence key="foo"/>

We need to think how this changes when versioning is in place. Some possibilities are:

<sequence key="foo" version="1.0"/>
<sequence key="foo-v1.0"/>
> [GSoC] Versioning of Synapse config artifacts
> ---------------------------------------------
>                 Key: SYNAPSE-928
>                 URL:
>             Project: Synapse
>          Issue Type: Improvement
>            Reporter: Kasun Indrasiri
>            Priority: Critical
>              Labels: gsoc2013
> Currently non of the synapse artifacts fully support versioning mechanism. This feature
is to support a new versioning strategy for all such artifacts. 
> Sequence, Proxy Service, API, Endpoints 

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message