Hi all, Currently we are in the process of implementing Workflow support for user operations in IS 5.1.0. One of the requirements we came up with is, when addUser or deleteUser operations are attached to workflows, when listing users, users with pending states in workflows should also be listed, but show them in a manner where those users can be distinguished from others. AddUser and deleteUser operations are implemented as we discussed in [1].
In the current workflow implementation, when adding a User, user will only added to the userstore when workflow is approved and when deleting a user, user will be removed from user store once corresponding workflow in approved. Reasons for using this model has also discussed at [1]. Currently we have came up with following issue when listing users. The most ideal way to address the requirement would be to read users in userStore from doListUsers methods and refer workflow related DB tables by a pre or post listener and get the complete result returned from UserStoremanager.listUsers. But applying these changes to listeners will cause API changes in carbon4-kernel and hence this will not be possible to do for IS 5.1.0 release. So currently we are planning to get user list from UserStoreManager in the same way it does by now and then modify the list referring to workflow related tables at places which uses the UserStoremanager.listUsers method (eg-: at components such as user-mgt, scim, etc.). There are few drawbacks of using this method, we’ll have to duplicate the same logic in few places and also if a new component uses listUser method, when implementing that this logic will have to include there as well. Thank You! 1. [Architecture] IS Workflow Implementation - Issues in AddUser Workflow -- *Chamila Dilshan Wijayarathna,* Software Engineer Mobile:(+94)788193620 WSO2 Inc., http://wso2.com/
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
