Added workflow data models
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/1ec4efbf Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/1ec4efbf Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/1ec4efbf Branch: refs/heads/master Commit: 1ec4efbfa7bba2e1f606f1fce58729dfc3079d26 Parents: b65079a Author: Shameera Rathnayaka <[email protected]> Authored: Mon Feb 1 12:02:26 2016 -0500 Committer: Shameera Rathnayaka <[email protected]> Committed: Mon Feb 1 12:02:26 2016 -0500 ---------------------------------------------------------------------- .../workflow-models/workflow_data_model.thrift | 58 +++++++++++++++++++- 1 file changed, 56 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/airavata/blob/1ec4efbf/thrift-interface-descriptions/data-models/workflow-models/workflow_data_model.thrift ---------------------------------------------------------------------- diff --git a/thrift-interface-descriptions/data-models/workflow-models/workflow_data_model.thrift b/thrift-interface-descriptions/data-models/workflow-models/workflow_data_model.thrift index 6b3dfad..7b7922a 100644 --- a/thrift-interface-descriptions/data-models/workflow-models/workflow_data_model.thrift +++ b/thrift-interface-descriptions/data-models/workflow-models/workflow_data_model.thrift @@ -33,11 +33,65 @@ include "../../airavata-apis/airavata_commons.thrift" */ -struct Workflow { +struct WorkflowModel { 1: required string templateId = airavata_commons.DEFAULT_ID, 2: required string name, - 3: optional string graph, + 3: required string graph, 4: optional binary image, 5: optional list<application_io_models.InputDataObjectType> workflowInputs, 6: optional list<application_io_models.OutputDataObjectType> workflowOutputs } + +enum WorkflowState { + CREATED, + STARTED, + EXECUTING, + COMPLETED, + FAILED, + CANCELLING, + CANCELED +} + +enum ComponentState { + CREATED, + WAITING, + READY, + RUNNING, + COMPLETED, + FAILED, + CANCELED +} + +struct ComponentStatus { + 1: required ComponentState state = ComponentState.CREATED, + 2: optional string reason, + 3: optional i64 timeofStateChange +} + +struct WorkflowStatus { + 1: required WorkflowState state, + 2: optional i64 timeOfStateChange, + 3: optional string reason +} + +struct EdgeModel { + 1: required string edgeId = airavata_commons.DEFAULT_ID, + 2: optional string name, + 3: optional ComponentStatus status, + 4: optional string description +} + +struct PortModel { + 1: required string portId = airavata_commons.DEFAULT_ID, + 2: optional string name + 3: optional ComponentStatus status, + 4: optional string description + +} + +struct NodeModel { + 1: required string nodeId= airavata_commons.DEFAULT_ID, + 2: optional string name, + 3: optional ComponentStatus status, + 4: optional string description +}
