[
https://issues.apache.org/jira/browse/OODT-345?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13147862#comment-13147862
]
Brian Foster commented on OODT-345:
-----------------------------------
Okay... here is a break down of the what looks like will be the final look
(these are actual printouts generated by applying the latest patch to trunk
workflow):
{code}
$ ./wmgr-client -h
-----------------------------------------------------------------------------------------------------------------
| Short | Long | Description
-----------------------------------------------------------------------------------------------------------------
-u, --url <url> Workflow Manager URL
Handler:
Sets the
following Java Properties:
[org.apache.oodt.cas.workflow.url]
-op, --operation Declare that you
wish to present an operation
SubOptions:
> Required:
> Optional:
-se, --sendEvent Triggers SendEvent
Action
Requirement
Rules:
[SendEvent :
REQUIRED]
-dw, --dynWorkflow Triggers
DynWorkflow Action
Requirement
Rules:
[DynWorkflow :
REQUIRED]
-winsts,--getWorkflowInsts Triggers
GetWorkflowInsts Action
Requirement
Rules:
[GetWorkflowInsts : REQUIRED]
-wflows,--getWorkflows Triggers
GetWorkflows Action
Requirement
Rules:
[GetWorkflows :
REQUIRED]
-tbyid, --getTaskById Triggers
GetTaskById Action
Requirement
Rules:
[GetTaskById :
REQUIRED]
-cbyid, --getConditionById Triggers
GetConditionById Action
Requirement
Rules:
[GetConditionById : REQUIRED]
-wbyid, --getWorkflowById Triggers
GetWorkflowById Action
Requirement
Rules:
[GetWorkflowById
: REQUIRED]
-wbye, --getWorkflowsByEvent Triggers
GetWorkflowsByEvent Action
Requirement
Rules:
[GetWorkflowsByEvent : REQUIRED]
-events,--getRegisteredEvents Triggers
GetRegisteredEvents Action
Requirement
Rules:
[GetRegisteredEvents : REQUIRED]
-inst, --getWorkflowInst Triggers
GetWorkflowInst Action
Requirement
Rules:
[GetWorkflowInst
: REQUIRED]
-time, --getWallClockTime Triggers
GetWallClockTime Action
Requirement
Rules:
[GetWallClockTime : REQUIRED]
-ttime, --getTaskWallClockTime Triggers
GetWallClockTime Action
Requirement
Rules:
[GetTaskWallClockTime : REQUIRED]
-stop, --stopWorkflowInst Triggers
StopWorkflowInst Action
Requirement
Rules:
[StopWorkflowInst : REQUIRED]
-pause, --pauseWorkflowInst Triggers
PauseWorkflowInst Action
Requirement
Rules:
[PauseWorkflowInst : REQUIRED]
-resume,--resumeWorkflowInst Triggers
ResumeWorkflowInst Action
Requirement
Rules:
[ResumeWorkflowInst : REQUIRED]
-page1, --getFirstPage Triggers
GetFirstPage Action
Requirement
Rules:
[GetFirstPage :
REQUIRED]
-next, --getNextPage Triggers
GetNextPage Action
Requirement
Rules:
[GetNextPage :
REQUIRED]
-prev, --getPrevPage Triggers
GetPrevPage Action
Requirement
Rules:
[GetPrevPage :
REQUIRED]
-last, --getLastPage Triggers
GetLastPage Action
Requirement
Rules:
[GetLastPage :
REQUIRED]
-getMet,--getWorkflowInstMet Triggers
GetWorkflowInstMet Action
Requirement
Rules:
[GetWorkflowInstMet : REQUIRED]
-p, --pageNum <page> Page Number
Requirement
Rules:
[GetNextPage :
REQUIRED, GetPrevPage : REQUIRED]
Handler:
Will invoke
'setPageNum' on action selected,
except for the
following actions: []
-m, --metaData Declare that you
wish to present metadata
Requirement
Rules:
[SendEvent :
OPTIONAL, DynMetadata : OPTIONAL]
SubOptions:
> Required:
-k, --key <key-vals> Workflow Metadata:
key val val...
Handler:
Will invoke
'addKey' on action selected, except
for the
following actions: [SendEvent :
addMetadata,
DynWorkflow : addMetadata]
> Optional:
-en, --eventName <event-name> Name of the Event
to trigger
Requirement
Rules:
[SendEvent :
REQUIRED, GetWorkflowsByEvent :
REQUIRED]
Handler:
Will invoke
'setEventName' on action selected,
except for the
following actions: []
-s, --status <status> Workflow status
Requirement
Rules:
[GetFirstPage :
OPTIONAL, GetNextPage : OPTIONAL,
GetPrevPage :
OPTIONAL, GetLastPage : OPTIONAL]
Handler:
Will invoke
'setStatus' on action selected, except
for the
following actions: []
-tids, --taskIds <task-ids> List of workflow
task ids
Requirement
Rules:
[DynWorkflow :
REQUIRED]
Handler:
Will invoke
'setTaskIds' on action selected,
except for the
following actions: []
-id, --id <id> ID
Requirement
Rules:
[GetTaskById :
REQUIRED, GetConditionById :
REQUIRED,
GetWorkflowById : REQUIRED,
GetWorkflowInst
: REQUIRED, GetWallClockTime :
REQUIRED,
GetTaskWallClockTime : REQUIRED,
StopWorkflowInst
: REQUIRED, PauseWorkflowInst :
REQUIRED,
ResumeWorkflowInst : REQUIRED,
GetWorkflowInstMet : REQUIRED]
Handler:
Will invoke
'setId' on action selected, except for
the following
actions: [GetTaskById : setTaskId,
GetConditionById
: setConditionId, GetWorkflowById
: setWorkflowId,
GetWorkflowInst : setInstanceId,
GetWallClockTime
: setInstanceId,
GetTaskWallClockTime : setInstanceId,
StopWorkflowInst
: setInstanceId,
PauseWorkflowInst : setInstanceId,
ResumeWorkflowInst : setInstanceId,
GetWorkflowInstMet : setInstanceId]
-psa, --printSupportedActions Print Supported
Actions
-h, --help Prints help menu
-----------------------------------------------------------------------------------------------------------------
{code}
{code}
$ ./wmgr-client -psa
Actions:
Action:
Name: GetPrevPage
Description: Gets prev page of workflows
Action:
Name: GetRegisteredEvents
Description: List registered events
Action:
Name: SendEvent
Description: Triggers an event
Action:
Name: GetConditionById
Description: Gets condition information for condition with given ID
Action:
Name: GetLastPage
Description: Gets last page of workflows
Action:
Name: GetWallClockTime
Description: Gets wall clock time for workflow instance
Action:
Name: StopWorkflowInst
Description: Stops a workflow instance
Action:
Name: GetTaskById
Description: Gets task information for task with given ID
Action:
Name: PauseWorkflowInst
Description: Pauses a workflow instance
Action:
Name: GetWorkflowInsts
Description: List all workflow instances
Action:
Name: GetNextPage
Description: Gets next page of workflows
Action:
Name: GetWorkflowInstMet
Description: Gets workflow instance metadata
Action:
Name: DynWorkflow
Description: Creates a workflow using the given tasks and then executes it
Action:
Name: GetFirstPage
Description: Gets first page of workflows
Action:
Name: GetWorkflowInst
Description: Gets workflow instance by instance ID
Action:
Name: GetTaskWallClockTime
Description: Gets wall clock time for workflow instance's current task
Action:
Name: GetWorkflowsByEvent
Description: List workflow information for workflows with attached to event
Action:
Name: GetWorkflowById
Description: Gets workflow information for workflow with given ID
Action:
Name: ResumeWorkflowInst
Description: Resumes a paused workflow instance
Action:
Name: GetWorkflows
Description: List all workflow models
{code}
{code}
$ ./wmgr-client -h SendEvent
Action Help for 'SendEvent'
- Required:
-u [--url] <url>
-op [--operation]
-se [--sendEvent]
-en [--eventName] <event-name>
- Optional:
-m [--metaData]
-k [--key] <key-vals>
{code}
What happens when you don't enter all the right options:
{code}
$ ./wmgr-client -op
Must specify a subOption for group option
'[longOption='operation',shortOption='op',description='Declare that you wish to
present an operation']'
{code}
{code}
$ ./wmgr-client -op -se
Missing required options:
- [longOption='eventName',shortOption='en',description='Name of the Event to
trigger']
- [longOption='url',shortOption='u',description='Workflow Manager URL']
{code}
{code}
$ ./wmgr-client -op -se -u http://localhost:9000
Missing required options:
- [longOption='eventName',shortOption='en',description='Name of the Event to
trigger']
{code}
{code}
./wmgr-client -op -se -u http://localhost:9000 -en
Option [longOption='eventName',shortOption='en',description='Name of the Event
to trigger'] requires args
{code}
And finally, (still fails though since i don't have a workflow manager up at
the moment)
{code}
./wmgr-client -op -se -u http://localhost:9000 -en TestEventName
Sending event 'TestEventName'... Failed to send event 'TestEventName' to url
'http://localhost:9000' with metadata '{}' : Connection refused
{code}
And with metadata:
{code}
./wmgr-client -op -se -u http://localhost:9000 -en TestEventName -m -k TestKey
TestVal1.1 TestVal1.2 -k TestKey2 TestVal2
Sending event 'TestEventName'... Failed to send event 'TestEventName' to url
'http://localhost:9000' with metadata '{TestKey2=[TestVal2],
TestKey=[TestVal1.1, TestVal1.2]}' : Connection refused
{code}
> Integration CAS-Workflow with CAS-CLI
> -------------------------------------
>
> Key: OODT-345
> URL: https://issues.apache.org/jira/browse/OODT-345
> Project: OODT
> Issue Type: Improvement
> Components: workflow manager
> Affects Versions: 0.4
> Environment: none
> Reporter: Brian Foster
> Assignee: Brian Foster
> Priority: Minor
> Fix For: 0.4
>
> Attachments: SwitchWorkflowToUseCasCli.patch.txt
>
>
> Here are some example outputs of what the new command line will look like:
> {code}
> $ ./wmgr-client -h
> -----------------------------------------------------------------------------------------------------------------
> | Short | Long | Description
> -----------------------------------------------------------------------------------------------------------------
> -u, --url <url> Workflow Manager
> URL
> Handler:
> Sets the
> following Java Properties:
>
> [org.apache.oodt.cas.workflow.url]
> -op, --operation Declare that you
> wish to present an operation
> -p, --pageNum <page> Page Number
> Requirement
> Rules:
> [GetNextPage :
> REQUIRED, GetPrevPage : REQUIRED]
> Handler:
> Will invoke
> 'setPageNum' on action selected,
> except for the
> following actions: []
> -m, --metaData Declare that you
> wish to present metadata
> Requirement
> Rules:
> [SendEvent :
> OPTIONAL, DynMetadata : OPTIONAL]
> -en, --eventName <event-name> Name of the Event
> to trigger
> Requirement
> Rules:
> [SendEvent :
> REQUIRED, GetWorkflowsByEvent :
> REQUIRED]
> Handler:
> Will invoke
> 'setEventName' on action selected,
> except for the
> following actions: []
> -s, --status <status> Workflow status
> Requirement
> Rules:
> [GetFirstPage
> : OPTIONAL, GetNextPage : OPTIONAL,
> GetPrevPage :
> OPTIONAL, GetLastPage : OPTIONAL]
> Handler:
> Will invoke
> 'setStatus' on action selected, except
> for the
> following actions: []
> -tids, --taskIds <task-ids> List of workflow
> task ids
> Requirement
> Rules:
> [DynWorkflow :
> REQUIRED]
> Handler:
> Will invoke
> 'setTaskIds' on action selected,
> except for the
> following actions: []
> -id, --id <id> ID
> Requirement
> Rules:
> [GetTaskById :
> REQUIRED, GetConditionById :
> REQUIRED,
> GetWorkflowById : REQUIRED,
>
> GetWorkflowInst : REQUIRED, GetWallClockTime :
> REQUIRED,
> GetTaskWallClockTime : REQUIRED,
>
> StopWorkflowInst : REQUIRED, PauseWorkflowInst :
> REQUIRED,
> ResumeWorkflowInst : REQUIRED,
>
> GetWorkflowInstMet : REQUIRED]
> Handler:
> Will invoke
> 'setId' on action selected, except for
> the following
> actions: [GetTaskById : setTaskId,
>
> GetConditionById : setConditionId, GetWorkflowById
> :
> setWorkflowId, GetWorkflowInst : setInstanceId,
>
> GetWallClockTime : setInstanceId,
>
> GetTaskWallClockTime : setInstanceId,
>
> StopWorkflowInst : setInstanceId,
>
> PauseWorkflowInst : setInstanceId,
>
> ResumeWorkflowInst : setInstanceId,
>
> GetWorkflowInstMet : setInstanceId]
> -psa, --printSupportedActions Print Supported
> Actions
> -a, --action <action-name> This is the name
> of the action to trigger
> -h, --help Prints help menu
> -----------------------------------------------------------------------------------------------------------------
> $ ./wmgr-client -psa
> Actions:
> Action:
> Name: StopWorkflowInst
> Description: Stops a workflow instance
> Actions:
> Action:
> Name: GetNextPage
> Description: Gets next page of workflows
> Actions:
> Action:
> Name: GetTaskById
> Description: Gets task information for task with given ID
> Actions:
> Action:
> Name: GetWallClockTime
> Description: Gets wall clock time for workflow instance
> Actions:
> Action:
> Name: GetLastPage
> Description: Gets last page of workflows
> Actions:
> Action:
> Name: GetFirstPage
> Description: Gets first page of workflows
> Actions:
> Action:
> Name: GetWorkflowInst
> Description: Gets workflow instance by instance ID
> Actions:
> Action:
> Name: GetConditionById
> Description: Gets condition information for condition with given ID
> Actions:
> Action:
> Name: DynWorkflow
> Description: Creates a workflow using the given tasks and then executes it
> Actions:
> Action:
> Name: GetWorkflows
> Description: List all workflow models
> Actions:
> Action:
> Name: GetWorkflowInsts
> Description: List all workflow instances
> Actions:
> Action:
> Name: GetPrevPage
> Description: Gets prev page of workflows
> Actions:
> Action:
> Name: ResumeWorkflowInst
> Description: Resumes a paused workflow instance
> Actions:
> Action:
> Name: GetWorkflowById
> Description: Gets workflow information for workflow with given ID
> Actions:
> Action:
> Name: PauseWorkflowInst
> Description: Pauses a workflow instance
> Actions:
> Action:
> Name: GetWorkflowInstMet
> Description: Gets workflow instance metadata
> Actions:
> Action:
> Name: GetWorkflowsByEvent
> Description: List workflow information for workflows with attached to
> event
> Actions:
> Action:
> Name: GetRegisteredEvents
> Description: List registered events
> Actions:
> Action:
> Name: GetTaskWallClockTime
> Description: Gets wall clock time for workflow instance's current task
> Actions:
> Action:
> Name: SendEvent
> Description: Triggers an event
> $ ./wmgr-client -h SendEvent
> Action Help for 'SendEvent'
> - Required:
> -u [--url] <url>
> -op [--operation]
> -se [--sendEvent]
> -en [--eventName] <event-name>
> - Optional:
> -m [--metaData]
> -k [--key] <key-vals>
> $ ./wmgr-client -h DynWorkflow
> Action Help for 'DynWorkflow'
> - Required:
> -u [--url] <url>
> -op [--operation]
> -dw [--dynWorkflow]
> -tids [--taskIds] <task-ids>
> - Optional:
> $ ./wmgr-client -h GetConditionById
> Action Help for 'GetConditionById'
> - Required:
> -u [--url] <url>
> -op [--operation]
> -cbyid [--getConditionById]
> -id [--id] <condition-id>
> - Optional:
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira