Hi Frank,

I sent a separate mail[1] with the architecture. Our main objective was to
provide the workflow support for the events in IS and [1] was designed to
address that. Furthermore we plan to provide a way to easily configure a
workflow process and deploy it at BPS (for the users without BPEL
knowlege). The work for that is in progress and we will update with the
details soon.

[1] [Architecture] Generic workflow support

On Thu, Apr 2, 2015 at 8:31 PM, Frank Leymann <fr...@wso2.com> wrote:

> Hi Pulasthi, hi Tanja,
>
> can you provide a consolidated architecture figure, please?  Can you also
> position in your architecture BPS?  I assume the requirements you address
> by your architecture is the ability to create an "on-ramp workflow" for ES,
> AM,... in a "fast" way, correct?
>
> Thanks!
>
>
> Best regards,
> Frank
>
> 2015-04-02 12:54 GMT+02:00 Pulasthi Mahawithana <pulast...@wso2.com>:
>
>> Hi Tanya,
>>
>> The actual architecture is bit different from the one you mentioned here
>> (I'll send a separate mail with details). The executors are responsible
>> only for executing workflow in some manner (can be BPEL, Web Service or
>> even some java code), and they can be registered as OSGI services. The
>> persisting is done by the WorkflowManager before calling the executor.
>>
>> The WorkflowRequestHandler is the one responsible for creating workflow
>> requests for an event, and handling the callback for the same event. So,
>> what you said can be achieved at this point by customizing the workflow
>> request creation (persist somewhere and provide link in workflow request).
>> Since you create asset disabled and enable it after workflow completion it
>> will work. However there are some events where we have to wait till the
>> workflow completion to perform the actual action. That was the reason to
>> persist the request. Also note that all workflow parameters are not set to
>> the workflow executor. We can filter out parameters that won't be needed at
>> workflow (I will send those details in a separate mail).
>>
>>
>>
>>
>> On Thu, Apr 2, 2015 at 3:26 PM, Tanya Madurapperuma <ta...@wso2.com>
>> wrote:
>>
>>> Hi Johann and all,
>>>
>>> As per the offline chat with Pulasthi, the executor serialize the
>>> workflow info and save in the database before calling the bpel service.
>>> (see the diagram below)
>>>
>>>
>>> ​So in our case if we are to use this component, we will have to do a
>>> network call with all the information for the workflow request (might
>>> include large files such as images and videos etc as admin needs to approve
>>> them)
>>> Also at the call back we have to resend the same info back.
>>>
>>> We thought it would be more convienient and performance friendly, if we
>>> persist those information at our end and provide an endpoint where the
>>> admin can access all the information.
>>>
>>> For an example, say asset creation process.
>>> Once the user fills the asset creation form, we will persist that info
>>> in a database with a flag so that it won't be visible in the store to the
>>> other users. And when triggering the workflow we send an endpoint with a
>>> token and admin can view the created asset info with that endpoint. Admin
>>> will be redirected to store to display the newly created (pending) asset.
>>> With that we don't need to worry about sending/rendering images at the
>>> workflow admin application.
>>>
>>> WDYT?
>>>
>>> Thanks,
>>> Tanya
>>>
>>> On Wed, Apr 1, 2015 at 10:20 AM, Tanya Madurapperuma <ta...@wso2.com>
>>> wrote:
>>>
>>>> Hi Johann,
>>>>
>>>> Thanks for the response.
>>>> IMO it is better if we can make the WorkflowRequestDAO more generic
>>>> where we can plug any storing mechanism. WDYT?
>>>>
>>>> Thanks,
>>>> Tanya
>>>>
>>>> On Tue, Mar 31, 2015 at 5:29 PM, Johann Nallathamby <joh...@wso2.com>
>>>> wrote:
>>>>
>>>>> Hi Tanya,
>>>>>
>>>>> On Tue, Mar 31, 2015 at 4:59 PM, Tanya Madurapperuma <ta...@wso2.com>
>>>>> wrote:
>>>>>
>>>>>> Hi all,
>>>>>>
>>>>>> We are in the process of implementing the workflow support for ES and
>>>>>> came across the $Subject.
>>>>>> Although many products have worflow support, seems there is no
>>>>>> generic component to achieve this.
>>>>>>
>>>>>> The workflow executor for APIM [1] cannot be used platform wide since
>>>>>> they pass the ApiMgtDAO to execute method in their executor.
>>>>>>
>>>>>> Similar issue is there with the IS workflow executor where they
>>>>>> preserve the workflow information in the identity database [2] (refer
>>>>>> addWorkflowEntry method)
>>>>>>
>>>>>
>>>>> The work flow component that was designed for IS was designed with the
>>>>> intension of extensibility. The workflow components are not coupled in
>>>>> anyway to identity components. If there is anything which is blocking you
>>>>> from achieving what you need then we will like to know about it so that we
>>>>> can fix our design.
>>>>>
>>>>>
>>>>>> IMO other products should be able to use their own workflow info
>>>>>> preservation mechanism.
>>>>>> Ex: To store in the registry
>>>>>>        To store in a database
>>>>>> Say in ES, we want to provide workflow support for asset creation.
>>>>>> Storing asset level info in Identity database doesn't make sense.
>>>>>>
>>>>>
>>>>> Don't think of it as Identity database. Think of it as a database
>>>>> coming from another feature repository. It can be any product like IS. If
>>>>> the same workflow component was developed by APIM then it would be AM_
>>>>> tables. Apart from the naming convention the functionality is generic and
>>>>> extensible. The table naming convention comes from which product team
>>>>> develops it, thats all.
>>>>>
>>>>> Using Identity database in ES is not wrong. If you are installing IS
>>>>> feature you have to install the database scripts also. I know previously
>>>>> APIM did the same mistake of copying the identity tables into apim scripts
>>>>> and not executing identity scripts. I know how much duplication it made 
>>>>> and
>>>>> how much of problems we ran into. I am -1 on that.
>>>>>
>>>>> If you have a strong reason to move away from database, and use
>>>>> registry then we need to think about making the data access layer
>>>>> extensible, which is open for discussion.
>>>>>
>>>>> P.S. I know we haven't sent a mail to architecture regarding the
>>>>> workflow component design. Will do soon.
>>>>>
>>>>> Regards,
>>>>> Johann.
>>>>>
>>>>>>
>>>>>> Appreciate your feedback.
>>>>>>
>>>>>> [1]
>>>>>> https://github.com/wso2/carbon-apimgt/blob/master/components/apimgt/org.wso2.carbon.apimgt.impl/src/main/java/org/wso2/carbon/apimgt/impl/workflow/WorkflowExecutor.java
>>>>>> [2]
>>>>>> https://github.com/pulasthi7/carbon-identity/blob/feature/workflow-support/components/workflows/org.wso2.carbon.workflow.mgt/src/main/java/org/wso2/carbon/workflow/mgt/dao/WorkflowRequestDAO.java
>>>>>>
>>>>>> Thanks,
>>>>>> Tanya
>>>>>>
>>>>>> --
>>>>>> Tanya Madurapperuma
>>>>>>
>>>>>> Software Engineer,
>>>>>> WSO2 Inc. : wso2.com
>>>>>> Mobile : +94718184439
>>>>>> Blog : http://tanyamadurapperuma.blogspot.com
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Thanks & Regards,
>>>>>
>>>>> *Johann Dilantha Nallathamby*
>>>>> Associate Technical Lead & Product Lead of WSO2 Identity Server
>>>>> Integration Technologies Team
>>>>> WSO2, Inc.
>>>>> lean.enterprise.middleware
>>>>>
>>>>> Mobile - *+94777776950*
>>>>> Blog - *http://nallaa.wordpress.com <http://nallaa.wordpress.com>*
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Tanya Madurapperuma
>>>>
>>>> Software Engineer,
>>>> WSO2 Inc. : wso2.com
>>>> Mobile : +94718184439
>>>> Blog : http://tanyamadurapperuma.blogspot.com
>>>>
>>>
>>>
>>>
>>> --
>>> Tanya Madurapperuma
>>>
>>> Software Engineer,
>>> WSO2 Inc. : wso2.com
>>> Mobile : +94718184439
>>> Blog : http://tanyamadurapperuma.blogspot.com
>>>
>>
>>
>>
>> --
>> *Pulasthi Mahawithana*
>> Software Engineer
>> WSO2 Inc., http://wso2.com/
>> Mobile: +94-71-5179022
>> Blog: http://blog.pulasthi.org
>>
>> _______________________________________________
>> 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
>
>


-- 
*Pulasthi Mahawithana*
Software Engineer
WSO2 Inc., http://wso2.com/
Mobile: +94-71-5179022
Blog: http://blog.pulasthi.org
_______________________________________________
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to