Re: [Architecture] Removing Global Queue from MB

2014-07-28 Thread Sajini De Silva
Hi,

There were some changes in the proposed architecture after the discussion
had with Srinath and Shammi today.


   1. There are only queue number of slots. When a message comes A slot
   will be created to the destination queue of the message if it is not
   already created and save in the slot.
   2. We do not assign the whole map to one particular node, but a range of
   the queue will be assigned to subscribers.
   3. There is a high threshold value for the range we assign.
   4. QueueDiliveryWorker checkout the message list from the assigned range
   and deliver the messages to subscribers.
   5. Distributed map should be maintained to keep track of assigned slot
   ranges.

Thank you,
Sajini.


On Mon, Jul 28, 2014 at 9:27 AM, Srinath Perera srin...@wso2.com wrote:

 Hazelcast map is OK, but careful on how often you update that.

 For the limit, shall we keep an integer for each slot in Hazelcast, and
 once for 1000 messages, shall we update the integer and get the new value.
  Then based on that value, we decide slot is full. Slot size limit is a
 soft limit.

 Any slot that is assigned, need not used again (unless subscriber died).
 When assigning slots, choose slots amongs ones that not yet assigned.

 --Srinath



 On Mon, Jul 28, 2014 at 9:20 AM, Sajini De Silva saj...@wso2.com wrote:

 Hi all,

 I started implementing the above mentioned features. There are some
 clarifications need to be made.

- In each node I keep a map to keep track of slot assignments. There
are two possible ways to to that.


1.  Use Hazelcast distributed map.
   2. Keep in-memory map in each node and update the map using
   hazelcast topic message when there is a change in the assignment.

 Which one do you think is better?

- How each node knows when the limit of a slot is exceeded? Currently
what I'm doing is divide the threshold limit by number of nodes and each
node keep track of its own limit. Is this the best way to do this?
- When assigning a slot to a node in my current implementation I take
the all the available slots for a particular queue and get the lowest
numbered slot. If this to work we have to remove slots which have exceeded
their limits in all nodes. Any suggestions to do this or is there a better
way to do this?

 Thank you,

 Sajini.



 On Sun, Jul 27, 2014 at 6:02 PM, Sajini De Silva saj...@wso2.com wrote:

 Hi,

 According to the discussion we had with Srinath there were some changes
 of the above proposal.

1. Instead of having queuesCount X nodeCount number of slots, we
keep infinite number of slots with a limited number of capacity. The
capacity of the slot is configurable.
2. When a message comes to a queue we create a slot and put it in
the slot until the slot exceeds its maximum threshold capacity. When a 
 slot
exceeds its capacity we create a new slot and put the messages there.
3. When a subscriber subscribes from a node, we assign a slot to
that node from free slot pool.
4. If a subscriber disappeared from a node, that subscriber's slot
can be assigned to someone else. No need to copy messages to somewhere
else.

 In this manner messages are not needed to be copied around. Message will
 be write only once and read once.

 Thank you,

 Sajini.


 On Fri, Jul 25, 2014 at 8:56 AM, Srinath Perera srin...@wso2.com
 wrote:

 Challenge is we do not know how many subscriptions the topic would
 receive.

 If we write message to multiple slots .. and only one subscription
 came, we are in trouble. I am inclined to say we write to one slot (slots
 are in Cassandra and so slot can be big) and split them only when there are
 multiple subscriptions.

 We need to discuss more. Can we chat f2f with Shammi and Hasitha and
 others. Key is to minimize the chance of having to do slot merges etc.

 --Srinath


 On Thu, Jul 24, 2014 at 10:09 PM, Sajini De Silva saj...@wso2.com
 wrote:

 Hi Srinath,

 While reading this the question came in to my mind was how this
 addresses the problem we were trying to solve using high and low  water
 mark levels. So I had an offline discussion with Shammi and came up with
 the following solution.

1. When we receive messages, if there is no subscription, rather
than taking the slot and writing all the messages to that slot create
multiple number of slots which have messages up to HWM level.
2. If a queue has subscriptions from multiple nodes, then we will
give it several slots, assign those slots to corresponding nodes. When
distributing messages to those slots copy only messages up to HWM 
 level.

 What do you think?

 Thank you,

 Sajini.




 On Thu, Jul 24, 2014 at 3:09 PM, Srinath Perera srin...@wso2.com
 wrote:

 Currently we use Global queue to handle the scenario where we receive
 messages for a queue that does not have any subscriptions. However, due 
 to
 this large latency is added and message need to copied around lot.

 Shammi and myself 

Re: [Architecture] [Dev] Role based Email notifications on Life-cycle state change of an asset in ES

2014-07-28 Thread Sameera Jayaratna
Hi All,

I have implemented a component for ES to provide the following
functionality,

   1. *Register custom Event Types*
   Currently, Registry provides several events to which users can subscribe
   to. i.e. Create LC, Delete LC, Update, Delete etc. By using custom Event
   Type registration we can introduce new Event Types (i.e. Asset Update, New
   Asset Version Created etc.)
   2. *Subscribe to available Event Types*
   Allows subscribing to available event types via the same options
   provided by the Registry (i.e. e-mail, role profile, user profile etc.)
   3. *Notify a specific event has been triggered*
   Notify the subscribed user of a particular event

The above functionality is implemented based on the Eventing OSGI Service.

The registering of new event types is used to introduce event types that
occur in ES. But we have defined *Store Asset Update* which is similar
to *Resource
Update* in registry and *Store LC State Change* which is similar to *Change
LC State. *It is done as a workaround to customize the message sent when
the above events are triggered.

Any feedback is appreciated.

Thank you,
Sameera


On Fri, Jul 11, 2014 at 5:07 PM, Sameera Jayaratna samee...@wso2.com
wrote:

 Hi All,

 According to the requirement in [1], I am working on implementing the
 $subject.

 *Requirement*

 The requirement is to send an e-mail notification to users with a
 specified role once the lifecycle state of an asset changes. The roles to
 be notified needs to be configured for each state transition. A sample use
 case of the requirement is as follows.

 In Connector Store, once a connector is newly added by a developer, it can
 be promoted to 'In-Review' state. Then all the users with the role
 'reviewer' need to be notified. Once the connector is reviewed and
 transferred to 'Published' state, the developer needs to be notified.

 *Approach*

 As per the discussions I had with Ruchira and SameeraM,

- the roles to be notified in each state transition could be defined
in the lifecycle configuration.
- An executor in ES which will be triggered on lifecycle state change
can be improved to handle email sending.
- implement this feature based on eventing feature in registry

 *Issues*

 We require to send a customized message in the email depending on the
 state transition, asset type etc. Currently, the message body can not be
 customized in registry.

 What could be the best approach in implementing the above feature?

 [1] https://wso2.org/jira/browse/STORE-457

 Thank you,
 Sameera



 --



 *Thanks  Regards, Sameera Jayaratna Software Engineer; **WSO2 Inc. *

 *lean . enterprise . middleware |  http://wso2.com http://wso2.com *




-- 



*Thanks  Regards,Sameera Jayaratna Software Engineer; **WSO2 Inc. *

*lean . enterprise . middleware |  http://wso2.com http://wso2.com *
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] [Dev] Role based Email notifications on Life-cycle state change of an asset in ES

2014-07-28 Thread Senaka Fernando
Hi Sameera,

With regards to the two new event types that you introduced, I think this
is the best workaround possible right now, since the registry events are
not easily customizable. There is one possibility though, [1], but that is
not the most ideal. But, this is something you were aware of?

[1]
https://docs.wso2.com/display/Governance460/Notification+E-mail+Customization+Sample

Thanks,
Senaka.


On Mon, Jul 28, 2014 at 10:16 AM, Sameera Jayaratna samee...@wso2.com
wrote:

 Hi All,

 I have implemented a component for ES to provide the following
 functionality,

1. *Register custom Event Types*
Currently, Registry provides several events to which users can
subscribe to. i.e. Create LC, Delete LC, Update, Delete etc. By using
custom Event Type registration we can introduce new Event Types (i.e. Asset
Update, New Asset Version Created etc.)
2. *Subscribe to available Event Types*
Allows subscribing to available event types via the same options
provided by the Registry (i.e. e-mail, role profile, user profile etc.)
3. *Notify a specific event has been triggered*
Notify the subscribed user of a particular event

 The above functionality is implemented based on the Eventing OSGI Service.

 The registering of new event types is used to introduce event types that
 occur in ES. But we have defined *Store Asset Update* which is similar to 
 *Resource
 Update* in registry and *Store LC State Change* which is similar to *Change
 LC State. *It is done as a workaround to customize the message sent when
 the above events are triggered.

 Any feedback is appreciated.

 Thank you,
 Sameera


 On Fri, Jul 11, 2014 at 5:07 PM, Sameera Jayaratna samee...@wso2.com
 wrote:

 Hi All,

 According to the requirement in [1], I am working on implementing the
 $subject.

 *Requirement*

 The requirement is to send an e-mail notification to users with a
 specified role once the lifecycle state of an asset changes. The roles to
 be notified needs to be configured for each state transition. A sample use
 case of the requirement is as follows.

 In Connector Store, once a connector is newly added by a developer, it
 can be promoted to 'In-Review' state. Then all the users with the role
 'reviewer' need to be notified. Once the connector is reviewed and
 transferred to 'Published' state, the developer needs to be notified.

 *Approach*

 As per the discussions I had with Ruchira and SameeraM,

- the roles to be notified in each state transition could be defined
in the lifecycle configuration.
- An executor in ES which will be triggered on lifecycle state change
can be improved to handle email sending.
- implement this feature based on eventing feature in registry

 *Issues*

 We require to send a customized message in the email depending on the
 state transition, asset type etc. Currently, the message body can not be
 customized in registry.

 What could be the best approach in implementing the above feature?

 [1] https://wso2.org/jira/browse/STORE-457

 Thank you,
 Sameera



 --



 *Thanks  Regards, Sameera Jayaratna Software Engineer; **WSO2 Inc. *

 *lean . enterprise . middleware |  http://wso2.com http://wso2.com *




 --



 *Thanks  Regards,Sameera Jayaratna Software Engineer; **WSO2 Inc. *

 *lean . enterprise . middleware |  http://wso2.com http://wso2.com *




-- 


*[image: http://wso2.com] http://wso2.com Senaka Fernando*
Software Architect; WSO2 Inc.; http://wso2.com



* Member; Apache Software Foundation; http://apache.org
http://apache.orgE-mail: senaka AT wso2.com http://wso2.com**P: +1 408
754 7388; ext: 51736*;


*M: +44 782 741 1966 Linked-In: http://linkedin.com/in/senakafernando
http://linkedin.com/in/senakafernando*Lean . Enterprise . Middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] [Dev] Role based Email notifications on Life-cycle state change of an asset in ES

2014-07-28 Thread Sameera Jayaratna
Hi Senaka,

Thank you for the feedback. :)

Yes, we came across that sample when we started doing this. But after a
discussion with Ruchira it was decided not to follow that method as it is
not ideal.

We also need to send html content in the email. We can set the html
formatted content through the newly created event type, but we need to set
the content type to text/html. The sample mentioned above explains
achieving this via a handler. Is it the best approach for this?

Thank you,
Sameera


On Mon, Jul 28, 2014 at 3:03 PM, Senaka Fernando sen...@wso2.com wrote:

 Hi Sameera,

 With regards to the two new event types that you introduced, I think this
 is the best workaround possible right now, since the registry events are
 not easily customizable. There is one possibility though, [1], but that is
 not the most ideal. But, this is something you were aware of?

 [1]
 https://docs.wso2.com/display/Governance460/Notification+E-mail+Customization+Sample

 Thanks,
 Senaka.


 On Mon, Jul 28, 2014 at 10:16 AM, Sameera Jayaratna samee...@wso2.com
 wrote:

 Hi All,

 I have implemented a component for ES to provide the following
 functionality,

1. *Register custom Event Types*
Currently, Registry provides several events to which users can
subscribe to. i.e. Create LC, Delete LC, Update, Delete etc. By using
custom Event Type registration we can introduce new Event Types (i.e. 
 Asset
Update, New Asset Version Created etc.)
2. *Subscribe to available Event Types*
Allows subscribing to available event types via the same options
provided by the Registry (i.e. e-mail, role profile, user profile etc.)
3. *Notify a specific event has been triggered*
Notify the subscribed user of a particular event

 The above functionality is implemented based on the Eventing OSGI
 Service.

 The registering of new event types is used to introduce event types that
 occur in ES. But we have defined *Store Asset Update* which is similar
 to *Resource Update* in registry and *Store LC State Change* which is
 similar to *Change LC State. *It is done as a workaround to customize
 the message sent when the above events are triggered.

 Any feedback is appreciated.

 Thank you,
 Sameera


 On Fri, Jul 11, 2014 at 5:07 PM, Sameera Jayaratna samee...@wso2.com
 wrote:

 Hi All,

 According to the requirement in [1], I am working on implementing the
 $subject.

 *Requirement*

 The requirement is to send an e-mail notification to users with a
 specified role once the lifecycle state of an asset changes. The roles to
 be notified needs to be configured for each state transition. A sample use
 case of the requirement is as follows.

 In Connector Store, once a connector is newly added by a developer, it
 can be promoted to 'In-Review' state. Then all the users with the role
 'reviewer' need to be notified. Once the connector is reviewed and
 transferred to 'Published' state, the developer needs to be notified.

 *Approach*

 As per the discussions I had with Ruchira and SameeraM,

- the roles to be notified in each state transition could be defined
in the lifecycle configuration.
- An executor in ES which will be triggered on lifecycle state
change can be improved to handle email sending.
- implement this feature based on eventing feature in registry

 *Issues*

 We require to send a customized message in the email depending on the
 state transition, asset type etc. Currently, the message body can not be
 customized in registry.

 What could be the best approach in implementing the above feature?

 [1] https://wso2.org/jira/browse/STORE-457

 Thank you,
 Sameera



 --



 *Thanks  Regards, Sameera Jayaratna Software Engineer; **WSO2 Inc. *

 *lean . enterprise . middleware |  http://wso2.com http://wso2.com *




 --



 *Thanks  Regards,Sameera Jayaratna Software Engineer; **WSO2 Inc. *

 *lean . enterprise . middleware |  http://wso2.com http://wso2.com *




 --


 *[image: http://wso2.com] http://wso2.com Senaka Fernando*
 Software Architect; WSO2 Inc.; http://wso2.com



 * Member; Apache Software Foundation; http://apache.org
 http://apache.orgE-mail: senaka AT wso2.com http://wso2.com**P: +1
 408 754 7388 %2B1%20408%20754%207388; ext: 51736*;


 *M: +44 782 741 1966 %2B44%20782%20741%201966 Linked-In:
 http://linkedin.com/in/senakafernando
 http://linkedin.com/in/senakafernando*Lean . Enterprise . Middleware




-- 



*Thanks  Regards,Sameera Jayaratna Software Engineer; **WSO2 Inc. *

*lean . enterprise . middleware |  http://wso2.com http://wso2.com *
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


[Architecture] [AF] Bring Your Own App type

2014-07-28 Thread Danushka Fernando
Hi All

Problem : App Factory deployers should be able to add application types by
packaging everything in a file. For example to add foo apptype add
foo.apptype archive file and putting it in a location. [1]

Solution : Add a new deployer (Apptype Deployer), which will listen to the
location $CARBON_HOME/repository/deployment/server/apptypes and which will
do the following set of tasks.


   1.

   Explode the zip file.
   2.

   This zip file should contain a xml file such as apptype.xml.
   3.

   There are set of tags that should be in this xml (Mandatory Tags) and
   there could be set of properties which is custom to this apptype.
   4.

   Pre check the availability of the class mentioned as the Application
   Type Processor (Which should be a Mandatory Tags). (This application type
   processor is a customization endpoint provided by App Factory)
   5.

   Copy set of resources files to a named locations.
   6.

   Populate a in memory data structure with the data in the apptype.xml.



[1] https://redmine.wso2.com/issues/2889

Thanks  Regards
Danushka Fernando
Software Engineer
WSO2 inc. http://wso2.com/
Mobile : +94716332729
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] [AF] Bring Your Own App type

2014-07-28 Thread Punnadi Gunarathna
Hi All,

We thought of come-up with an XSD for the apptype.xml and use it to
validate the xml file against the mandatory elements. If apptype.xml is
validated and the result is success then it can be unmarshelled with JAXB.


On Mon, Jul 28, 2014 at 5:33 PM, Danushka Fernando danush...@wso2.com
wrote:

 Hi All

 Problem : App Factory deployers should be able to add application types
 by packaging everything in a file. For example to add foo apptype add
 foo.apptype archive file and putting it in a location. [1]

 Solution : Add a new deployer (Apptype Deployer), which will listen to
 the location $CARBON_HOME/repository/deployment/server/apptypes and which
 will do the following set of tasks.


1.

Explode the zip file.
2.

This zip file should contain a xml file such as apptype.xml.
3.

There are set of tags that should be in this xml (Mandatory Tags) and
there could be set of properties which is custom to this apptype.
4.

Pre check the availability of the class mentioned as the Application
Type Processor (Which should be a Mandatory Tags). (This application type
processor is a customization endpoint provided by App Factory)
5.

Copy set of resources files to a named locations.
6.

Populate a in memory data structure with the data in the apptype.xml.



 [1] https://redmine.wso2.com/issues/2889

 Thanks  Regards
 Danushka Fernando
 Software Engineer
 WSO2 inc. http://wso2.com/
 Mobile : +94716332729

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




-- 
Thanks and Regards,

Punnadi Gunarathna
Senior Software Engineer,
WSO2, Inc.; http://wso2.com http://wso2
Blog: http://hi-my-world.blogspot.com/
Tel : 94 11 214 5345
Fax :94 11 2145300



 http://lalajisureshika.blogspot.com/
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


[Architecture] Running Carbon server inside other servers

2014-07-28 Thread David Morales
Hi,


Is it possible to run carbon server outside standalone mode, in other
application server?

As far as i have read, it is possible:

http://wso2.com/library/articles/stuff-works-wso2-carbon/


But we cant put it to work and we also found some questions on
stackoverflow


No, we stopped supporting webapp deployment in later 4.x.x carbon versions
http://stackoverflow.com/questions/16959326/can-wso2-carbon-4-1-run-as-a-web-app-war/16959521#16959521


Running WSO2 Carbon as web Application in Tomcat.
We stopped supporting webapp deployment in later 4.x.x carbon versions
http://stackoverflow.com/questions/16588575/running-wso2-carbon-as-web-application-in-tomcat


WSO2 Greg Weblogic Deployment
It is not supported later versions of carbon 4.0.0. GREG 4.6.0 using carbon
4.x.x version, so it can not be deployed in weblogic.
http://stackoverflow.com/questions/21292296/wso2-greg-weblogic-deployment/21299747#21299747


We stopped supporting webapp deployment in later 4.x.x carbon versions
https://stackoverflow.com/questions/24950452/can-wso2ues-1-0-carbon-server-run-as-a-web-app



So, is it possible?


Thank you so much.
Regards.
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] [AF] Bring Your Own App type

2014-07-28 Thread Ramith Jayasinghe
I'm not really fond of having a predefined schema for application type xml.
reasons:
 1) in my opinion is too early to figure out what should be in the schema
given that we don't have lot of apptypes (or identified what we will
support in future)
 2) I like to draw an example from Apache Ant. Correct me if im wrong but
they purposely don't have a schema to validate tags in build.xml file. why
? because they if they do they can't introduce any ant tasks/types with out
changing the schema. (- it becomes a bottleneck - and brings a lot of
backward compatibility issues).

What do you guys think?

@Punnadhi: BTW is it possible to have un-Marshal xml if the xml document
contains UN-recognized tags?



On Mon, Jul 28, 2014 at 8:00 PM, Punnadi Gunarathna punn...@wso2.com
wrote:

 Hi All,

 We thought of come-up with an XSD for the apptype.xml and use it to
 validate the xml file against the mandatory elements. If apptype.xml is
 validated and the result is success then it can be unmarshelled with JAXB.


 On Mon, Jul 28, 2014 at 5:33 PM, Danushka Fernando danush...@wso2.com
 wrote:

 Hi All

 Problem : App Factory deployers should be able to add application types
 by packaging everything in a file. For example to add foo apptype add
 foo.apptype archive file and putting it in a location. [1]

 Solution : Add a new deployer (Apptype Deployer), which will listen to
 the location $CARBON_HOME/repository/deployment/server/apptypes and which
 will do the following set of tasks.


1.

Explode the zip file.
2.

This zip file should contain a xml file such as apptype.xml.
3.

There are set of tags that should be in this xml (Mandatory Tags) and
there could be set of properties which is custom to this apptype.
4.

Pre check the availability of the class mentioned as the Application
Type Processor (Which should be a Mandatory Tags). (This application type
processor is a customization endpoint provided by App Factory)
5.

Copy set of resources files to a named locations.
6.

Populate a in memory data structure with the data in the apptype.xml.



 [1] https://redmine.wso2.com/issues/2889

 Thanks  Regards
 Danushka Fernando
 Software Engineer
 WSO2 inc. http://wso2.com/
 Mobile : +94716332729

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




 --
 Thanks and Regards,

 Punnadi Gunarathna
 Senior Software Engineer,
 WSO2, Inc.; http://wso2.com http://wso2
 Blog: http://hi-my-world.blogspot.com/
 Tel : 94 11 214 5345
 Fax :94 11 2145300



  http://lalajisureshika.blogspot.com/

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




-- 
Ramith Jayasinghe
Technical Lead
WSO2 Inc., http://wso2.com
lean.enterprise.middleware

E: ram...@wso2.com
P: +94 777542851
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Jaggery based UI for WS-Human Tasks

2014-07-28 Thread Nandika Jayawardana
Hi Milinda,

we need to come up with a method for form generation to cater for input and
outout, response of human tasks. One option is to use the renderings
element to specify form information and use that to generate the ui.
Additionally, we could provide a way to specify input output and reponse as
Jaggery files like we do with the current jsp model in case renderings are
not defined.

Regards
Nandika


On Mon, Jul 28, 2014 at 10:00 AM, Milinda Perera milin...@wso2.com wrote:

 Hi,


 We are planning to implement Jaggery based UI for WS-Human Tasks [1] in
 BPS.

 Currently BPS doesn't have user interface for WS-HumanTasks separated from
 admin console. So I'm working on developping jaggery based webapp which can
 deploy seperately from the BPS.

 Following diagram depicts the basic architecture.



 The webapp use Admin services (HumanTaskClientAPIAdmin,
 AuthenticationAdmin) provided by BPS to retrieve and update human tasks.

 Functionalities:

-

List tasks assigned to user in the inbox including graphical
representation for task completion progress.
-

List all the task information.
-

Provide all the operations to manipulate tasks.
-

Isolate user interface from BPS.


 Highly appreciate for any suggestions to improve this.


 I will update (including UI design) with the progress.

 [1] https://wso2.org/jira/browse/BPS-527

 Thanks,
 milinda


 --
 Milinda Perera
 Software Engineer;
 WSO2 Inc. http://wso2.com ,
 Mobile: (+94) 714 115 032


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




-- 
Nandika Jayawardana
Senior Technical Lead
WSO2 Inc ; http://wso2.com
lean.enterprise.middleware
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Jaggery based UI for WS-Human Tasks

2014-07-28 Thread Manfred Herrmann
Hi Milinda,

will the BPMN/activiti processes also supported by the jaggery UI for
WS-Human-Tasks?

best regards
Manfred


2014-07-28 19:38 GMT+02:00 Nandika Jayawardana nand...@wso2.com:

 Hi Milinda,

 we need to come up with a method for form generation to cater for input
 and outout, response of human tasks. One option is to use the renderings
 element to specify form information and use that to generate the ui.
 Additionally, we could provide a way to specify input output and reponse as
 Jaggery files like we do with the current jsp model in case renderings
 are not defined.

 Regards
 Nandika


 On Mon, Jul 28, 2014 at 10:00 AM, Milinda Perera milin...@wso2.com
 wrote:

 Hi,


 We are planning to implement Jaggery based UI for WS-Human Tasks [1] in
 BPS.

 Currently BPS doesn’t have user interface for WS-HumanTasks separated
 from admin console. So I’m working on developping jaggery based webapp
 which can deploy seperately from the BPS.

 Following diagram depicts the basic architecture.



 The webapp use Admin services (HumanTaskClientAPIAdmin,
 AuthenticationAdmin) provided by BPS to retrieve and update human tasks.

 Functionalities:

-

List tasks assigned to user in the inbox including graphical
representation for task completion progress.
-

List all the task information.
-

Provide all the operations to manipulate tasks.
-

Isolate user interface from BPS.


 Highly appreciate for any suggestions to improve this.


 I will update (including UI design) with the progress.

 [1] https://wso2.org/jira/browse/BPS-527

 Thanks,
 milinda


 --
 Milinda Perera
 Software Engineer;
 WSO2 Inc. http://wso2.com ,
 Mobile: (+94) 714 115 032


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




 --
 Nandika Jayawardana
 Senior Technical Lead
 WSO2 Inc ; http://wso2.com
 lean.enterprise.middleware

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


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


Re: [Architecture] BPS Performance Test Results

2014-07-28 Thread Firzhan Naqash
Hi,

I have added the plotted graph in the doc [1].

[1]
https://docs.google.com/a/wso2.com/document/d/1aubN2MsPYb-biGIhyVs2KSDs9cQ0D_MdCo-75hFf10A/edit



Regards,
Firzhan


On Mon, Jul 28, 2014 at 10:00 AM, Firzhan Naqash firz...@wso2.com wrote:

 Hi,

 Sorry I was working on NDataSource migration issue. I will update the mail
 thread with relevant plotted graphs by EOD today.

 Regards,
 Firzhan


 On Mon, Jul 28, 2014 at 9:53 AM, Srinath Perera srin...@wso2.com wrote:

 ping


 On Mon, Jul 21, 2014 at 3:06 PM, Srinath Perera srin...@wso2.com wrote:

 Could we plot this by scenario pls?


 On Mon, Jul 21, 2014 at 2:43 PM, Firzhan Naqash firz...@wso2.com
 wrote:


 Hi,

 Following scenarios are considered for the BPS performance testing.


 BPEL Processes
 

 1. In-memory process with external service invocation

 2. Persistent synchronous process with external service invocation

 3. Persistent asynchronous process with external service invocation and
 callback

 Human Tasks
 ==

 4. Human Task Creation

 5. Persistent BPEL process invoking a human task

 BPMN Processes
 ==

 6. BPMN process with  In memory database
 7. BPMN process with persistence



 The tests related to BPEL are done using EC2 instances and the other
 tests are done in the localhost.

 I have shared the numbers in following excel sheet.


 https://docs.google.com/a/wso2.com/spreadsheets/d/1kzxzfGd55KCCFz_0i1LVIsxVd3x7oYEVG5OFUe3mtVw/edit#gid=0

 Regards,
 Firzhan




 --
 
 Director, Research, WSO2 Inc.
 Visiting Faculty, University of Moratuwa
 Member, Apache Software Foundation
 Research Scientist, Lanka Software Foundation
 Blog: http://srinathsview.blogspot.com twitter:@srinath_perera
 Site: http://people.apache.org/~hemapani/
 Photos: http://www.flickr.com/photos/hemapani/
 Phone: 0772360902

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




 --
 
 Srinath Perera, Ph.D.
http://people.apache.org/~hemapani/
http://srinathsview.blogspot.com/



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


Re: [Architecture] [AF] Bring Your Own App type

2014-07-28 Thread Dimuthu Leelarathne
Hi all,

Thinking about the range of apps that we'll be supporting, I believe the
mandatory tags will be very minimal(one or two or else). So I am +1 not
doing the schema validation yet.

If we use any standard parser it will properly give out any unrecognised
tags.

thanks,
dimuthu


On Mon, Jul 28, 2014 at 10:46 PM, Ramith Jayasinghe ram...@wso2.com wrote:

 I'm not really fond of having a predefined schema for application type
 xml. reasons:
  1) in my opinion is too early to figure out what should be in the schema
 given that we don't have lot of apptypes (or identified what we will
 support in future)
  2) I like to draw an example from Apache Ant. Correct me if im wrong but
 they purposely don't have a schema to validate tags in build.xml file. why
 ? because they if they do they can't introduce any ant tasks/types with out
 changing the schema. (- it becomes a bottleneck - and brings a lot of
 backward compatibility issues).

 What do you guys think?

 @Punnadhi: BTW is it possible to have un-Marshal xml if the xml document
 contains UN-recognized tags?



 On Mon, Jul 28, 2014 at 8:00 PM, Punnadi Gunarathna punn...@wso2.com
 wrote:

 Hi All,

 We thought of come-up with an XSD for the apptype.xml and use it to
 validate the xml file against the mandatory elements. If apptype.xml is
 validated and the result is success then it can be unmarshelled with JAXB.


 On Mon, Jul 28, 2014 at 5:33 PM, Danushka Fernando danush...@wso2.com
 wrote:

 Hi All

 Problem : App Factory deployers should be able to add application types
 by packaging everything in a file. For example to add foo apptype add
 foo.apptype archive file and putting it in a location. [1]

 Solution : Add a new deployer (Apptype Deployer), which will listen to
 the location $CARBON_HOME/repository/deployment/server/apptypes and which
 will do the following set of tasks.


1.

Explode the zip file.
2.

This zip file should contain a xml file such as apptype.xml.
3.

There are set of tags that should be in this xml (Mandatory Tags)
and there could be set of properties which is custom to this apptype.
4.

Pre check the availability of the class mentioned as the Application
Type Processor (Which should be a Mandatory Tags). (This application type
processor is a customization endpoint provided by App Factory)
5.

Copy set of resources files to a named locations.
6.

Populate a in memory data structure with the data in the apptype.xml.



 [1] https://redmine.wso2.com/issues/2889

 Thanks  Regards
 Danushka Fernando
 Software Engineer
 WSO2 inc. http://wso2.com/
 Mobile : +94716332729

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




 --
 Thanks and Regards,

 Punnadi Gunarathna
 Senior Software Engineer,
 WSO2, Inc.; http://wso2.com http://wso2
 Blog: http://hi-my-world.blogspot.com/
 Tel : 94 11 214 5345
 Fax :94 11 2145300



  http://lalajisureshika.blogspot.com/

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




 --
 Ramith Jayasinghe
 Technical Lead
 WSO2 Inc., http://wso2.com
 lean.enterprise.middleware

 E: ram...@wso2.com
 P: +94 777542851


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




-- 
Dimuthu Leelarathne
Architect  Product Lead of App Factory

WSO2, Inc. (http://wso2.com)
email: dimut...@wso2.com
Mobile : 0773661935

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


[Architecture] More developer friendly application home and improving collaborative nature

2014-07-28 Thread Gayan Dhanushka
Hi,

*Suggestion 01*

Currently we have a application home which shows some basic information
about an application like name, icon, app type, owner, description, repo
url and information associated with versions and their current status. In
1.0.0 we had more information like team composition and resources. But in
the usability improvement process done for 2.0.0 we removed them. In my
point of view the application home should have a snapshot of the
application. It should summarize the information that all the other tabs in
the application show in detail. Currently we only have repos and build
information and issue summary only. What about re adding team, resources
and lifecycle info summary to the application home page? IMO information
related to fork repos should not go in there since it is more of a user
specific thing.

*Suggestion 02*

Currently we do not publish git commit information to cassandra. Hence we
don't see any commit information on the application wall. I would suggest
this to be added and it will definitely improve the collaborative nature.
We can use the git post commit hook that we have now to publish commit
information. This will make sure that the developer knows when the last
update was made to the master repository.

WDYT ?

Thanks
GayanD

Gayan Dhanuska
Software Engineer
http://wso2.com/
Lean Enterprise Middleware

Mobile
071 666 2327

Office
Tel   : 94 11 214 5345
Fax  : 94 11 214 5300

Twitter : https://twitter.com/gayanlggd
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] Running Carbon server inside other servers

2014-07-28 Thread Gayashan Amarasinghe
Hi David,

The article you have linked at [1] is based on Carbon 1.5.1, which makes it
obsolete since the latest released Carbon version as of this moment is
4.2.0. Therefore it has undergone quite a lot of architectural changes when
you compare it with v1.5.1. And as all the stackoverflow answers you've
mentioned suggest, we have stopped supporting deploying Carbon server as a
webapp from 4.x.x Carbon versions and we highly discourage doing so as
well.

However, even if you get it working by following steps similar to [2],
again i would have to emphasize that it is not supported and you will face
the similar limitations mentioned at [3] which may outweigh the benefits
you are trying to achieve using another deployment server.

May I please ask what you are trying to achieve, so we might be able to
help you out in some other way.

[1] http://wso2.com/library/articles/stuff-works-wso2-carbon/
[2]
http://pradeepfernando.blogspot.com/2012/09/running-wso2-carbon-as-web-app-apache.html
[3]
http://stackoverflow.com/questions/17122096/limitations-of-running-wso2-carbon-4-x-and-wso2-carbon-based-products-in-webapp

Thanks.

/Gayashan


On Mon, Jul 28, 2014 at 8:38 PM, David Morales dmora...@stratio.com wrote:

 Hi,


 Is it possible to run carbon server outside standalone mode, in other
 application server?

 As far as i have read, it is possible:

  http://wso2.com/library/articles/stuff-works-wso2-carbon/


 But we cant put it to work and we also found some questions on
 stackoverflow


 No, we stopped supporting webapp deployment in later 4.x.x carbon
 versions

 http://stackoverflow.com/questions/16959326/can-wso2-carbon-4-1-run-as-a-web-app-war/16959521#16959521


 Running WSO2 Carbon as web Application in Tomcat.
 We stopped supporting webapp deployment in later 4.x.x carbon versions

 http://stackoverflow.com/questions/16588575/running-wso2-carbon-as-web-application-in-tomcat


 WSO2 Greg Weblogic Deployment
 It is not supported later versions of carbon 4.0.0. GREG 4.6.0 using
 carbon 4.x.x version, so it can not be deployed in weblogic.

 http://stackoverflow.com/questions/21292296/wso2-greg-weblogic-deployment/21299747#21299747


 We stopped supporting webapp deployment in later 4.x.x carbon versions

 https://stackoverflow.com/questions/24950452/can-wso2ues-1-0-carbon-server-run-as-a-web-app



 So, is it possible?


 Thank you so much.
 Regards.


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




-- 
*Gayashan Amarasinghe*
Software Engineer | Platform TG
WSO2, Inc. | http://wso2.com
lean. enterprise. middleware

Mobile : +94718314517
Blog : gayashan-a.blogspot.com
___
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture


Re: [Architecture] [AF] Bring Your Own App type

2014-07-28 Thread Danushka Fernando
HI Dimuthu
There are several mandatory tags like app type name, description, and
application type processor. These are used in our code / jaggery apps. But
there could be other tags which are not mandatory and also specific to
certain app types which are used inside the application type processor.

Thanks  Regards
Danushka Fernando
Software Engineer
WSO2 inc. http://wso2.com/
Mobile : +94716332729


On Tue, Jul 29, 2014 at 8:45 AM, Dimuthu Leelarathne dimut...@wso2.com
wrote:

 Hi all,

 Thinking about the range of apps that we'll be supporting, I believe the
 mandatory tags will be very minimal(one or two or else). So I am +1 not
 doing the schema validation yet.

 If we use any standard parser it will properly give out any unrecognised
 tags.

 thanks,
 dimuthu


 On Mon, Jul 28, 2014 at 10:46 PM, Ramith Jayasinghe ram...@wso2.com
 wrote:

 I'm not really fond of having a predefined schema for application type
 xml. reasons:
  1) in my opinion is too early to figure out what should be in the schema
 given that we don't have lot of apptypes (or identified what we will
 support in future)
  2) I like to draw an example from Apache Ant. Correct me if im wrong but
 they purposely don't have a schema to validate tags in build.xml file. why
 ? because they if they do they can't introduce any ant tasks/types with out
 changing the schema. (- it becomes a bottleneck - and brings a lot of
 backward compatibility issues).

 What do you guys think?

 @Punnadhi: BTW is it possible to have un-Marshal xml if the xml document
 contains UN-recognized tags?



 On Mon, Jul 28, 2014 at 8:00 PM, Punnadi Gunarathna punn...@wso2.com
 wrote:

 Hi All,

 We thought of come-up with an XSD for the apptype.xml and use it to
 validate the xml file against the mandatory elements. If apptype.xml is
 validated and the result is success then it can be unmarshelled with JAXB.


 On Mon, Jul 28, 2014 at 5:33 PM, Danushka Fernando danush...@wso2.com
 wrote:

 Hi All

 Problem : App Factory deployers should be able to add application
 types by packaging everything in a file. For example to add foo apptype add
 foo.apptype archive file and putting it in a location. [1]

 Solution : Add a new deployer (Apptype Deployer), which will listen to
 the location $CARBON_HOME/repository/deployment/server/apptypes and which
 will do the following set of tasks.


1.

Explode the zip file.
2.

This zip file should contain a xml file such as apptype.xml.
3.

There are set of tags that should be in this xml (Mandatory Tags)
and there could be set of properties which is custom to this apptype.
4.

Pre check the availability of the class mentioned as the
Application Type Processor (Which should be a Mandatory Tags). (This
application type processor is a customization endpoint provided by App
Factory)
5.

Copy set of resources files to a named locations.
6.

Populate a in memory data structure with the data in the
apptype.xml.



 [1] https://redmine.wso2.com/issues/2889

 Thanks  Regards
 Danushka Fernando
 Software Engineer
 WSO2 inc. http://wso2.com/
 Mobile : +94716332729

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




 --
 Thanks and Regards,

 Punnadi Gunarathna
 Senior Software Engineer,
 WSO2, Inc.; http://wso2.com http://wso2
 Blog: http://hi-my-world.blogspot.com/
 Tel : 94 11 214 5345
 Fax :94 11 2145300



  http://lalajisureshika.blogspot.com/

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




 --
 Ramith Jayasinghe
 Technical Lead
 WSO2 Inc., http://wso2.com
 lean.enterprise.middleware

 E: ram...@wso2.com
 P: +94 777542851


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




 --
 Dimuthu Leelarathne
 Architect  Product Lead of App Factory

 WSO2, Inc. (http://wso2.com)
 email: dimut...@wso2.com
 Mobile : 0773661935

 Lean . Enterprise . Middleware

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


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


Re: [Architecture] [AF] Bring Your Own App type

2014-07-28 Thread Gayan Dhanushka
Hi Danushka,

Does all the app types contain a certain set of mandatory tags? I think we
will have different mandatory tags according to different app types. So it
is not good to be base on a few mandatory tags for each app type. Hence
shouldn't we have a different validation mechanism for each application
type?

GayanD

Gayan Dhanuska
Software Engineer
http://wso2.com/
Lean Enterprise Middleware

Mobile
071 666 2327

Office
Tel   : 94 11 214 5345
Fax  : 94 11 214 5300

Twitter : https://twitter.com/gayanlggd


On Tue, Jul 29, 2014 at 10:30 AM, Danushka Fernando danush...@wso2.com
wrote:

 HI Dimuthu
 There are several mandatory tags like app type name, description, and
 application type processor. These are used in our code / jaggery apps. But
 there could be other tags which are not mandatory and also specific to
 certain app types which are used inside the application type processor.

 Thanks  Regards
 Danushka Fernando
 Software Engineer
 WSO2 inc. http://wso2.com/
 Mobile : +94716332729


 On Tue, Jul 29, 2014 at 8:45 AM, Dimuthu Leelarathne dimut...@wso2.com
 wrote:

 Hi all,

 Thinking about the range of apps that we'll be supporting, I believe the
 mandatory tags will be very minimal(one or two or else). So I am +1 not
 doing the schema validation yet.

 If we use any standard parser it will properly give out any unrecognised
 tags.

 thanks,
 dimuthu


 On Mon, Jul 28, 2014 at 10:46 PM, Ramith Jayasinghe ram...@wso2.com
 wrote:

 I'm not really fond of having a predefined schema for application type
 xml. reasons:
  1) in my opinion is too early to figure out what should be in the
 schema given that we don't have lot of apptypes (or identified what we will
 support in future)
  2) I like to draw an example from Apache Ant. Correct me if im wrong
 but they purposely don't have a schema to validate tags in build.xml file.
 why ? because they if they do they can't introduce any ant tasks/types with
 out changing the schema. (- it becomes a bottleneck - and brings a lot of
 backward compatibility issues).

 What do you guys think?

 @Punnadhi: BTW is it possible to have un-Marshal xml if the xml document
 contains UN-recognized tags?



 On Mon, Jul 28, 2014 at 8:00 PM, Punnadi Gunarathna punn...@wso2.com
 wrote:

 Hi All,

 We thought of come-up with an XSD for the apptype.xml and use it to
 validate the xml file against the mandatory elements. If apptype.xml is
 validated and the result is success then it can be unmarshelled with JAXB.


 On Mon, Jul 28, 2014 at 5:33 PM, Danushka Fernando danush...@wso2.com
 wrote:

 Hi All

 Problem : App Factory deployers should be able to add application
 types by packaging everything in a file. For example to add foo apptype 
 add
 foo.apptype archive file and putting it in a location. [1]

 Solution : Add a new deployer (Apptype Deployer), which will listen
 to the location $CARBON_HOME/repository/deployment/server/apptypes and
 which will do the following set of tasks.


1.

Explode the zip file.
2.

This zip file should contain a xml file such as apptype.xml.
3.

There are set of tags that should be in this xml (Mandatory Tags)
and there could be set of properties which is custom to this apptype.
4.

Pre check the availability of the class mentioned as the
Application Type Processor (Which should be a Mandatory Tags). (This
application type processor is a customization endpoint provided by App
Factory)
5.

Copy set of resources files to a named locations.
6.

Populate a in memory data structure with the data in the
apptype.xml.



 [1] https://redmine.wso2.com/issues/2889

 Thanks  Regards
 Danushka Fernando
 Software Engineer
 WSO2 inc. http://wso2.com/
 Mobile : +94716332729

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




 --
 Thanks and Regards,

 Punnadi Gunarathna
 Senior Software Engineer,
 WSO2, Inc.; http://wso2.com http://wso2
 Blog: http://hi-my-world.blogspot.com/
 Tel : 94 11 214 5345
 Fax :94 11 2145300



  http://lalajisureshika.blogspot.com/

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




 --
 Ramith Jayasinghe
 Technical Lead
 WSO2 Inc., http://wso2.com
 lean.enterprise.middleware

 E: ram...@wso2.com
 P: +94 777542851


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




 --
 Dimuthu Leelarathne
 Architect  Product Lead of App Factory

 WSO2, Inc. (http://wso2.com)
 email: dimut...@wso2.com
 Mobile : 0773661935

 Lean . Enterprise . Middleware

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



 

Re: [Architecture] [AF] Bring Your Own App type

2014-07-28 Thread Danushka Fernando
Hi Gayan
These mandatory tags I mentioned are used in the common code which should
be same to all app types. Check my previous mail.

Thanks  Regards
Danushka Fernando
Software Engineer
WSO2 inc. http://wso2.com/
Mobile : +94716332729


On Tue, Jul 29, 2014 at 10:40 AM, Gayan Dhanushka gay...@wso2.com wrote:

 Hi Danushka,

 Does all the app types contain a certain set of mandatory tags? I think we
 will have different mandatory tags according to different app types. So it
 is not good to be base on a few mandatory tags for each app type. Hence
 shouldn't we have a different validation mechanism for each application
 type?

 GayanD

 Gayan Dhanuska
 Software Engineer
 http://wso2.com/
 Lean Enterprise Middleware

 Mobile
 071 666 2327

 Office

 Tel   : 94 11 214 5345
 Fax  : 94 11 214 5300

 Twitter : https://twitter.com/gayanlggd


 On Tue, Jul 29, 2014 at 10:30 AM, Danushka Fernando danush...@wso2.com
 wrote:

 HI Dimuthu
 There are several mandatory tags like app type name, description, and
 application type processor. These are used in our code / jaggery apps. But
 there could be other tags which are not mandatory and also specific to
 certain app types which are used inside the application type processor.

 Thanks  Regards
 Danushka Fernando
 Software Engineer
 WSO2 inc. http://wso2.com/
 Mobile : +94716332729


 On Tue, Jul 29, 2014 at 8:45 AM, Dimuthu Leelarathne dimut...@wso2.com
 wrote:

 Hi all,

 Thinking about the range of apps that we'll be supporting, I believe the
 mandatory tags will be very minimal(one or two or else). So I am +1 not
 doing the schema validation yet.

 If we use any standard parser it will properly give out any unrecognised
 tags.

 thanks,
 dimuthu


 On Mon, Jul 28, 2014 at 10:46 PM, Ramith Jayasinghe ram...@wso2.com
 wrote:

 I'm not really fond of having a predefined schema for application type
 xml. reasons:
  1) in my opinion is too early to figure out what should be in the
 schema given that we don't have lot of apptypes (or identified what we will
 support in future)
  2) I like to draw an example from Apache Ant. Correct me if im wrong
 but they purposely don't have a schema to validate tags in build.xml file.
 why ? because they if they do they can't introduce any ant tasks/types with
 out changing the schema. (- it becomes a bottleneck - and brings a lot of
 backward compatibility issues).

 What do you guys think?

 @Punnadhi: BTW is it possible to have un-Marshal xml if the xml
 document contains UN-recognized tags?



 On Mon, Jul 28, 2014 at 8:00 PM, Punnadi Gunarathna punn...@wso2.com
 wrote:

 Hi All,

 We thought of come-up with an XSD for the apptype.xml and use it to
 validate the xml file against the mandatory elements. If apptype.xml is
 validated and the result is success then it can be unmarshelled with JAXB.


 On Mon, Jul 28, 2014 at 5:33 PM, Danushka Fernando danush...@wso2.com
  wrote:

 Hi All

 Problem : App Factory deployers should be able to add application
 types by packaging everything in a file. For example to add foo apptype 
 add
 foo.apptype archive file and putting it in a location. [1]

 Solution : Add a new deployer (Apptype Deployer), which will listen
 to the location $CARBON_HOME/repository/deployment/server/apptypes and
 which will do the following set of tasks.


1.

Explode the zip file.
2.

This zip file should contain a xml file such as apptype.xml.
3.

There are set of tags that should be in this xml (Mandatory Tags)
and there could be set of properties which is custom to this apptype.
4.

Pre check the availability of the class mentioned as the
Application Type Processor (Which should be a Mandatory Tags). (This
application type processor is a customization endpoint provided by App
Factory)
5.

Copy set of resources files to a named locations.
6.

Populate a in memory data structure with the data in the
apptype.xml.



 [1] https://redmine.wso2.com/issues/2889

 Thanks  Regards
 Danushka Fernando
 Software Engineer
 WSO2 inc. http://wso2.com/
 Mobile : +94716332729

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




 --
 Thanks and Regards,

 Punnadi Gunarathna
 Senior Software Engineer,
 WSO2, Inc.; http://wso2.com http://wso2
 Blog: http://hi-my-world.blogspot.com/
 Tel : 94 11 214 5345
 Fax :94 11 2145300



  http://lalajisureshika.blogspot.com/

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




 --
 Ramith Jayasinghe
 Technical Lead
 WSO2 Inc., http://wso2.com
 lean.enterprise.middleware

 E: ram...@wso2.com
 P: +94 777542851


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




 --
 Dimuthu Leelarathne
 Architect  

Re: [Architecture] Implementing Http Inbound Endpoint Using Netty-IO

2014-07-28 Thread Isuru Ranawaka
Hi all,
HTTP Inbound Implementation using HTTP Core has been almost
completed and Integration Tests and Documentation has to be done.High Level
Implementation details as follows.


   - DefaultListeningIOReactor  is started when ESB starts with
   InboundConfigurations.Same IOReactor is shared among all the inbound
   Endpoints.
   - IOReactor is listen for ports specified in inbound endpoints.
   - Diffrent InboundSourceHandlers are registered with
   MulitlisternIODispatcher with their ports.
   - MultilistnerIODispatcher is capable of dispatching HTTP Requests  to
   relevant Handlers.
   - InboundSourceHandlers create InboundHttpSourceRequest which is
   representation of   HTTP Request received and Pass it to the
   InboundRequestWorker
   -  InboundRequestWorker is executed through thread pool which is
   converting request to Syanapse Message Context and inject it to  sequence
   specified by user and creates source pipe and set it as a property to
   consume by outbound PTT.
   - Response is received through Axis2Sender  before sending to the
   Axis2Engine and Response Synapse Message Context is send to
   InboundHttpResponseWorker.
   - InboundHttpResponseWorker is capable of extract the Target Pipe and
   create InboundHttpSourceResponse and correlate Request with response.
   - InboundHttpSourceResponse write the buffer content to the client
   side.




On Fri, Jul 25, 2014 at 11:50 AM, Kasun Indrasiri ka...@wso2.com wrote:




 On Fri, Jul 25, 2014 at 11:43 AM, Isuru Ranawaka isu...@wso2.com wrote:

 hi all,
 Implementation of the HTTP Inbound using Netty has been externalized as a
 separate component in carbon mediation and now working on developing HTTP
 Default Inbound Implementation using HTTP Core .We can register  request
 handlers for different inbound endpoints using single IO Reactor.SO same
 reactor is capable of listening different ports and  dispatch requests to
 relevant handlers.

 +1
 It is really good to have all these inbound EPs externalized from synapse.
 In addition, when we are implementing this with HTTPCore, we should be
 able to cater to PTT architecture, where we create the source pipe from the
 inbound EP and later consumed by axis2 based PT sender.

 thanks
 isurur


 On Mon, Jul 21, 2014 at 1:41 PM, Sanjiva Weerawarana sanj...@wso2.com
 wrote:

 Oleg's reply below (forwarding with permission).

 So we should not just configuring HttpCore to listen on the new ports -
 I presume it has a way of registering different callbacks for different
 ports (which is what we need in order to handle them outside of the normal
 Synapse path).

 Sanjiva.

 On Mon, Jul 21, 2014 at 1:24 PM, Oleg Kalnichevski 
 o...@ok2consulting.com wrote:

 On Mon, 2014-07-21 at 13:00 +0530, Sanjiva Weerawarana wrote:
  Good point about the need to have different IO threads .. but that's
  then because of a limitation in HTTPCore .. at a C level you can
  listen for IO on multiple sockets at once. So ideally HTTPCore can be
  improved to support that .. or maybe it does already? Oleg?
 

 HttpCore was capable of listening on multiple ports while utilizing the
 same I/O reactor and the same number of I/O dispatch threads since very
 beginning (~ 2006).

 Oleg


 
  +1 for dropping Netty :-).
 
 
  Sanjiva.
 
 
  On Mon, Jul 21, 2014 at 8:31 AM, Kasun Indrasiri ka...@wso2.com
  wrote:
  Hi Sanjiva,
 
 
  I think the problem we have with inbound HTTP and existing
  HTTP transport is that, they are completely isolated. So, even
  if we implement the new InboundEP implementation with
  HTTPCore, we cannot share the same listening IO reactor as
  with axis2 based PTT. So, each HTTP inbound EP have its own
  reactor running with its own config.
 
 
  The reason for start the initial implementation with Netty is
  to verify the Inbound synchronous behavior with an external
  HTTP library (for instance we may do something similar when
  implementing WS-RM Inbound EP with CXF). However, we better
  switch back to HTTPCore as the default HTTP Inbound endpoint
  as it is the default non-blocking HTTP library used across the
  board.
 
 
  Thanks,
  Kasun
 
 
  On Sat, Jul 19, 2014 at 3:55 PM, Sanjiva Weerawarana
  sanj...@wso2.com wrote:
  Isuru I assume you looked at using HttpCore itself to
  add this - can you point me to the discussion please?
  Having multiple NIO listeners affects the scaling
  config right - because normally you have n IO handling
  threads if you have n cores .. now you need to watch
  that across multiple libraries.
 
 
  Sanjiva.
 
 
  On Wed, Jul 16, 2014 at 10:37 AM, Isuru Ranawaka
  isu...@wso2.com wrote:
  Hi Ravi,
 
 
  In Netty-IO, 

Re: [Architecture] Inbound Endpoint support for ESB

2014-07-28 Thread Isuru Udana
Following are the main decisions taken in the review meeting held on 28th
July.

Thread pool in Inbound Endpoint
--
Introduce two new parameters to inbound endpoint configuration.

1. Sequenial (default = false)
This is needed to be set to true when it is required to do in-order
delivery and transactions for jms.
When sequential is set to true, underline implementation will use
injectMessage instead of injectAsync
to avoid handing over processing to the synapse thread pool.

2. Number of threads
This parameter denotes the number of concurrent threads handling requests
at the inbound endpoint level.
Default value has to be decided based on the nature of the protocol taking
the facts like performance into consideration.
This needs to be set to 1 for when it is required to do in-order delivery
in jms.

Http Inbound Endpoint

For HttpInboundEndpoint, try to see whether we can share the same IOReactor
used in Passthrough Http Transport.
Idea is to reduce the number of IOReactors and maintain the theory of
'number of io workers = cpu cores' globally for an ESB instance.

Current implementation only supports injecting a message to a particular
sequence.
Ideally we should be able to inject messages to existing APIs, Proxy
services etc.
For ESB 4.9.0 release, we are only going to support injecting messages to
sequences and APIs.

Renaming configuration parameters
---
Rename protocol names as follows

Rename 'jms' to 'AMQP/jms' (need to verify with Srinath)
Rename 'file' to 'vfs'

Thanks.




On Mon, Jul 28, 2014 at 11:11 AM, Kasun Indrasiri ka...@wso2.com wrote:

 Hi all,

 In the current implementation of JMS and File inbound EPs all the
 parameter are prefixed with transport.jms or transport.vfs. I think we
 should get rid of this.


 On Fri, Jul 18, 2014 at 11:19 PM, Malaka Silva mal...@wso2.com wrote:

 After the fixes by Ishan coordination seems to be working fine with
 inbound eps.


 On Mon, Jul 14, 2014 at 4:35 PM, Kasun Indrasiri ka...@wso2.com wrote:

 +1. Basic UI should be sufficient.


 On Mon, Jul 14, 2014 at 8:58 PM, Malaka Silva mal...@wso2.com wrote:

 Shall we also do a simple UI for inbound Endpoints?


 On Thu, Jul 10, 2014 at 1:32 PM, Malaka Silva mal...@wso2.com wrote:

 +1 since users can write vendor specific code. eg: IBM Mainframe MQ

 So basically either protocol or class will become mandatory.

 Also CustomPollingTrp should implement PollingConsumer.java [1]

 eg:-

 inboundEndpoint xmlns=http://ws.apache.org/ns/synapse;
 name=MyJMSListenerEP class=org.wso2.carbon.CustomPollingTrp 
 sequence=requestHandlerSeq
 onError=inFalte interval=5 suspend=false
 parameters
 parameter
 name=java.naming.factory.initialorg.apache.activemq.jndi.ActiveMQInitialContextFactory/parameter
 parameter
 name=java.naming.provider.urltcp://localhost:61616/parameter
 parameter
 name=transport.jms.ConnectionFactoryJNDINameQueueConnectionFactory/parameter
 parameter
 name=transport.jms.ConnectionFactoryTypequeue/parameter
 parameter name=transport.jms.Destination
 wso2.com/ordersQueue/parameter
 parameter
 name=transport.jms.SessionAcknowledgementAUTO_ACKNOWLEDGE/parameter
 /parameters
 /inboundEndpoint

 [1]
 https://github.com/wso2-dev/wso2-synapse/blob/master/modules/core/src/main/java/org/apache/synapse/inbound/PollingConsumer.java


 On Wed, Jul 9, 2014 at 7:44 PM, Kasun Indrasiri ka...@wso2.com
 wrote:

 One other improvement is to make the inbound endpoints dynamically
 plugable so that the users can write their own inbound EPs  (i.e:
 class=org.wso2.carbon.CustomPollingTrp)


 On Thu, Jun 19, 2014 at 10:09 PM, Kishanthan Thangarajah 
 kishant...@wso2.com wrote:

 To check whether clustering is enabled, you can acquire the
 axisConfig instance and check for clustering agent's availability.


 On Thu, Jun 19, 2014 at 2:18 PM, Ishan Jayawardena is...@wso2.com
 wrote:

 Is there a way to check whether the current carbon instance is a
 stand alone (ie. non clustered) instance or a management node?

 I tried CarbonUtils.isWorkerNode() but it returns false for both
 manager node and single instance. It is important to identify if a 
 given
 node is a management node to implement the coordination feature of the 
 ESB
 task that is used in schedule tasks and inbound endpoint 
 implementations.
 Therefore what are the possible ways to check this condition? Can we
 introduce a new isManagementNode method to the CarbonUtils class?

 Thanks,
 Ishan.


 On Wed, Jun 18, 2014 at 8:15 PM, Kasun Indrasiri ka...@wso2.com
 wrote:

 We need to test the coordination behavior of inbound endpoints and
 make sure it executes only on manager and an elected worker node.
 @Ishan : Please update the thread once we are done with the
 implementation/verification.


 On Mon, Apr 28, 2014 at 8:01 AM, Kasun Indrasiri ka...@wso2.com
 wrote:




 On Mon, Apr 28,