Kasun please don't do org.apace.* for WSO2 written connectors!
On Wed, Jul 31, 2013 at 2:20 PM, Kasun Indrasiri <[email protected]> wrote: > We are in the process of implementing several components which involves > java sdks (twitter), although the class mediator approach works fine, it > seems to introduce some usability issues. > > - Basically, a given class mediator simply get all the required properties > from the message context where property names are hard coded in both > template and class mediator. [1] > > - One possible approach that we can use is to use POJO mediator, so that > we can dynamically resolve the incoming parameters and we could have > minimal java code when implementing our connector. > - We can even get more flexibility with spring mediator as well[2]. > - However, class mediator approach is better when it comes to performance > (since we use reflection in other two approaches). > > - We will do a PoC on these approaches and see how it goes. > > This is a sample config with POJO Mediator > eg: > > package org.apache.twitter; > > import org.apache.synapse.Command; > > public class TwitterInvokeMediator implements Command { > > private String twitterSecrect; > > private String twitterId; > > private String message; > > public void execute() { > > System.out.println("TwitterID :" + twitterId); > > twitterId = "CDE"; > > } > > > public String getTwitterSecrect() { > > return twitterSecrect; > > } > > public void setTwitterSecrect(String twitterSecrect) { > > this.twitterSecrect = twitterSecrect; > > } > > public String getTwitterId() { > > return twitterId; > > } > > public void setTwitterId(String twitterId) { > > this.twitterId = twitterId; > > } > > public String getMessage() { > > return message; > > } > > public void setMessage(String message) { > > this.message = message; > > } > > } > > > Invocation : > > > <pojoCommand name="org.apache.twitter.TwitterInvokeMediator"> > > <axis2ns1:property xmlns:axis2ns1=" > http://ws.apache.org/ns/synapse" > > name="twitterId" > > expression="$ctx:TWID" > > action="ReadMessage"/> > > <axis2ns1:property xmlns:axis2ns1=" > http://ws.apache.org/ns/synapse" > > name="twitterId" > > context-name="updatedID" > > > action="UpdateContext"/> > > </pojoCommand> > > > > [1] > https://svn.wso2.org/repos/wso2/carbon/platform/branches/4.1.0/components/mediation/mediation-library/connectors/org.wso2.carbon.mediation.library.connectors.twitter/4.1.0/src/main/java/org/wso2/carbon/mediation/library/connectors/twitter/TwitterUpdateStatusMediator.java > > [2] > https://svn.wso2.org/repos/wso2/carbon/platform/branches/4.1.0/dependencies/synapse/2.1.1-wso2v3/modules/samples/src/main/java/samples/mediators/extensions/SpringCustomLogger.java > -- > Kasun Indrasiri > Software Architect > WSO2, Inc.; http://wso2.com > lean.enterprise.middleware > > cell: +94 71 536 4128 > Blog : http://kasunpanorama.blogspot.com/ > -- Sanjiva Weerawarana, Ph.D. Founder, Chairman & CEO; WSO2, Inc.; http://wso2.com/ email: [email protected]; phone: +94 11 763 9614; cell: +94 77 787 6880 | +1 650 265 8311 blog: http://sanjiva.weerawarana.org/ Lean . Enterprise . Middleware
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
