synapse-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Isuru Udana Loku Narangoda (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (SYNAPSE-975) Non blocking Callout Mediator (Call Mediator)
Date Sat, 19 Oct 2013 03:33:42 GMT

    [ https://issues.apache.org/jira/browse/SYNAPSE-975?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13799756#comment-13799756
] 

Isuru Udana Loku Narangoda commented on SYNAPSE-975:
----------------------------------------------------

Hi Hiranya,

There are situations where we want to define templates which does a particular task (ex. Login
to Salesforce > Get Account Information) and expose that template as a function module
which can be called from anywhere in the message flow. The one who call this template can
simply call the template and expect to get the result without knowing the underline synapse
configuration of the template.


<sequence>
 <mediator1/>
 <call-template target="Salesforce.getAccounts"/>
 <mediator2/>
 ....
 ....
</sequence> 

Inside the template we have to invoke backend services to call salesforce operations. If we
use the send mediator with receiving sequence within the template, we cannot get the response
back to <mediator2/> 



> Non blocking Callout Mediator (Call Mediator)
> ---------------------------------------------
>
>                 Key: SYNAPSE-975
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-975
>             Project: Synapse
>          Issue Type: New Feature
>            Reporter: Isuru Udana Loku Narangoda
>            Assignee: Hiranya Jayathilaka
>         Attachments: sample440.patch, SYNAPSE-975v2.patch, synapse-configs-for-integration-tests.zip
>
>
> One of the major drawbacks in Callout mediator is, it does not leverage the non-blocking
transports.
> Send mediator which leverages the non-blocking transports, does not provide a simple
way to implement service chaining scenarios.
> Idea of the the Call Mediator is to solve the above two concerns.
> Call Mediator invokes the backend service in an asynchronous manner and return without
waiting for the response.
> Mediation will be paused from that point.
> When response is received, mediation flow resumes from next mediator placed after the
Call Mediator.
> User will experience two major features with the Mediator.
> * Service chaining scenarios will be much easier to implement.
> * Since both request and response can be handled within a single sequence, can define
reusable sequences. 



--
This message was sent by Atlassian JIRA
(v6.1#6144)

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


Mime
View raw message