Claims
- 1. A method for using workflows, comprising the steps of:
performing a first workflow, said first workflow performs a first task; and starting a second workflow as a subflow of said first workflow, said second workflow performs a second task.
- 2. A method according to claim 1, wherein said step of performing said first workflow comprises the steps of:
accessing an indication of whether said first workflow should wait for said second workflow to complete said second task; and waiting for said second workflow to complete said second task if said indication indicates to wait for said second workflow to complete said second task.
- 3. A method according to claim 2, wherein:
said indication is a flag indicating that a particular step should wait for a subflow of a previous step.
- 4. A method according to claim 2, wherein:
said indication is a result code indicating that said first workflow should pause; said step of starting a second workflow includes providing a callback command that can be used to restart said first workflow; and said step of waiting pauses said first workflow until said callback command is invoked.
- 5. A method according to claim 2, wherein:
said first workflow is performed by a first application; and said second workflow is performed by a second application.
- 6. A method according to claim 5, wherein said step of starting a second workflow comprises the steps of:
checking an event catalog to determine whether a particular event of said first workflow is identified in said event catalog; and invoking a process listed in said event catalog as being associated with said particular event of said first workflow, said process includes initiating said second workflow.
- 7. A method according to claim 2, wherein said step of starting a second workflow comprises the steps of:
determining that a particular step of said first workflow includes a supplied variable; searching for one or more workflows that can provide said supplied variable; identifying said second workflow as a result of said step of searching; and initiating said second workflow.
- 8. A method according to claim 7, further comprising the step of:
defining said first workflow, including indicating that said particular step of said first workflow includes said supplied variable.
- 9. A method according to claim 2, wherein said step of starting a second workflow comprises the steps of:
determining that a current step of said first workflow includes a supplied variable; searching for one or more workflows that can provide said supplied variable; identifying a set of workflows as a result of said step of searching, said a set of workflows includes said second workflow; receiving a choice of said second workflow; and initiating said second workflow.
- 10. A method according to claim 2, further comprising the step of:
starting one or more additional nested workflows as subflows of said second workflow.
- 11. A method according to claim 1, further comprising the step of:
starting one or more additional nested workflows as subflows of said second workflow.
- 12. A method according to claim 11, wherein said step of starting one or more additional nested workflows includes the step of:
starting a third workflow as a subflow of said second workflow.
- 13. A method according to claim 12, wherein said step of starting one or more additional nested workflows further includes the step of:
starting a fourth workflow as a subflow of said third workflow.
- 14. A method according to claim 12, wherein said step of starting a third workflow comprises the steps of:
determining that a particular step of said second workflow includes a supplied variable; searching for one or more workflows that can provide said supplied variable; identifying said third workflow as a result of said step of searching; and initiating said third workflow.
- 15. A method according to claim 11, wherein:
said first workflow is performed by a first application; and said second workflow is performed by a second application.
- 16 A method according to claim 15, wherein said step of starting a second workflow comprises the steps of:
checking an event catalog to determine whether a particular event of said first workflow is identified in said event catalog; and invoking a process listed in said event catalog as being associated with said particular event of said first workflow, said process includes initiating said second workflow.
- 17. A method according to claim 11, wherein said step of starting a second workflow comprises the steps of:
determining that a particular step of said first workflow includes a supplied variable; searching for one or more workflows that can provide said supplied variable; identifying said second workflow as a result of said step of searching; and initiating said second workflow.
- 18. A method according to claim 17, further comprising the step of:
defining said first workflow, including indicating that said particular step of said first workflow includes said supplied variable.
- 19. A method according to claim 11, wherein said step of starting a second workflow comprises the steps of:
determining that a current step of said first workflow includes a supplied variable; searching for one or more workflows that can provide said supplied variable; identifying a set of workflows as a result of said step of searching, said a set of workflows includes said second workflow; receiving a choice of said second workflow; and initiating said second workflow.
- 20. A method according to claim 11, further comprising the steps of:
reporting a result of said second workflow to said first workflow, if said first workflow is active; and reporting said result of said second workflow to an identity profile, if said first workflow is not active.
- 21. A method according to claim 1, wherein said step of starting a second workflow comprises the steps of:
receiving a notification to pause said first workflow; providing a callback command that can be used to restart said first workflow; and pausing said first workflow until said callback command is invoked.
- 22. A method according to claim 21, wherein:
said step of providing is performed prior to said step of receiving a notification.
- 23. A method according to claim 21, wherein:
said callback command includes a callback URL.
- 24. A method according to claim 1, wherein:
said first workflow is performed by a first application; and said second workflow is performed by a second application.
- 25. A method according to claim 24, wherein said step of starting a second workflow comprises the steps of:
checking an event catalog to determine whether a particular event of said first workflow is identified in said event catalog; and invoking a process listed in said event catalog as being associated with said particular event of said first workflow, said process includes initiating said second workflow.
- 26. A method according to claim 1, further comprising the steps of:
reporting a result of said second workflow to said first workflow, if said first workflow is active; and reporting said result of said second workflow to an identity profile, if said first workflow is not active.
- 27. A method for using workflows, comprising the steps of:
performing a first workflow in a first application; and causing a second process in a second application to be performed in response to said first workflow.
- 28. A method according to claim 27, wherein:
said second process is a second workflow.
- 29. A method according to claim 28, wherein:
said first application is a User Manager; said second application is a Group Manager; said first workflows adds a new user to a directory; and said second workflow adds said new user to one or more groups.
- 30. A method according to claim 27, wherein said step of causing comprises the steps of:
checking an event catalog to determine whether a particular event of said first workflow is identified in said event catalog; and invoking a program listed in said event catalog as being associated with said particular event of said first workflow, said program sends a request to said second application to invoke said second process.
- 31. A method according to claim 30, wherein:
said first workflow operates on an identity profile; and said step of invoking includes said program includes passing one or more attributes of said identity profile to said program.
- 32. A method according to claim 30, wherein:
said first workflow operates on an identity profile; and said step of invoking includes said program includes passing a distinguished name for said identity profile to said program.
- 33. A method according to claim 30, wherein:
said program creates and send an XML document to said second application, said XML document includes said request to said second application to invoke said second process.
- 34. A method according to claim 30, wherein:
said second process is a second workflow.
- 35. A method according to claim 30, further comprising the step of:
receiving an output XML document from said second application, said output XML document is received by said program and includes an output message from said second application.
- 36. A method according to claim 30, wherein said step of starting a second workflow comprises the steps of:
receiving a status message from said program indicating to pause said first workflow; providing a callback command to said program that can be used to restart said first workflow; and pausing said first workflow until said callback command is invoked.
- 37. A method according to claim 30, wherein:
said program reads a configuration file and determines to invoke said second process based on said configuration file, said second process is a second workflow.
- 38. One or more processor readable storage devices having processor readable code embodied on said processor readable storage devices, said processor readable code for programming one or more processors to perform a method comprising the steps of:
performing a first workflow, said first workflow performs a first task; and starting a second workflow as a subflow of said first workflow, said second workflow performs a second task.
- 39. One or more processor readable storage devices according to claim 38, wherein said step of performing said first workflow comprises the steps of:
accessing an indication of whether said first workflow should wait for said second workflow to complete said second task; and waiting for said second workflow to complete said second task if said indication indicates to wait for said second workflow to complete said second task.
- 40. One or more processor readable storage devices according to claim 39, wherein:
said indication is a result code indicating that said first workflow should pause; said step of starting a second workflow includes providing a callback command that can be used to restart said first workflow; and said step of waiting pauses said first workflow until said callback command is invoked.
- 41. One or more processor readable storage devices according to claim 39, wherein:
said first workflow is performed by a first application; and said second workflow is performed by a second application.
- 42. One or more processor readable storage devices according to claim 41, wherein said step of starting a second workflow comprises the steps of:
checking an event catalog to determine whether a particular event of said first workflow is identified in said event catalog; and invoking a process listed in said event catalog as being associated with said particular event of said first workflow, said process includes initiating said second workflow.
- 43. One or more processor readable storage devices according to claim 39, wherein said step of starting a second workflow comprises the steps of:
determining that a particular step of said first workflow includes a supplied variable; searching for one or more workflows that can provide said supplied variable; identifying said second workflow as a result of said step of searching; and initiating said second workflow.
- 44. One or more processor readable storage devices according to claim 38, wherein said method further comprises the step of:
starting one or more additional nested workflows as subflows of said second workflow.
- 45. One or more processor readable storage devices according to claim 44, wherein said step of starting a second workflow comprises the steps of:
determining that a particular step of said first workflow includes a supplied variable; searching for one or more workflows that can provide said supplied variable; identifying said second workflow as a result of said step of searching; and initiating said second workflow.
- 46. One or more processor readable storage devices according to claim 44, further comprising the steps of:
reporting a result of said second workflow to said first workflow, if said first workflow is active; and reporting said result of said second workflow to an identity profile, if said first workflow is not active.
- 47. One or more processor readable storage devices according to claim 38, wherein said step of starting a second workflow comprises the steps of:
receiving a notification to pause said first workflow; providing a callback command that can be used to restart said first workflow; and pausing said first workflow until said callback command is invoked.
- 48. One or more processor readable storage devices according to claim 38, wherein:
said first workflow is performed by a first application; and said second workflow is performed by a second application.
- 49. One or more processor readable storage devices having processor readable code embodied on said processor readable storage devices, said processor readable code for programming one or more processors to perform a method comprising the steps of:
performing a first workflow in a first application; and causing a second process in a second application to be performed in response to said first workflow.
- 50. One or more processor readable storage devices according to claim 49, wherein said step of causing comprises the steps of:
checking an event catalog to determine whether a particular event of said first workflow is identified in said event catalog; and invoking a program listed in said event catalog as being associated with said particular event of said first workflow, said program sends a request to said second application to invoke said second process.
- 51. One or more processor readable storage devices according to claim 50, wherein:
said first workflow operates on an identity profile; and said step of invoking includes said program includes passing one or more attributes of said identity profile to said program.
- 52. One or more processor readable storage devices according to claim 50, wherein said step of starting a second workflow comprises the steps of:
receiving a status message from said program indicating to pause said first workflow; providing a callback command to said program that can be used to restart said first workflow; and pausing said first workflow until said callback command is invoked.
- 53. An apparatus that can use workflows, comprising:
a communication interface; and one or more processors in communication with said communication interface, said one or more processors perform a method comprising the steps of: performing a first workflow, said first workflow performs a first task, and starting a second workflow as a subflow of said first workflow, said second workflow performs a second task.
- 54. An apparatus according to claim 53, wherein said step of performing said first workflow comprises the steps of:
accessing an indication of whether said first workflow should wait for said second workflow to complete said second task; and waiting for said second workflow to complete said second task if said indication indicates to wait for said second workflow to complete said second task.
- 55. An apparatus according to claim 54, wherein:
said indication is a result code indicating that said first workflow should pause; said step of starting a second workflow includes providing a callback command that can be used to restart said first workflow; and said step of waiting pauses said first workflow until said callback command is invoked.
- 56. An apparatus according to claim 55, wherein:
said first workflow is performed by a first application; and said second workflow is performed by a second application.
- 57. An apparatus according to claim 56, wherein said step of starting a second workflow comprises the steps of:
checking an event catalog to determine whether a particular event of said first workflow is identified in said event catalog; and invoking a process listed in said event catalog as being associated with said particular event of said first workflow, said process includes initiating said second workflow.
- 58. An apparatus according to claim 54, wherein said step of starting a second workflow comprises the steps of:
determining that a particular step of said first workflow includes a supplied variable; searching for one or more workflows that can provide said supplied variable; identifying said second workflow as a result of said step of searching; and initiating said second workflow.
- 59. An apparatus according to claim 54, wherein said method further comprising the step of:
starting one or more additional nested workflows as subflows of said second workflow.
- 60. An apparatus that can use workflows, comprising:
a communication interface; and one or more processors in communication with said communication interface, said one or more processors perform a method comprising the steps of: performing a first workflow in a first application, and causing a second process in a second application to be performed in response to said first workflow.
- 61. An apparatus according to claim 60, wherein said step of causing comprises the steps of:
checking an event catalog to determine whether a particular event of said first workflow is identified in said event catalog; and invoking a program listed in said event catalog as being associated with said particular event of said first workflow, said program sends a request to said second application to invoke said second process.
- 62. An apparatus according to claim 61, wherein:
said first workflow operates on an identity profile; and said step of invoking includes said program includes passing one or more attributes of said identity profile to said program.
- 63. An apparatus according to claim 61, wherein said step of starting a second workflow comprises the steps of:
receiving a status message from said program indicating to pause said first workflow; providing a callback command to said program that can be used to restart said first workflow; and pausing said first workflow until said callback command is invoked.
Parent Case Info
[0001] This application claims the benefit of U.S. Provisional Application No. 60/258,087, “Integrated Identity and Access Management Systems With Group and Organization Managers,” filed on Dec. 22, 2000; and U.S. Provisional Application No. 60/285,524, “Integrated Identity and Access Management System,” filed on Apr. 20, 2001; both of which are incorporated herein by reference.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60258087 |
Dec 2000 |
US |
|
60285524 |
Apr 2001 |
US |