On Tue, Jan 19, 2016 at 11:50 AM, Kasun Indrasiri <[email protected]> wrote:

> Hi,
>
> This is a summary of how we support messaging with C5 ESB and GW.
>
> *Carbon Message [1] *
> - This is the generic message representation which contains message
> headers and reference to extract the message body (fully type-aware and no
> canonicalization required)
> - The idea is to use this as the generic message representation across the
> all the products that uses carbon-transport.
>
> *Carbon Transports*
> - Protocol handling layer that converts the wire msg -> carbon message
> (receiving) and carbon-message -> wire msg (sending).
> - The objective is to make sure all products can use same transports with
> generic message representation (without any canonicalized message such as
> SOAP). At the moment with C4, since we don't have a generic message
> representation, different products has to implement their own protocol
> handlers/transports to cater to their specific needs. (eg: ESB, CEP etc.)
>
> *Carbon Message Processor* (API) [2]
> - Any component that want to consume message from transport has to
> implement this and plug that in.
> - We use this mechanism to receive messages into the GW message
> processor/engine through the Netty transport [3].
> - In addition you can use the TransportSender in case if you want to send
> message out from the message processor impl through any protocol.
>
> *CarbonCallback[4] *
> - We don't use in and out flow model any more in the new architecture. So,
> both request and response flows work asynchronously with the use of
> callbacks. (Idea is to later replace this with RxJava)
>
> I think all these things are completely independent from ESB/GW and can be
> used as the generic messaging architecture for C5.
>
> [1]
> https://github.com/wso2/carbon-messaging/blob/master/components/src/main/java/org/wso2/carbon/messaging/CarbonMessage.java
> [2]
> https://github.com/wso2/carbon-messaging/blob/master/components/src/main/java/org/wso2/carbon/messaging/CarbonMessageProcessor.java
>
> [3]
> https://github.com/wso2/product-gw/blob/master/carbon-gw/components/org.wso2.carbon.gateway/src/main/java/org/wso2/carbon/gateway/internal/mediation/camel/CamelMediationEngine.java
>
> [4]
https://github.com/wso2/carbon-messaging/blob/master/components/src/main/java/org/wso2/carbon/messaging/CarbonCallback.java


> @Shafreen/Senduran : Please add if anything else is missing.
>
> Thanks,
> --
> Kasun Indrasiri
> Software Architect
> WSO2, Inc.; http://wso2.com
> lean.enterprise.middleware
>
> cell: +94 77 556 5206
> Blog : http://kasunpanorama.blogspot.com/
>



-- 
Kasun Indrasiri
Software Architect
WSO2, Inc.; http://wso2.com
lean.enterprise.middleware

cell: +94 77 556 5206
Blog : http://kasunpanorama.blogspot.com/
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to