[ 
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

        

Reply via email to