Thanks Hiranaya for the information. However, It may be a killer feature if
we can support the streaming with most of the mediation scenarios even with
some limitations.

Thanks,

Indika

On Tue, Apr 17, 2012 at 8:41 PM, Hiranya Jayathilaka
<hiranya...@gmail.com>wrote:

>
>
> On Tue, Apr 17, 2012 at 3:45 PM, indika kumara <indika.k...@gmail.com>wrote:
>
>> Not sure that it is Impossible. Where are the limitations - ours, XSLT
>> engine, XSLT spec, etc.?
>
>
> It's not one thing Indika. It's many things. Synapse has to work with many
> WS-* modules, XSLT engines, XPath engines, XQuery and other transformation
> engines and much more. Our Axiom representation can work with most of these
> stuff and where that's not possible we can convert it into a standard model
> like DOM or SAX. But the bottom-line is we have to parse the message by
> some means to work with these libraries/APIs. Relay module basically keeps
> the message in a completely un-parsed state. None of the above APIs can
> work with such raw data.
>
> But I agree that for certain selected scenarios we might be able to work
> in the relay mode all the time. In fact I once wrote a STX mediator using
> Joost which can work withe binary representation provided by the message
> relay builder.
>
> Thanks,
> Hiranya
>
>
>>
>> I believe it should be possible. One way may be identifying XML fragments
>> and transform them on the fly by fragment by fragment - read one fragment
>> from input, transform it, and write it to output...I did my self a case
>> study for a specific customer when I was at WSO2. He was happy. Of course,
>> it is just a case study for one user. But, someone should be able to come
>> up with a more generalized and improved solution.
>>
>> I can see some research on this topic. There should be
>> some interesting ideas.
>>
>> http://www.springerlink.com/content/l156j0255347k356/
>> http://www.sciencedirect.com/science/article/pii/S0167642304001194
>> http://dl.acm.org/citation.cfm?id=1042051
>>
>> On Tue, Apr 17, 2012 at 6:38 PM, Hiranya Jayathilaka <
>> hiranya...@gmail.com> wrote:
>>
>>>
>>>
>>> On Tue, Apr 17, 2012 at 10:49 AM, indika kumara 
>>> <indika.k...@gmail.com>wrote:
>>>
>>>> Ohh... I thought we have a solution to get
>>>> or preserve the benefits offered by the binary relay when it is used for
>>>> other mediation scenarios - for example, with some kind of
>>>> on-demand streaming transformation.
>>>
>>>
>>> That's not practically possible. For security to work, Rampart should be
>>> able to find the necessary headers in the SOAP infoset. For XSLT to work
>>> the XSLT engine should be able to parse the given XML infoset. So for these
>>> cases we have to build the message as usual and let the normal processing
>>> take place. What we have implemented is kind of a compiler optimization for
>>> Synapse language, where by looking at the configuration provided we insert
>>> the build instruction to the sequence.
>>>
>>> Thanks,
>>> Hiranya
>>>
>>>
>>>>
>>>>
>>>> ~ Indika
>>>>
>>>> On Tue, Apr 17, 2012 at 2:24 PM, Hiranya Jayathilaka <
>>>> hiranya...@gmail.com> wrote:
>>>>
>>>>> Hi Folks,
>>>>>
>>>>> Just to briefly explain how other messaging scenarios are made to work
>>>>> with the relay:
>>>>>
>>>>> 1. A special handler checks whether security or some other content
>>>>> aware module is engaged on the target service and builds the messages if
>>>>> necessary.
>>>>> 2. Each mediator knows whether they should build the message or not
>>>>> (depending on their configuration). If necessary, mediators will build the
>>>>> message.
>>>>>
>>>>> As a result a sequence such as the following will run in the pure pass
>>>>> through mode:
>>>>>
>>>>> <sequence>
>>>>>     <log/>
>>>>>     <send/>
>>>>> </sequence>
>>>>>
>>>>> Something like the following will cause the message to be built at the
>>>>> log mediator:
>>>>>
>>>>> <sequence>
>>>>>    <log level="full"/>
>>>>>    <send/>
>>>>> </sequence>
>>>>>
>>>>> In the following proxy service, the in-sequence will be in the pass
>>>>> through mode. The out-sequence will build the message at the xslt 
>>>>> mediator:
>>>>>
>>>>> <proxy name="foo">
>>>>>    <target endpoint="bar">
>>>>>       <inSequence>
>>>>>           <log/>
>>>>>       </inSequence>
>>>>>       <outSequence>
>>>>>           <log/>
>>>>>           <xslt key="baz"/>
>>>>>           <send/>
>>>>>       </outSequence>
>>>>>    </target>
>>>>> </proxy>
>>>>>
>>>>> Thanks,
>>>>> Hiranya
>>>>>
>>>>> On Tue, Apr 17, 2012 at 9:32 AM, indika kumara 
>>>>> <indika.k...@gmail.com>wrote:
>>>>>
>>>>>> +1 great donation!  Would love to see the support for any mediation
>>>>>> scenario with it too.
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Indika
>>>>>>
>>>>>>
>>>>>> On Mon, Apr 16, 2012 at 4:17 PM, Hiranya Jayathilaka <
>>>>>> hiranya...@gmail.com> wrote:
>>>>>>
>>>>>>> Hi Folks,
>>>>>>>
>>>>>>> Message relay is a performance enhancer we have developed for WSO2
>>>>>>> ESB. We are now thinking about contributing this code to Synapse. There 
>>>>>>> are
>>>>>>> two main components for this:
>>>>>>>
>>>>>>> 1. A builder-formatter pair for mediating messages without building
>>>>>>> the Axiom infoset
>>>>>>> 2. A new HTTP transport (pass through transport)
>>>>>>>
>>>>>>> These can be used independently of each other. One of the existing
>>>>>>> limitations of this code is that it restricts the scenarios that we can 
>>>>>>> run
>>>>>>> on Synapse to pass through scenarios. But I've been working on making 
>>>>>>> this
>>>>>>> code work with any mediation scenario (transformation, security etc). So
>>>>>>> that way we will be able to run Synapse with these optimizers by default
>>>>>>> and still all the messaging scenarios would work out of the box.
>>>>>>>
>>>>>>> A performance comparison of the current NHTTP transport and the
>>>>>>> above optimizers can be found at [1].
>>>>>>>
>>>>>>> Appreciate your feedback on this.
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Hiranya
>>>>>>>
>>>>>>> [1] -
>>>>>>> http://wso2.org/library/articles/2012/03/performance-benchmarking-wso2-esb-different-message-transfer-mechanisms
>>>>>>>
>>>>>>> --
>>>>>>> Hiranya Jayathilaka
>>>>>>> Associate Technical Lead;
>>>>>>> WSO2 Inc.;  http://wso2.org
>>>>>>> E-mail: hira...@wso2.com;  Mobile: +94 77 633 3491
>>>>>>> Blog: http://techfeast-hiranya.blogspot.com
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Hiranya Jayathilaka
>>>>> Associate Technical Lead;
>>>>> WSO2 Inc.;  http://wso2.org
>>>>> E-mail: hira...@wso2.com;  Mobile: +94 77 633 3491
>>>>> Blog: http://techfeast-hiranya.blogspot.com
>>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> Hiranya Jayathilaka
>>> Associate Technical Lead;
>>> WSO2 Inc.;  http://wso2.org
>>> E-mail: hira...@wso2.com;  Mobile: +94 77 633 3491
>>> Blog: http://techfeast-hiranya.blogspot.com
>>>
>>
>>
>
>
> --
> Hiranya Jayathilaka
> Associate Technical Lead;
> WSO2 Inc.;  http://wso2.org
> E-mail: hira...@wso2.com;  Mobile: +94 77 633 3491
> Blog: http://techfeast-hiranya.blogspot.com
>

Reply via email to