Re: [Architecture] ESB connector auto generation tool

2016-12-03 Thread Rajjaz Mohammed
Hi Malaka,

On Fri, Dec 2, 2016 at 10:08 AM, Malaka Silva  wrote:

> ​Also this should not be specific to SFDC in future. Should support wsdls
> in general.​
>
>

According to my finding tool is work with general cases(eg:docusign[1])
only it will get fail for special wsdl files like salesforce. Tool is work
if wsdl file in standard format so i'm now  customizing tool to handle
special cases like salesforce partner.wsdl.

[1] https://www.docusign.net/api/3.0/schema/dsapi.wsdl

>
>> [1] https://docs.wso2.com/display/ESBCONNECTORS/ESB+Connector+Au
>> to+Generation+Tool
>>
>> On Fri, Nov 4, 2016 at 7:22 PM, Rajjaz Mohammed  wrote:
>>
>>> Hi Malaka,
>>>
>>> This is the output of the tool for check . Currently I’m working on the
>>> documentation part.
>>>
>>> On Fri, Nov 4, 2016 at 7:08 PM, Malaka Silva  wrote:
>>>
 Hi Rajjaz,

 So phrase 1 is to complete automation of Salesforce custom integration
 with ESB.

 Attaching the configs may not be clear for some one to followup. Can
 you document the steps how we can automate this integration?

 On Fri, Nov 4, 2016 at 6:41 PM, Rajjaz Mohammed 
 wrote:

> Hi All,
>
> I have done the first face of the development and test the connector
> with ESB and it's works as expected. Here with i attached the apex class,
> WSDL ,generated connector source code and the connector zip.
>
> *Authentication is only support for salesforce in current development
> . Later we will extend to other products.
>
> On Fri, Oct 14, 2016 at 6:26 AM, Malaka Silva  wrote:
>
>> I think we should have both options and user can control the behavior.
>>
>> Also we should automate init method for known use cases.
>>
>> On Thu, Oct 13, 2016 at 4:08 PM, Keerthika Mahendralingam <
>> keerth...@wso2.com> wrote:
>>
>>> IMO we need to go ahead with the first approach since there may be
>>> some cases we need to have some additional properties, headers, or host,
>>> etc. which are not common for all connectors. These are depend on the
>>> backend service.
>>>
>>>
>>> Thanks,
>>> Keerthika.
>>>
>>> On Thu, Oct 13, 2016 at 3:55 PM, Rajjaz Mohammed 
>>> wrote:
>>>
 Hi All,

 We have two options in the output of auto-generation tool.

1. source code of the connector
2. connector zip

 If we generate connector zip file directly we can reduce the manual
 works but if we generate the source code from this tool

- add init method manually for authentication
- modify some special cases like adding DISABLE_CHUNKING etc.
- integration test

 WDYT?

 On Wed, Oct 12, 2016 at 3:28 PM, Malaka Silva 
 wrote:

> Yes Authorization is bit tricky and specific to vendors. So we can
> have predefined templates (eg: Salesforce custom web services) and 
> make
> this plug-able?
>
> On Wed, Oct 12, 2016 at 2:44 PM, Rajjaz Mohammed 
> wrote:
>
>> Hi All,
>>
>> I have done some testings on this area for that I created an apex
>> class[1] to create an account in salesforce and tested with simple 
>> java
>> client using WSDL file and it works fine and can able to extract the 
>> common
>> information from WSDL (attached).
>>
>> Our next step will create the connector based on the information
>> extracted from WSDL. But we can only create the synapse template
>> configuration which is general. Another challenge is the 
>> authentication
>> part so we plan to create the init as the separate module  because 
>> it will
>> not same to all connectors.
>>
>> [1]
>>
>> global class ConnectorAutomation{
>> global class RequestClass{
>> webService String accountName;
>> }
>> global class ResponseClass{
>> webService String responseResultID;
>> webService String responseResultName;
>> webService String responseResultRecordType;
>> }
>> webService static ResponseClass addAccount(String name){
>> Account acct = new Account();
>> acct.Name = name;
>> insert acct;
>> ResponseClass resClass = new ResponseClass();
>> resClass.responseResultID = acct.Id;
>> resClass.responseResultName = acct.Name;
>> resClass.responseResultRecordType = acct.AccountNumber;
>> return resClass;
>> }
>> }
>>
>>
>>
>> On Wed, Sep 21, 2016 at 10:41 AM, Malaka Silva 
>> wrote:
>>
>>> Yes Kasun this is 

Re: [Architecture] ESB connector auto generation tool

2016-12-01 Thread Malaka Silva
Just to add we are also planning to do swagger to connector automation in
parallel.

On Thu, Dec 1, 2016 at 5:56 PM, Rajjaz Mohammed  wrote:

> Hi All,
>
> I have released connector automation tool[1] for custom wsdl . Our next
> step is to improve existing tool to support generic wsdl files like
> salesforce partner wsdl.
>
​Also this should not be specific to SFDC in future. Should support wsdls
in general.​


>
> [1] https://docs.wso2.com/display/ESBCONNECTORS/ESB+Connector+
> Auto+Generation+Tool
>
> On Fri, Nov 4, 2016 at 7:22 PM, Rajjaz Mohammed  wrote:
>
>> Hi Malaka,
>>
>> This is the output of the tool for check . Currently I’m working on the
>> documentation part.
>>
>> On Fri, Nov 4, 2016 at 7:08 PM, Malaka Silva  wrote:
>>
>>> Hi Rajjaz,
>>>
>>> So phrase 1 is to complete automation of Salesforce custom integration
>>> with ESB.
>>>
>>> Attaching the configs may not be clear for some one to followup. Can you
>>> document the steps how we can automate this integration?
>>>
>>> On Fri, Nov 4, 2016 at 6:41 PM, Rajjaz Mohammed  wrote:
>>>
 Hi All,

 I have done the first face of the development and test the connector
 with ESB and it's works as expected. Here with i attached the apex class,
 WSDL ,generated connector source code and the connector zip.

 *Authentication is only support for salesforce in current development .
 Later we will extend to other products.

 On Fri, Oct 14, 2016 at 6:26 AM, Malaka Silva  wrote:

> I think we should have both options and user can control the behavior.
>
> Also we should automate init method for known use cases.
>
> On Thu, Oct 13, 2016 at 4:08 PM, Keerthika Mahendralingam <
> keerth...@wso2.com> wrote:
>
>> IMO we need to go ahead with the first approach since there may be
>> some cases we need to have some additional properties, headers, or host,
>> etc. which are not common for all connectors. These are depend on the
>> backend service.
>>
>>
>> Thanks,
>> Keerthika.
>>
>> On Thu, Oct 13, 2016 at 3:55 PM, Rajjaz Mohammed 
>> wrote:
>>
>>> Hi All,
>>>
>>> We have two options in the output of auto-generation tool.
>>>
>>>1. source code of the connector
>>>2. connector zip
>>>
>>> If we generate connector zip file directly we can reduce the manual
>>> works but if we generate the source code from this tool
>>>
>>>- add init method manually for authentication
>>>- modify some special cases like adding DISABLE_CHUNKING etc.
>>>- integration test
>>>
>>> WDYT?
>>>
>>> On Wed, Oct 12, 2016 at 3:28 PM, Malaka Silva 
>>> wrote:
>>>
 Yes Authorization is bit tricky and specific to vendors. So we can
 have predefined templates (eg: Salesforce custom web services) and make
 this plug-able?

 On Wed, Oct 12, 2016 at 2:44 PM, Rajjaz Mohammed 
 wrote:

> Hi All,
>
> I have done some testings on this area for that I created an apex
> class[1] to create an account in salesforce and tested with simple 
> java
> client using WSDL file and it works fine and can able to extract the 
> common
> information from WSDL (attached).
>
> Our next step will create the connector based on the information
> extracted from WSDL. But we can only create the synapse template
> configuration which is general. Another challenge is the 
> authentication
> part so we plan to create the init as the separate module  because it 
> will
> not same to all connectors.
>
> [1]
>
> global class ConnectorAutomation{
> global class RequestClass{
> webService String accountName;
> }
> global class ResponseClass{
> webService String responseResultID;
> webService String responseResultName;
> webService String responseResultRecordType;
> }
> webService static ResponseClass addAccount(String name){
> Account acct = new Account();
> acct.Name = name;
> insert acct;
> ResponseClass resClass = new ResponseClass();
> resClass.responseResultID = acct.Id;
> resClass.responseResultName = acct.Name;
> resClass.responseResultRecordType = acct.AccountNumber;
> return resClass;
> }
> }
>
>
>
> On Wed, Sep 21, 2016 at 10:41 AM, Malaka Silva 
> wrote:
>
>> Yes Kasun this is what our end goal is. We are starting this with
>> soap based services. Also great if you can share any work done to 
>> speed up
>> our r&d.
>>
>> @Ajanthan

Re: [Architecture] ESB connector auto generation tool

2016-12-01 Thread Rajjaz Mohammed
Hi All,

I have released connector automation tool[1] for custom wsdl . Our next
step is to improve existing tool to support generic wsdl files like
salesforce partner wsdl.

[1]
https://docs.wso2.com/display/ESBCONNECTORS/ESB+Connector+Auto+Generation+Tool

On Fri, Nov 4, 2016 at 7:22 PM, Rajjaz Mohammed  wrote:

> Hi Malaka,
>
> This is the output of the tool for check . Currently I’m working on the
> documentation part.
>
> On Fri, Nov 4, 2016 at 7:08 PM, Malaka Silva  wrote:
>
>> Hi Rajjaz,
>>
>> So phrase 1 is to complete automation of Salesforce custom integration
>> with ESB.
>>
>> Attaching the configs may not be clear for some one to followup. Can you
>> document the steps how we can automate this integration?
>>
>> On Fri, Nov 4, 2016 at 6:41 PM, Rajjaz Mohammed  wrote:
>>
>>> Hi All,
>>>
>>> I have done the first face of the development and test the connector
>>> with ESB and it's works as expected. Here with i attached the apex class,
>>> WSDL ,generated connector source code and the connector zip.
>>>
>>> *Authentication is only support for salesforce in current development .
>>> Later we will extend to other products.
>>>
>>> On Fri, Oct 14, 2016 at 6:26 AM, Malaka Silva  wrote:
>>>
 I think we should have both options and user can control the behavior.

 Also we should automate init method for known use cases.

 On Thu, Oct 13, 2016 at 4:08 PM, Keerthika Mahendralingam <
 keerth...@wso2.com> wrote:

> IMO we need to go ahead with the first approach since there may be
> some cases we need to have some additional properties, headers, or host,
> etc. which are not common for all connectors. These are depend on the
> backend service.
>
>
> Thanks,
> Keerthika.
>
> On Thu, Oct 13, 2016 at 3:55 PM, Rajjaz Mohammed 
> wrote:
>
>> Hi All,
>>
>> We have two options in the output of auto-generation tool.
>>
>>1. source code of the connector
>>2. connector zip
>>
>> If we generate connector zip file directly we can reduce the manual
>> works but if we generate the source code from this tool
>>
>>- add init method manually for authentication
>>- modify some special cases like adding DISABLE_CHUNKING etc.
>>- integration test
>>
>> WDYT?
>>
>> On Wed, Oct 12, 2016 at 3:28 PM, Malaka Silva 
>> wrote:
>>
>>> Yes Authorization is bit tricky and specific to vendors. So we can
>>> have predefined templates (eg: Salesforce custom web services) and make
>>> this plug-able?
>>>
>>> On Wed, Oct 12, 2016 at 2:44 PM, Rajjaz Mohammed 
>>> wrote:
>>>
 Hi All,

 I have done some testings on this area for that I created an apex
 class[1] to create an account in salesforce and tested with simple java
 client using WSDL file and it works fine and can able to extract the 
 common
 information from WSDL (attached).

 Our next step will create the connector based on the information
 extracted from WSDL. But we can only create the synapse template
 configuration which is general. Another challenge is the authentication
 part so we plan to create the init as the separate module  because it 
 will
 not same to all connectors.

 [1]

 global class ConnectorAutomation{
 global class RequestClass{
 webService String accountName;
 }
 global class ResponseClass{
 webService String responseResultID;
 webService String responseResultName;
 webService String responseResultRecordType;
 }
 webService static ResponseClass addAccount(String name){
 Account acct = new Account();
 acct.Name = name;
 insert acct;
 ResponseClass resClass = new ResponseClass();
 resClass.responseResultID = acct.Id;
 resClass.responseResultName = acct.Name;
 resClass.responseResultRecordType = acct.AccountNumber;
 return resClass;
 }
 }



 On Wed, Sep 21, 2016 at 10:41 AM, Malaka Silva 
 wrote:

> Yes Kasun this is what our end goal is. We are starting this with
> soap based services. Also great if you can share any work done to 
> speed up
> our r&d.
>
> @Ajanthan
> ​ - Yes we are currently planning to have this a command line
> tool, however this is not yet finalized.​
>
> On Wed, Sep 21, 2016 at 2:09 AM, Kasun Indrasiri 
> wrote:
>
>> Hi Malaka,
>>
>> We did a PoC project on generating a connector based on a given
>> Swagger definition. Is this a similar requirement?
>>
>>

Re: [Architecture] ESB connector auto generation tool

2016-11-04 Thread Malaka Silva
Hi Rajjaz,

So phrase 1 is to complete automation of Salesforce custom integration with
ESB.

Attaching the configs may not be clear for some one to followup. Can you
document the steps how we can automate this integration?

On Fri, Nov 4, 2016 at 6:41 PM, Rajjaz Mohammed  wrote:

> Hi All,
>
> I have done the first face of the development and test the connector with
> ESB and it's works as expected. Here with i attached the apex class, WSDL
> ,generated connector source code and the connector zip.
>
> *Authentication is only support for salesforce in current development .
> Later we will extend to other products.
>
> On Fri, Oct 14, 2016 at 6:26 AM, Malaka Silva  wrote:
>
>> I think we should have both options and user can control the behavior.
>>
>> Also we should automate init method for known use cases.
>>
>> On Thu, Oct 13, 2016 at 4:08 PM, Keerthika Mahendralingam <
>> keerth...@wso2.com> wrote:
>>
>>> IMO we need to go ahead with the first approach since there may be some
>>> cases we need to have some additional properties, headers, or host, etc.
>>> which are not common for all connectors. These are depend on the backend
>>> service.
>>>
>>>
>>> Thanks,
>>> Keerthika.
>>>
>>> On Thu, Oct 13, 2016 at 3:55 PM, Rajjaz Mohammed 
>>> wrote:
>>>
 Hi All,

 We have two options in the output of auto-generation tool.

1. source code of the connector
2. connector zip

 If we generate connector zip file directly we can reduce the manual
 works but if we generate the source code from this tool

- add init method manually for authentication
- modify some special cases like adding DISABLE_CHUNKING etc.
- integration test

 WDYT?

 On Wed, Oct 12, 2016 at 3:28 PM, Malaka Silva  wrote:

> Yes Authorization is bit tricky and specific to vendors. So we can
> have predefined templates (eg: Salesforce custom web services) and make
> this plug-able?
>
> On Wed, Oct 12, 2016 at 2:44 PM, Rajjaz Mohammed 
> wrote:
>
>> Hi All,
>>
>> I have done some testings on this area for that I created an apex
>> class[1] to create an account in salesforce and tested with simple java
>> client using WSDL file and it works fine and can able to extract the 
>> common
>> information from WSDL (attached).
>>
>> Our next step will create the connector based on the information
>> extracted from WSDL. But we can only create the synapse template
>> configuration which is general. Another challenge is the authentication
>> part so we plan to create the init as the separate module  because it 
>> will
>> not same to all connectors.
>>
>> [1]
>>
>> global class ConnectorAutomation{
>> global class RequestClass{
>> webService String accountName;
>> }
>> global class ResponseClass{
>> webService String responseResultID;
>> webService String responseResultName;
>> webService String responseResultRecordType;
>> }
>> webService static ResponseClass addAccount(String name){
>> Account acct = new Account();
>> acct.Name = name;
>> insert acct;
>> ResponseClass resClass = new ResponseClass();
>> resClass.responseResultID = acct.Id;
>> resClass.responseResultName = acct.Name;
>> resClass.responseResultRecordType = acct.AccountNumber;
>> return resClass;
>> }
>> }
>>
>>
>>
>> On Wed, Sep 21, 2016 at 10:41 AM, Malaka Silva 
>> wrote:
>>
>>> Yes Kasun this is what our end goal is. We are starting this with
>>> soap based services. Also great if you can share any work done to speed 
>>> up
>>> our r&d.
>>>
>>> @Ajanthan
>>> ​ - Yes we are currently planning to have this a command line tool,
>>> however this is not yet finalized.​
>>>
>>> On Wed, Sep 21, 2016 at 2:09 AM, Kasun Indrasiri 
>>> wrote:
>>>
 Hi Malaka,

 We did a PoC project on generating a connector based on a given
 Swagger definition. Is this a similar requirement?

 On Tue, Sep 20, 2016 at 10:51 AM, Ajanthan Balachandran <
 ajant...@wso2.com> wrote:

> What do you mean by a tool? Is it command line tool  or maven
> plugin or eclipse plugin?
>
> On Fri, Sep 9, 2016 at 2:07 AM, Rajjaz Mohammed 
> wrote:
>
>>
>> Hi,
>>>
>>> ​We have currently 150+ connectors in store
>>> . Using those we can easily
>>> build integration use cases with WSO2 ESB.
>>>
>>> However there are some apis that resides on premises and
>>> specific to some users. If we need to integrate such services, we 
>>> either
>>> need to manually do the i

Re: [Architecture] ESB connector auto generation tool

2016-11-04 Thread Rajjaz Mohammed
Hi Malaka,

This is the output of the tool for check . Currently I’m working on the
documentation part.

On Fri, Nov 4, 2016 at 7:08 PM, Malaka Silva  wrote:

> Hi Rajjaz,
>
> So phrase 1 is to complete automation of Salesforce custom integration
> with ESB.
>
> Attaching the configs may not be clear for some one to followup. Can you
> document the steps how we can automate this integration?
>
> On Fri, Nov 4, 2016 at 6:41 PM, Rajjaz Mohammed  wrote:
>
>> Hi All,
>>
>> I have done the first face of the development and test the connector with
>> ESB and it's works as expected. Here with i attached the apex class, WSDL
>> ,generated connector source code and the connector zip.
>>
>> *Authentication is only support for salesforce in current development .
>> Later we will extend to other products.
>>
>> On Fri, Oct 14, 2016 at 6:26 AM, Malaka Silva  wrote:
>>
>>> I think we should have both options and user can control the behavior.
>>>
>>> Also we should automate init method for known use cases.
>>>
>>> On Thu, Oct 13, 2016 at 4:08 PM, Keerthika Mahendralingam <
>>> keerth...@wso2.com> wrote:
>>>
 IMO we need to go ahead with the first approach since there may be some
 cases we need to have some additional properties, headers, or host, etc.
 which are not common for all connectors. These are depend on the backend
 service.


 Thanks,
 Keerthika.

 On Thu, Oct 13, 2016 at 3:55 PM, Rajjaz Mohammed 
 wrote:

> Hi All,
>
> We have two options in the output of auto-generation tool.
>
>1. source code of the connector
>2. connector zip
>
> If we generate connector zip file directly we can reduce the manual
> works but if we generate the source code from this tool
>
>- add init method manually for authentication
>- modify some special cases like adding DISABLE_CHUNKING etc.
>- integration test
>
> WDYT?
>
> On Wed, Oct 12, 2016 at 3:28 PM, Malaka Silva  wrote:
>
>> Yes Authorization is bit tricky and specific to vendors. So we can
>> have predefined templates (eg: Salesforce custom web services) and make
>> this plug-able?
>>
>> On Wed, Oct 12, 2016 at 2:44 PM, Rajjaz Mohammed 
>> wrote:
>>
>>> Hi All,
>>>
>>> I have done some testings on this area for that I created an apex
>>> class[1] to create an account in salesforce and tested with simple java
>>> client using WSDL file and it works fine and can able to extract the 
>>> common
>>> information from WSDL (attached).
>>>
>>> Our next step will create the connector based on the information
>>> extracted from WSDL. But we can only create the synapse template
>>> configuration which is general. Another challenge is the authentication
>>> part so we plan to create the init as the separate module  because it 
>>> will
>>> not same to all connectors.
>>>
>>> [1]
>>>
>>> global class ConnectorAutomation{
>>> global class RequestClass{
>>> webService String accountName;
>>> }
>>> global class ResponseClass{
>>> webService String responseResultID;
>>> webService String responseResultName;
>>> webService String responseResultRecordType;
>>> }
>>> webService static ResponseClass addAccount(String name){
>>> Account acct = new Account();
>>> acct.Name = name;
>>> insert acct;
>>> ResponseClass resClass = new ResponseClass();
>>> resClass.responseResultID = acct.Id;
>>> resClass.responseResultName = acct.Name;
>>> resClass.responseResultRecordType = acct.AccountNumber;
>>> return resClass;
>>> }
>>> }
>>>
>>>
>>>
>>> On Wed, Sep 21, 2016 at 10:41 AM, Malaka Silva 
>>> wrote:
>>>
 Yes Kasun this is what our end goal is. We are starting this with
 soap based services. Also great if you can share any work done to 
 speed up
 our r&d.

 @Ajanthan
 ​ - Yes we are currently planning to have this a command line tool,
 however this is not yet finalized.​

 On Wed, Sep 21, 2016 at 2:09 AM, Kasun Indrasiri 
 wrote:

> Hi Malaka,
>
> We did a PoC project on generating a connector based on a given
> Swagger definition. Is this a similar requirement?
>
> On Tue, Sep 20, 2016 at 10:51 AM, Ajanthan Balachandran <
> ajant...@wso2.com> wrote:
>
>> What do you mean by a tool? Is it command line tool  or maven
>> plugin or eclipse plugin?
>>
>> On Fri, Sep 9, 2016 at 2:07 AM, Rajjaz Mohammed 
>> wrote:
>>
>>>
>>> Hi,

 ​We have currently 150+ connectors in store
 

Re: [Architecture] ESB connector auto generation tool

2016-10-13 Thread Malaka Silva
I think we should have both options and user can control the behavior.

Also we should automate init method for known use cases.

On Thu, Oct 13, 2016 at 4:08 PM, Keerthika Mahendralingam <
keerth...@wso2.com> wrote:

> IMO we need to go ahead with the first approach since there may be some
> cases we need to have some additional properties, headers, or host, etc.
> which are not common for all connectors. These are depend on the backend
> service.
>
>
> Thanks,
> Keerthika.
>
> On Thu, Oct 13, 2016 at 3:55 PM, Rajjaz Mohammed  wrote:
>
>> Hi All,
>>
>> We have two options in the output of auto-generation tool.
>>
>>1. source code of the connector
>>2. connector zip
>>
>> If we generate connector zip file directly we can reduce the manual works
>> but if we generate the source code from this tool
>>
>>- add init method manually for authentication
>>- modify some special cases like adding DISABLE_CHUNKING etc.
>>- integration test
>>
>> WDYT?
>>
>> On Wed, Oct 12, 2016 at 3:28 PM, Malaka Silva  wrote:
>>
>>> Yes Authorization is bit tricky and specific to vendors. So we can have
>>> predefined templates (eg: Salesforce custom web services) and make this
>>> plug-able?
>>>
>>> On Wed, Oct 12, 2016 at 2:44 PM, Rajjaz Mohammed 
>>> wrote:
>>>
 Hi All,

 I have done some testings on this area for that I created an apex
 class[1] to create an account in salesforce and tested with simple java
 client using WSDL file and it works fine and can able to extract the common
 information from WSDL (attached).

 Our next step will create the connector based on the information
 extracted from WSDL. But we can only create the synapse template
 configuration which is general. Another challenge is the authentication
 part so we plan to create the init as the separate module  because it will
 not same to all connectors.

 [1]

 global class ConnectorAutomation{
 global class RequestClass{
 webService String accountName;
 }
 global class ResponseClass{
 webService String responseResultID;
 webService String responseResultName;
 webService String responseResultRecordType;
 }
 webService static ResponseClass addAccount(String name){
 Account acct = new Account();
 acct.Name = name;
 insert acct;
 ResponseClass resClass = new ResponseClass();
 resClass.responseResultID = acct.Id;
 resClass.responseResultName = acct.Name;
 resClass.responseResultRecordType = acct.AccountNumber;
 return resClass;
 }
 }



 On Wed, Sep 21, 2016 at 10:41 AM, Malaka Silva  wrote:

> Yes Kasun this is what our end goal is. We are starting this with soap
> based services. Also great if you can share any work done to speed up our
> r&d.
>
> @Ajanthan
> ​ - Yes we are currently planning to have this a command line tool,
> however this is not yet finalized.​
>
> On Wed, Sep 21, 2016 at 2:09 AM, Kasun Indrasiri 
> wrote:
>
>> Hi Malaka,
>>
>> We did a PoC project on generating a connector based on a given
>> Swagger definition. Is this a similar requirement?
>>
>> On Tue, Sep 20, 2016 at 10:51 AM, Ajanthan Balachandran <
>> ajant...@wso2.com> wrote:
>>
>>> What do you mean by a tool? Is it command line tool  or maven plugin
>>> or eclipse plugin?
>>>
>>> On Fri, Sep 9, 2016 at 2:07 AM, Rajjaz Mohammed 
>>> wrote:
>>>

 Hi,
>
> ​We have currently 150+ connectors in store
> . Using those we can easily build
> integration use cases with WSO2 ESB.
>
> However there are some apis that resides on premises and specific
> to some users. If we need to integrate such services, we either need 
> to
> manually do the integration with ESB or develop a connector and use 
> it.
>
> The idea of this project is to automate the development of
> connectors that makes the integration tasks more productive.
>
> So we are planning to start this with soap based connectors and
> move to rest based support later.
>
> For soap based connector generation we basically need to parse the
> wsdl and generate a connector operation per soap operation.
>
> For that we can use WSDL4J. Using this we can get the required
> operations and request/response messages required. Using this 
> information
> we can build the connector operations.(Sequence Templates)
>
> eg:
> String wsdlPath = "/home/wso2/Desktop/ConnectorTest.wsdl";
> WSDLReader reader = javax.wsdl.factory.WSDLFactory
> .newInstance().newWSDLReader();
> javax.

Re: [Architecture] ESB connector auto generation tool

2016-10-13 Thread Keerthika Mahendralingam
IMO we need to go ahead with the first approach since there may be some
cases we need to have some additional properties, headers, or host, etc.
which are not common for all connectors. These are depend on the backend
service.


Thanks,
Keerthika.

On Thu, Oct 13, 2016 at 3:55 PM, Rajjaz Mohammed  wrote:

> Hi All,
>
> We have two options in the output of auto-generation tool.
>
>1. source code of the connector
>2. connector zip
>
> If we generate connector zip file directly we can reduce the manual works
> but if we generate the source code from this tool
>
>- add init method manually for authentication
>- modify some special cases like adding DISABLE_CHUNKING etc.
>- integration test
>
> WDYT?
>
> On Wed, Oct 12, 2016 at 3:28 PM, Malaka Silva  wrote:
>
>> Yes Authorization is bit tricky and specific to vendors. So we can have
>> predefined templates (eg: Salesforce custom web services) and make this
>> plug-able?
>>
>> On Wed, Oct 12, 2016 at 2:44 PM, Rajjaz Mohammed  wrote:
>>
>>> Hi All,
>>>
>>> I have done some testings on this area for that I created an apex
>>> class[1] to create an account in salesforce and tested with simple java
>>> client using WSDL file and it works fine and can able to extract the common
>>> information from WSDL (attached).
>>>
>>> Our next step will create the connector based on the information
>>> extracted from WSDL. But we can only create the synapse template
>>> configuration which is general. Another challenge is the authentication
>>> part so we plan to create the init as the separate module  because it will
>>> not same to all connectors.
>>>
>>> [1]
>>>
>>> global class ConnectorAutomation{
>>> global class RequestClass{
>>> webService String accountName;
>>> }
>>> global class ResponseClass{
>>> webService String responseResultID;
>>> webService String responseResultName;
>>> webService String responseResultRecordType;
>>> }
>>> webService static ResponseClass addAccount(String name){
>>> Account acct = new Account();
>>> acct.Name = name;
>>> insert acct;
>>> ResponseClass resClass = new ResponseClass();
>>> resClass.responseResultID = acct.Id;
>>> resClass.responseResultName = acct.Name;
>>> resClass.responseResultRecordType = acct.AccountNumber;
>>> return resClass;
>>> }
>>> }
>>>
>>>
>>>
>>> On Wed, Sep 21, 2016 at 10:41 AM, Malaka Silva  wrote:
>>>
 Yes Kasun this is what our end goal is. We are starting this with soap
 based services. Also great if you can share any work done to speed up our
 r&d.

 @Ajanthan
 ​ - Yes we are currently planning to have this a command line tool,
 however this is not yet finalized.​

 On Wed, Sep 21, 2016 at 2:09 AM, Kasun Indrasiri 
 wrote:

> Hi Malaka,
>
> We did a PoC project on generating a connector based on a given
> Swagger definition. Is this a similar requirement?
>
> On Tue, Sep 20, 2016 at 10:51 AM, Ajanthan Balachandran <
> ajant...@wso2.com> wrote:
>
>> What do you mean by a tool? Is it command line tool  or maven plugin
>> or eclipse plugin?
>>
>> On Fri, Sep 9, 2016 at 2:07 AM, Rajjaz Mohammed 
>> wrote:
>>
>>>
>>> Hi,

 ​We have currently 150+ connectors in store
 . Using those we can easily build
 integration use cases with WSO2 ESB.

 However there are some apis that resides on premises and specific
 to some users. If we need to integrate such services, we either need to
 manually do the integration with ESB or develop a connector and use it.

 The idea of this project is to automate the development of
 connectors that makes the integration tasks more productive.

 So we are planning to start this with soap based connectors and
 move to rest based support later.

 For soap based connector generation we basically need to parse the
 wsdl and generate a connector operation per soap operation.

 For that we can use WSDL4J. Using this we can get the required
 operations and request/response messages required. Using this 
 information
 we can build the connector operations.(Sequence Templates)

 eg:
 String wsdlPath = "/home/wso2/Desktop/ConnectorTest.wsdl";
 WSDLReader reader = javax.wsdl.factory.WSDLFactory
 .newInstance().newWSDLReader();
 javax.wsdl.Definition defn = reader.readWSDL(wsdlPath);

 Map tmp =
 defn.getAllServices();

 for(javax.xml.namespace.QName  key:tmp.keySet()){
 ServiceImpl serviceImpl = tmp.get(key);
 Map  mPorts = serviceImpl.getPorts();
 for(String k1:mPorts.keySet()){
 PortImpl portImpl = mPorts.get(k1);
 List binding

Re: [Architecture] ESB connector auto generation tool

2016-10-13 Thread Rajjaz Mohammed
Hi All,

We have two options in the output of auto-generation tool.

   1. source code of the connector
   2. connector zip

If we generate connector zip file directly we can reduce the manual works
but if we generate the source code from this tool

   - add init method manually for authentication
   - modify some special cases like adding DISABLE_CHUNKING etc.
   - integration test

WDYT?

On Wed, Oct 12, 2016 at 3:28 PM, Malaka Silva  wrote:

> Yes Authorization is bit tricky and specific to vendors. So we can have
> predefined templates (eg: Salesforce custom web services) and make this
> plug-able?
>
> On Wed, Oct 12, 2016 at 2:44 PM, Rajjaz Mohammed  wrote:
>
>> Hi All,
>>
>> I have done some testings on this area for that I created an apex
>> class[1] to create an account in salesforce and tested with simple java
>> client using WSDL file and it works fine and can able to extract the common
>> information from WSDL (attached).
>>
>> Our next step will create the connector based on the information
>> extracted from WSDL. But we can only create the synapse template
>> configuration which is general. Another challenge is the authentication
>> part so we plan to create the init as the separate module  because it will
>> not same to all connectors.
>>
>> [1]
>>
>> global class ConnectorAutomation{
>> global class RequestClass{
>> webService String accountName;
>> }
>> global class ResponseClass{
>> webService String responseResultID;
>> webService String responseResultName;
>> webService String responseResultRecordType;
>> }
>> webService static ResponseClass addAccount(String name){
>> Account acct = new Account();
>> acct.Name = name;
>> insert acct;
>> ResponseClass resClass = new ResponseClass();
>> resClass.responseResultID = acct.Id;
>> resClass.responseResultName = acct.Name;
>> resClass.responseResultRecordType = acct.AccountNumber;
>> return resClass;
>> }
>> }
>>
>>
>>
>> On Wed, Sep 21, 2016 at 10:41 AM, Malaka Silva  wrote:
>>
>>> Yes Kasun this is what our end goal is. We are starting this with soap
>>> based services. Also great if you can share any work done to speed up our
>>> r&d.
>>>
>>> @Ajanthan
>>> ​ - Yes we are currently planning to have this a command line tool,
>>> however this is not yet finalized.​
>>>
>>> On Wed, Sep 21, 2016 at 2:09 AM, Kasun Indrasiri  wrote:
>>>
 Hi Malaka,

 We did a PoC project on generating a connector based on a given Swagger
 definition. Is this a similar requirement?

 On Tue, Sep 20, 2016 at 10:51 AM, Ajanthan Balachandran <
 ajant...@wso2.com> wrote:

> What do you mean by a tool? Is it command line tool  or maven plugin
> or eclipse plugin?
>
> On Fri, Sep 9, 2016 at 2:07 AM, Rajjaz Mohammed 
> wrote:
>
>>
>> Hi,
>>>
>>> ​We have currently 150+ connectors in store
>>> . Using those we can easily build
>>> integration use cases with WSO2 ESB.
>>>
>>> However there are some apis that resides on premises and specific to
>>> some users. If we need to integrate such services, we either need to
>>> manually do the integration with ESB or develop a connector and use it.
>>>
>>> The idea of this project is to automate the development of
>>> connectors that makes the integration tasks more productive.
>>>
>>> So we are planning to start this with soap based connectors and move
>>> to rest based support later.
>>>
>>> For soap based connector generation we basically need to parse the
>>> wsdl and generate a connector operation per soap operation.
>>>
>>> For that we can use WSDL4J. Using this we can get the required
>>> operations and request/response messages required. Using this 
>>> information
>>> we can build the connector operations.(Sequence Templates)
>>>
>>> eg:
>>> String wsdlPath = "/home/wso2/Desktop/ConnectorTest.wsdl";
>>> WSDLReader reader = javax.wsdl.factory.WSDLFactory
>>> .newInstance().newWSDLReader();
>>> javax.wsdl.Definition defn = reader.readWSDL(wsdlPath);
>>>
>>> Map tmp =
>>> defn.getAllServices();
>>>
>>> for(javax.xml.namespace.QName  key:tmp.keySet()){
>>> ServiceImpl serviceImpl = tmp.get(key);
>>> Map  mPorts = serviceImpl.getPorts();
>>> for(String k1:mPorts.keySet()){
>>> PortImpl portImpl = mPorts.get(k1);
>>> List bindingOperations =
>>> portImpl.getBinding().getBindingOperations();
>>> for(BindingOperationImpl bindingOperation:bindingOperations){
>>> System.out.println("operation:" + bindingOperation.getName());
>>> BindingInput bindingInput = bindingOperation.getBindingInput();
>>> }
>>> }
>>> }
>>> Map messages = defn.getMessages();
>>> Iterator msgIterator = messages.values().iterator();
>>> while (msgIterator.hasNext())

Re: [Architecture] ESB connector auto generation tool

2016-10-12 Thread Malaka Silva
Yes Authorization is bit tricky and specific to vendors. So we can have
predefined templates (eg: Salesforce custom web services) and make this
plug-able?

On Wed, Oct 12, 2016 at 2:44 PM, Rajjaz Mohammed  wrote:

> Hi All,
>
> I have done some testings on this area for that I created an apex class[1]
> to create an account in salesforce and tested with simple java client using
> WSDL file and it works fine and can able to extract the common information
> from WSDL (attached).
>
> Our next step will create the connector based on the information extracted
> from WSDL. But we can only create the synapse template configuration which
> is general. Another challenge is the authentication part so we plan to
> create the init as the separate module  because it will not same to all
> connectors.
>
> [1]
>
> global class ConnectorAutomation{
> global class RequestClass{
> webService String accountName;
> }
> global class ResponseClass{
> webService String responseResultID;
> webService String responseResultName;
> webService String responseResultRecordType;
> }
> webService static ResponseClass addAccount(String name){
> Account acct = new Account();
> acct.Name = name;
> insert acct;
> ResponseClass resClass = new ResponseClass();
> resClass.responseResultID = acct.Id;
> resClass.responseResultName = acct.Name;
> resClass.responseResultRecordType = acct.AccountNumber;
> return resClass;
> }
> }
>
>
>
> On Wed, Sep 21, 2016 at 10:41 AM, Malaka Silva  wrote:
>
>> Yes Kasun this is what our end goal is. We are starting this with soap
>> based services. Also great if you can share any work done to speed up our
>> r&d.
>>
>> @Ajanthan
>> ​ - Yes we are currently planning to have this a command line tool,
>> however this is not yet finalized.​
>>
>> On Wed, Sep 21, 2016 at 2:09 AM, Kasun Indrasiri  wrote:
>>
>>> Hi Malaka,
>>>
>>> We did a PoC project on generating a connector based on a given Swagger
>>> definition. Is this a similar requirement?
>>>
>>> On Tue, Sep 20, 2016 at 10:51 AM, Ajanthan Balachandran <
>>> ajant...@wso2.com> wrote:
>>>
 What do you mean by a tool? Is it command line tool  or maven plugin or
 eclipse plugin?

 On Fri, Sep 9, 2016 at 2:07 AM, Rajjaz Mohammed 
 wrote:

>
> Hi,
>>
>> ​We have currently 150+ connectors in store
>> . Using those we can easily build
>> integration use cases with WSO2 ESB.
>>
>> However there are some apis that resides on premises and specific to
>> some users. If we need to integrate such services, we either need to
>> manually do the integration with ESB or develop a connector and use it.
>>
>> The idea of this project is to automate the development of connectors
>> that makes the integration tasks more productive.
>>
>> So we are planning to start this with soap based connectors and move
>> to rest based support later.
>>
>> For soap based connector generation we basically need to parse the
>> wsdl and generate a connector operation per soap operation.
>>
>> For that we can use WSDL4J. Using this we can get the required
>> operations and request/response messages required. Using this information
>> we can build the connector operations.(Sequence Templates)
>>
>> eg:
>> String wsdlPath = "/home/wso2/Desktop/ConnectorTest.wsdl";
>> WSDLReader reader = javax.wsdl.factory.WSDLFactory
>> .newInstance().newWSDLReader();
>> javax.wsdl.Definition defn = reader.readWSDL(wsdlPath);
>>
>> Map tmp =
>> defn.getAllServices();
>>
>> for(javax.xml.namespace.QName  key:tmp.keySet()){
>> ServiceImpl serviceImpl = tmp.get(key);
>> Map  mPorts = serviceImpl.getPorts();
>> for(String k1:mPorts.keySet()){
>> PortImpl portImpl = mPorts.get(k1);
>> List bindingOperations =
>> portImpl.getBinding().getBindingOperations();
>> for(BindingOperationImpl bindingOperation:bindingOperations){
>> System.out.println("operation:" + bindingOperation.getName());
>> BindingInput bindingInput = bindingOperation.getBindingInput();
>> }
>> }
>> }
>> Map messages = defn.getMessages();
>> Iterator msgIterator = messages.values().iterator();
>> while (msgIterator.hasNext()){
>> Message msg = (Message)msgIterator.next();
>> if (!msg.isUndefined()) {
>>  System.out.println(msg.getQName());
>> }
>> }
>> Thoughts?
>>
>>
> Hi All,
>
> I have the plan to implement ESB connector auto-generation tool. Plase
> add if anything more to above explanation about the tool.
>
> Best Regards,
>>
>> Malaka Silva
>> Senior Technical Lead
>> M: +94 777 219 791
>> Tel : 94 11 214 5345
>> Fax :94 11 2145300
>> Skype : malaka.sampath.silva
>> LinkedIn : http://www.linkedin.co

Re: [Architecture] ESB connector auto generation tool

2016-10-12 Thread Rajjaz Mohammed
Hi All,

I have done some testings on this area for that I created an apex class[1]
to create an account in salesforce and tested with simple java client using
WSDL file and it works fine and can able to extract the common information
from WSDL (attached).

Our next step will create the connector based on the information extracted
from WSDL. But we can only create the synapse template configuration which
is general. Another challenge is the authentication part so we plan to
create the init as the separate module  because it will not same to all
connectors.

[1]

global class ConnectorAutomation{
global class RequestClass{
webService String accountName;
}
global class ResponseClass{
webService String responseResultID;
webService String responseResultName;
webService String responseResultRecordType;
}
webService static ResponseClass addAccount(String name){
Account acct = new Account();
acct.Name = name;
insert acct;
ResponseClass resClass = new ResponseClass();
resClass.responseResultID = acct.Id;
resClass.responseResultName = acct.Name;
resClass.responseResultRecordType = acct.AccountNumber;
return resClass;
}
}



On Wed, Sep 21, 2016 at 10:41 AM, Malaka Silva  wrote:

> Yes Kasun this is what our end goal is. We are starting this with soap
> based services. Also great if you can share any work done to speed up our
> r&d.
>
> @Ajanthan
> ​ - Yes we are currently planning to have this a command line tool,
> however this is not yet finalized.​
>
> On Wed, Sep 21, 2016 at 2:09 AM, Kasun Indrasiri  wrote:
>
>> Hi Malaka,
>>
>> We did a PoC project on generating a connector based on a given Swagger
>> definition. Is this a similar requirement?
>>
>> On Tue, Sep 20, 2016 at 10:51 AM, Ajanthan Balachandran <
>> ajant...@wso2.com> wrote:
>>
>>> What do you mean by a tool? Is it command line tool  or maven plugin or
>>> eclipse plugin?
>>>
>>> On Fri, Sep 9, 2016 at 2:07 AM, Rajjaz Mohammed  wrote:
>>>

 Hi,
>
> ​We have currently 150+ connectors in store
> . Using those we can easily build
> integration use cases with WSO2 ESB.
>
> However there are some apis that resides on premises and specific to
> some users. If we need to integrate such services, we either need to
> manually do the integration with ESB or develop a connector and use it.
>
> The idea of this project is to automate the development of connectors
> that makes the integration tasks more productive.
>
> So we are planning to start this with soap based connectors and move
> to rest based support later.
>
> For soap based connector generation we basically need to parse the
> wsdl and generate a connector operation per soap operation.
>
> For that we can use WSDL4J. Using this we can get the required
> operations and request/response messages required. Using this information
> we can build the connector operations.(Sequence Templates)
>
> eg:
> String wsdlPath = "/home/wso2/Desktop/ConnectorTest.wsdl";
> WSDLReader reader = javax.wsdl.factory.WSDLFactory
> .newInstance().newWSDLReader();
> javax.wsdl.Definition defn = reader.readWSDL(wsdlPath);
>
> Map tmp =
> defn.getAllServices();
>
> for(javax.xml.namespace.QName  key:tmp.keySet()){
> ServiceImpl serviceImpl = tmp.get(key);
> Map  mPorts = serviceImpl.getPorts();
> for(String k1:mPorts.keySet()){
> PortImpl portImpl = mPorts.get(k1);
> List bindingOperations =
> portImpl.getBinding().getBindingOperations();
> for(BindingOperationImpl bindingOperation:bindingOperations){
> System.out.println("operation:" + bindingOperation.getName());
> BindingInput bindingInput = bindingOperation.getBindingInput();
> }
> }
> }
> Map messages = defn.getMessages();
> Iterator msgIterator = messages.values().iterator();
> while (msgIterator.hasNext()){
> Message msg = (Message)msgIterator.next();
> if (!msg.isUndefined()) {
>  System.out.println(msg.getQName());
> }
> }
> Thoughts?
>
>
 Hi All,

 I have the plan to implement ESB connector auto-generation tool. Plase
 add if anything more to above explanation about the tool.

 Best Regards,
>
> Malaka Silva
> Senior Technical Lead
> M: +94 777 219 791
> Tel : 94 11 214 5345
> Fax :94 11 2145300
> Skype : malaka.sampath.silva
> LinkedIn : http://www.linkedin.com/pub/malaka-silva/6/33/77
> Blog : http://mrmalakasilva.blogspot.com/
>
> WSO2, Inc.
> lean . enterprise . middleware
> https://wso2.com/signature
> http://www.wso2.com/about/team/malaka-silva/
> 
> https://store.wso2.com/store/
>
> Don't make Trees rare, we should keep them with care
>



Re: [Architecture] ESB connector auto generation tool

2016-09-20 Thread Malaka Silva
Yes Kasun this is what our end goal is. We are starting this with soap
based services. Also great if you can share any work done to speed up our
r&d.

@Ajanthan
​ - Yes we are currently planning to have this a command line tool, however
this is not yet finalized.​

On Wed, Sep 21, 2016 at 2:09 AM, Kasun Indrasiri  wrote:

> Hi Malaka,
>
> We did a PoC project on generating a connector based on a given Swagger
> definition. Is this a similar requirement?
>
> On Tue, Sep 20, 2016 at 10:51 AM, Ajanthan Balachandran  > wrote:
>
>> What do you mean by a tool? Is it command line tool  or maven plugin or
>> eclipse plugin?
>>
>> On Fri, Sep 9, 2016 at 2:07 AM, Rajjaz Mohammed  wrote:
>>
>>>
>>> Hi,

 ​We have currently 150+ connectors in store
 . Using those we can easily build
 integration use cases with WSO2 ESB.

 However there are some apis that resides on premises and specific to
 some users. If we need to integrate such services, we either need to
 manually do the integration with ESB or develop a connector and use it.

 The idea of this project is to automate the development of connectors
 that makes the integration tasks more productive.

 So we are planning to start this with soap based connectors and move to
 rest based support later.

 For soap based connector generation we basically need to parse the wsdl
 and generate a connector operation per soap operation.

 For that we can use WSDL4J. Using this we can get the required
 operations and request/response messages required. Using this information
 we can build the connector operations.(Sequence Templates)

 eg:
 String wsdlPath = "/home/wso2/Desktop/ConnectorTest.wsdl";
 WSDLReader reader = javax.wsdl.factory.WSDLFactory
 .newInstance().newWSDLReader();
 javax.wsdl.Definition defn = reader.readWSDL(wsdlPath);

 Map tmp =
 defn.getAllServices();

 for(javax.xml.namespace.QName  key:tmp.keySet()){
 ServiceImpl serviceImpl = tmp.get(key);
 Map  mPorts = serviceImpl.getPorts();
 for(String k1:mPorts.keySet()){
 PortImpl portImpl = mPorts.get(k1);
 List bindingOperations =
 portImpl.getBinding().getBindingOperations();
 for(BindingOperationImpl bindingOperation:bindingOperations){
 System.out.println("operation:" + bindingOperation.getName());
 BindingInput bindingInput = bindingOperation.getBindingInput();
 }
 }
 }
 Map messages = defn.getMessages();
 Iterator msgIterator = messages.values().iterator();
 while (msgIterator.hasNext()){
 Message msg = (Message)msgIterator.next();
 if (!msg.isUndefined()) {
  System.out.println(msg.getQName());
 }
 }
 Thoughts?


>>> Hi All,
>>>
>>> I have the plan to implement ESB connector auto-generation tool. Plase
>>> add if anything more to above explanation about the tool.
>>>
>>> Best Regards,

 Malaka Silva
 Senior Technical Lead
 M: +94 777 219 791
 Tel : 94 11 214 5345
 Fax :94 11 2145300
 Skype : malaka.sampath.silva
 LinkedIn : http://www.linkedin.com/pub/malaka-silva/6/33/77
 Blog : http://mrmalakasilva.blogspot.com/

 WSO2, Inc.
 lean . enterprise . middleware
 https://wso2.com/signature
 http://www.wso2.com/about/team/malaka-silva/
 
 https://store.wso2.com/store/

 Don't make Trees rare, we should keep them with care

>>>
>>>
>>>
>>> --
>>> Thank you
>>> Best Regards
>>>
>>> *Rajjaz HM*
>>> Associate Software Engineer
>>> Platform Extension Team
>>> WSO2 Inc. 
>>> lean | enterprise | middleware
>>> Mobile | +94752833834|+94777226874
>>> Email   | raj...@wso2.com
>>> LinkedIn  | Blogger
>>>  | WSO2 Profile
>>> 
>>> [image: https://wso2.com/signature] 
>>>
>>> ___
>>> Architecture mailing list
>>> Architecture@wso2.org
>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>
>>>
>>
>>
>> --
>>
>> Ajanthan
>> Software Engineer;
>> WSO2, Inc.;  http://wso2.com/
>>
>> email: ajanthan @wso2.com; cell: +1 425 919 8630
>> blog: http://bkayts.blogspot.com/
>>
>> Lean . Enterprise . Middleware
>>
>> ___
>> Architecture mailing list
>> Architecture@wso2.org
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>
>
> --
> Kasun Indrasiri
> Director, Integration Technologies
> WSO2, Inc.; http://wso2.com
> lean.enterprise.middleware
>
> cell: +1 650 450 2293
> Blog : http://kasunpanorama.blogspot.com/
>
> ___
> Architecture mailing list
> Architecture@wso2.org
> https://mail.wso2.org/cgi-bin/mailman/listinfo/archi

Re: [Architecture] ESB connector auto generation tool

2016-09-20 Thread Kasun Indrasiri
Hi Malaka,

We did a PoC project on generating a connector based on a given Swagger
definition. Is this a similar requirement?

On Tue, Sep 20, 2016 at 10:51 AM, Ajanthan Balachandran 
wrote:

> What do you mean by a tool? Is it command line tool  or maven plugin or
> eclipse plugin?
>
> On Fri, Sep 9, 2016 at 2:07 AM, Rajjaz Mohammed  wrote:
>
>>
>> Hi,
>>>
>>> ​We have currently 150+ connectors in store
>>> . Using those we can easily build
>>> integration use cases with WSO2 ESB.
>>>
>>> However there are some apis that resides on premises and specific to
>>> some users. If we need to integrate such services, we either need to
>>> manually do the integration with ESB or develop a connector and use it.
>>>
>>> The idea of this project is to automate the development of connectors
>>> that makes the integration tasks more productive.
>>>
>>> So we are planning to start this with soap based connectors and move to
>>> rest based support later.
>>>
>>> For soap based connector generation we basically need to parse the wsdl
>>> and generate a connector operation per soap operation.
>>>
>>> For that we can use WSDL4J. Using this we can get the required
>>> operations and request/response messages required. Using this information
>>> we can build the connector operations.(Sequence Templates)
>>>
>>> eg:
>>> String wsdlPath = "/home/wso2/Desktop/ConnectorTest.wsdl";
>>> WSDLReader reader = javax.wsdl.factory.WSDLFactory
>>> .newInstance().newWSDLReader();
>>> javax.wsdl.Definition defn = reader.readWSDL(wsdlPath);
>>>
>>> Map tmp = defn.getAllServices();
>>>
>>> for(javax.xml.namespace.QName  key:tmp.keySet()){
>>> ServiceImpl serviceImpl = tmp.get(key);
>>> Map  mPorts = serviceImpl.getPorts();
>>> for(String k1:mPorts.keySet()){
>>> PortImpl portImpl = mPorts.get(k1);
>>> List bindingOperations =
>>> portImpl.getBinding().getBindingOperations();
>>> for(BindingOperationImpl bindingOperation:bindingOperations){
>>> System.out.println("operation:" + bindingOperation.getName());
>>> BindingInput bindingInput = bindingOperation.getBindingInput();
>>> }
>>> }
>>> }
>>> Map messages = defn.getMessages();
>>> Iterator msgIterator = messages.values().iterator();
>>> while (msgIterator.hasNext()){
>>> Message msg = (Message)msgIterator.next();
>>> if (!msg.isUndefined()) {
>>>  System.out.println(msg.getQName());
>>> }
>>> }
>>> Thoughts?
>>>
>>>
>> Hi All,
>>
>> I have the plan to implement ESB connector auto-generation tool. Plase
>> add if anything more to above explanation about the tool.
>>
>> Best Regards,
>>>
>>> Malaka Silva
>>> Senior Technical Lead
>>> M: +94 777 219 791
>>> Tel : 94 11 214 5345
>>> Fax :94 11 2145300
>>> Skype : malaka.sampath.silva
>>> LinkedIn : http://www.linkedin.com/pub/malaka-silva/6/33/77
>>> Blog : http://mrmalakasilva.blogspot.com/
>>>
>>> WSO2, Inc.
>>> lean . enterprise . middleware
>>> https://wso2.com/signature
>>> http://www.wso2.com/about/team/malaka-silva/
>>> 
>>> https://store.wso2.com/store/
>>>
>>> Don't make Trees rare, we should keep them with care
>>>
>>
>>
>>
>> --
>> Thank you
>> Best Regards
>>
>> *Rajjaz HM*
>> Associate Software Engineer
>> Platform Extension Team
>> WSO2 Inc. 
>> lean | enterprise | middleware
>> Mobile | +94752833834|+94777226874
>> Email   | raj...@wso2.com
>> LinkedIn  | Blogger
>>  | WSO2 Profile
>> 
>> [image: https://wso2.com/signature] 
>>
>> ___
>> Architecture mailing list
>> Architecture@wso2.org
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>
>
> --
>
> Ajanthan
> Software Engineer;
> WSO2, Inc.;  http://wso2.com/
>
> email: ajanthan @wso2.com; cell: +1 425 919 8630
> blog: http://bkayts.blogspot.com/
>
> Lean . Enterprise . Middleware
>
> ___
> Architecture mailing list
> Architecture@wso2.org
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>
>


-- 
Kasun Indrasiri
Director, Integration Technologies
WSO2, Inc.; http://wso2.com
lean.enterprise.middleware

cell: +1 650 450 2293
Blog : http://kasunpanorama.blogspot.com/
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] ESB connector auto generation tool

2016-09-20 Thread Ajanthan Balachandran
What do you mean by a tool? Is it command line tool  or maven plugin or
eclipse plugin?

On Fri, Sep 9, 2016 at 2:07 AM, Rajjaz Mohammed  wrote:

>
> Hi,
>>
>> ​We have currently 150+ connectors in store
>> . Using those we can easily build
>> integration use cases with WSO2 ESB.
>>
>> However there are some apis that resides on premises and specific to some
>> users. If we need to integrate such services, we either need to manually do
>> the integration with ESB or develop a connector and use it.
>>
>> The idea of this project is to automate the development of connectors
>> that makes the integration tasks more productive.
>>
>> So we are planning to start this with soap based connectors and move to
>> rest based support later.
>>
>> For soap based connector generation we basically need to parse the wsdl
>> and generate a connector operation per soap operation.
>>
>> For that we can use WSDL4J. Using this we can get the required operations
>> and request/response messages required. Using this information we can build
>> the connector operations.(Sequence Templates)
>>
>> eg:
>> String wsdlPath = "/home/wso2/Desktop/ConnectorTest.wsdl";
>> WSDLReader reader = javax.wsdl.factory.WSDLFactory
>> .newInstance().newWSDLReader();
>> javax.wsdl.Definition defn = reader.readWSDL(wsdlPath);
>>
>> Map tmp = defn.getAllServices();
>>
>> for(javax.xml.namespace.QName  key:tmp.keySet()){
>> ServiceImpl serviceImpl = tmp.get(key);
>> Map  mPorts = serviceImpl.getPorts();
>> for(String k1:mPorts.keySet()){
>> PortImpl portImpl = mPorts.get(k1);
>> List bindingOperations =
>> portImpl.getBinding().getBindingOperations();
>> for(BindingOperationImpl bindingOperation:bindingOperations){
>> System.out.println("operation:" + bindingOperation.getName());
>> BindingInput bindingInput = bindingOperation.getBindingInput();
>> }
>> }
>> }
>> Map messages = defn.getMessages();
>> Iterator msgIterator = messages.values().iterator();
>> while (msgIterator.hasNext()){
>> Message msg = (Message)msgIterator.next();
>> if (!msg.isUndefined()) {
>>  System.out.println(msg.getQName());
>> }
>> }
>> Thoughts?
>>
>>
> Hi All,
>
> I have the plan to implement ESB connector auto-generation tool. Plase add
> if anything more to above explanation about the tool.
>
> Best Regards,
>>
>> Malaka Silva
>> Senior Technical Lead
>> M: +94 777 219 791
>> Tel : 94 11 214 5345
>> Fax :94 11 2145300
>> Skype : malaka.sampath.silva
>> LinkedIn : http://www.linkedin.com/pub/malaka-silva/6/33/77
>> Blog : http://mrmalakasilva.blogspot.com/
>>
>> WSO2, Inc.
>> lean . enterprise . middleware
>> https://wso2.com/signature
>> http://www.wso2.com/about/team/malaka-silva/
>> 
>> https://store.wso2.com/store/
>>
>> Don't make Trees rare, we should keep them with care
>>
>
>
>
> --
> Thank you
> Best Regards
>
> *Rajjaz HM*
> Associate Software Engineer
> Platform Extension Team
> WSO2 Inc. 
> lean | enterprise | middleware
> Mobile | +94752833834|+94777226874
> Email   | raj...@wso2.com
> LinkedIn  | Blogger
>  | WSO2 Profile
> 
> [image: https://wso2.com/signature] 
>
> ___
> Architecture mailing list
> Architecture@wso2.org
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>
>


-- 

Ajanthan
Software Engineer;
WSO2, Inc.;  http://wso2.com/

email: ajanthan @wso2.com; cell: +1 425 919 8630
blog: http://bkayts.blogspot.com/

Lean . Enterprise . Middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] ESB connector auto generation tool

2016-09-09 Thread Rajjaz Mohammed
> Hi,
>
> ​We have currently 150+ connectors in store
> . Using those we can easily build
> integration use cases with WSO2 ESB.
>
> However there are some apis that resides on premises and specific to some
> users. If we need to integrate such services, we either need to manually do
> the integration with ESB or develop a connector and use it.
>
> The idea of this project is to automate the development of connectors that
> makes the integration tasks more productive.
>
> So we are planning to start this with soap based connectors and move to
> rest based support later.
>
> For soap based connector generation we basically need to parse the wsdl
> and generate a connector operation per soap operation.
>
> For that we can use WSDL4J. Using this we can get the required operations
> and request/response messages required. Using this information we can build
> the connector operations.(Sequence Templates)
>
> eg:
> String wsdlPath = "/home/wso2/Desktop/ConnectorTest.wsdl";
> WSDLReader reader = javax.wsdl.factory.WSDLFactory
> .newInstance().newWSDLReader();
> javax.wsdl.Definition defn = reader.readWSDL(wsdlPath);
>
> Map tmp = defn.getAllServices();
>
> for(javax.xml.namespace.QName  key:tmp.keySet()){
> ServiceImpl serviceImpl = tmp.get(key);
> Map  mPorts = serviceImpl.getPorts();
> for(String k1:mPorts.keySet()){
> PortImpl portImpl = mPorts.get(k1);
> List bindingOperations =
> portImpl.getBinding().getBindingOperations();
> for(BindingOperationImpl bindingOperation:bindingOperations){
> System.out.println("operation:" + bindingOperation.getName());
> BindingInput bindingInput = bindingOperation.getBindingInput();
> }
> }
> }
> Map messages = defn.getMessages();
> Iterator msgIterator = messages.values().iterator();
> while (msgIterator.hasNext()){
> Message msg = (Message)msgIterator.next();
> if (!msg.isUndefined()) {
>  System.out.println(msg.getQName());
> }
> }
> Thoughts?
>
>
Hi All,

I have the plan to implement ESB connector auto-generation tool. Plase add
if anything more to above explanation about the tool.

Best Regards,
>
> Malaka Silva
> Senior Technical Lead
> M: +94 777 219 791
> Tel : 94 11 214 5345
> Fax :94 11 2145300
> Skype : malaka.sampath.silva
> LinkedIn : http://www.linkedin.com/pub/malaka-silva/6/33/77
> Blog : http://mrmalakasilva.blogspot.com/
>
> WSO2, Inc.
> lean . enterprise . middleware
> https://wso2.com/signature
> http://www.wso2.com/about/team/malaka-silva/
> 
> https://store.wso2.com/store/
>
> Don't make Trees rare, we should keep them with care
>



-- 
Thank you
Best Regards

*Rajjaz HM*
Associate Software Engineer
Platform Extension Team
WSO2 Inc. 
lean | enterprise | middleware
Mobile | +94752833834|+94777226874
Email   | raj...@wso2.com
LinkedIn  | Blogger
 | WSO2 Profile

[image: https://wso2.com/signature] 
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture