You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by "Charith Dhanushka Wickramarachchi (JIRA)" <ji...@apache.org> on 2010/07/10 14:44:49 UTC

[jira] Updated: (SYNAPSE-618) [GSoC] Implement a Dead Letter Channel for Synapse

     [ https://issues.apache.org/jira/browse/SYNAPSE-618?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Charith Dhanushka Wickramarachchi updated SYNAPSE-618:
------------------------------------------------------

    Attachment: messagestore_patch_3.diff
                synapse_sample_1.xml

Added the JMX view for the Message Store

getSize() :int  //give the current Message store size

resendAll() : void  //synapse will try to re-deliver all the Messages in the Message store.

deleteAll(): void // delete all the Messages in Message store

getMessageIds() : List<String> //gives IDs of all messages stored in the MessageStore

resend(String messageID) : void  //try to re-deliver the Message with given ID

delete(String messageID) : boolean  //delete the Message with given id

getEnvelope(String messageID) : SOAPEnvelope // get the SOAPEnvelope of the given Message ID


And added the feature to put a Mediation sequence with the Message store.So when a message get stored in the store uses can point to a sequence to mediate. This will be useful with notification mechanisms.

please review and commit  


> [GSoC] Implement a Dead Letter Channel for Synapse
> --------------------------------------------------
>
>                 Key: SYNAPSE-618
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-618
>             Project: Synapse
>          Issue Type: New Feature
>          Components: Core, Endpoints
>            Reporter: Hiranya Jayathilaka
>            Assignee: Hiranya Jayathilaka
>             Fix For: FUTURE
>
>         Attachments: messagestore_patch_1.diff, messagestore_patch_2.diff, messagestore_patch_3.diff, synapse_sample_1.xml, synapse_sample_1.xml, synapse_sample_1.xml
>
>
> Currently when Synapse attempts to send a message and if it fails, following actions can be configured to deal with the error:
> * Execute a fault sequence and handle the failed request gracefully
> * Fail-over to a different endpoint
> In addition to these, Synapse ESB should support the "dead letter channel" enterprise integration pattern to deal with various errors that might occur during mediation or while sending. With the dead letter channel, the failed message will be put into a message store in the ESB. Later the ESB can retry to send the messages in the message store. 
> We should be able to have multiple implementations of the actual message store and should be able to configure which store to use for a particular scenario. Users should be able to implement their own message stores and plug into the ESB easily. To start with we can have a simple in-memory message store and a persisting store based on JDBC or JMS. 
> References:
> http://www.eaipatterns.com/DeadLetterChannel.html
> https://issues.apache.org/jira/browse/SYNAPSE-263
> Possible Mentors:
> Hiranya Jayathilaka

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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