From 8e8a726b70e8161ab9d1c1659b6589d0af8c2e4f Mon Sep 17 00:00:00 2001 From: shrek2000 Date: Tue, 20 Feb 2018 16:00:48 +0200 Subject: Workflow Operation Data model for workflow operations. Issue-ID: SDC-990 Change-Id: If13cca8c03368652e6cb3a8c3d48151b6ddcda74 Signed-off-by: shrek2000 --- .../java/org/openecomp/sdc/be/model/Resource.java | 23 ++++-- .../elements/WorkflowOperationDataDefinition.java | 89 ++++++++++++++++++++++ .../WorkflowOperationParamDataDefinition.java | 55 +++++++++++++ .../be/datatypes/enums/JsonPresentationFields.java | 8 +- 4 files changed, 169 insertions(+), 6 deletions(-) create mode 100644 common-be/src/main/java/org/openecomp/sdc/be/datatypes/elements/WorkflowOperationDataDefinition.java create mode 100644 common-be/src/main/java/org/openecomp/sdc/be/datatypes/elements/WorkflowOperationParamDataDefinition.java diff --git a/catalog-model/src/main/java/org/openecomp/sdc/be/model/Resource.java b/catalog-model/src/main/java/org/openecomp/sdc/be/model/Resource.java index d48718bbff..786c11f636 100644 --- a/catalog-model/src/main/java/org/openecomp/sdc/be/model/Resource.java +++ b/catalog-model/src/main/java/org/openecomp/sdc/be/model/Resource.java @@ -29,11 +29,9 @@ import org.openecomp.sdc.be.dao.utils.MapUtil; import org.openecomp.sdc.be.datatypes.components.ResourceMetadataDataDefinition; import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; - +import org.openecomp.sdc.be.datatypes.elements.WorkflowOperationDataDefinition; public class Resource extends Component implements Serializable { - /** - * - */ + private static final long serialVersionUID = -6811540567661368482L; public static final String ROOT_RESOURCE = "tosca.nodes.Root"; @@ -60,6 +58,8 @@ public class Resource extends Component implements Serializable { private List defaultCapabilities; + private Map workflowOperations; + // private List additionalInformation; /** @@ -153,6 +153,13 @@ public class Resource extends Component implements Serializable { .setLicenseType(licenseType); } + public Map getWorkflowOperations() { + return workflowOperations; + } + + public void setWorkflowOperations(Map workflowOperations) { + this.workflowOperations = workflowOperations; + } @Override public int hashCode() { @@ -168,6 +175,7 @@ public class Resource extends Component implements Serializable { result = prime * result + ((interfaces == null) ? 0 : interfaces.hashCode()); result = prime * result + ((properties == null) ? 0 : properties.hashCode()); result = prime * result + ((derivedList == null) ? 0 : derivedList.hashCode()); + result = prime * result + ((workflowOperations == null) ? 0 : workflowOperations.hashCode()); // result = prime * result + ((requirements == null) ? 0 : // requirements.hashCode()); return result; @@ -213,7 +221,11 @@ public class Resource extends Component implements Serializable { return false; } else if (!properties.equals(other.properties)) return false; - + if (workflowOperations == null) { + if (other.workflowOperations != null) + return false; + } else if (!workflowOperations.equals(other.workflowOperations)) + return false; return super.equals(obj); } @@ -224,6 +236,7 @@ public class Resource extends Component implements Serializable { // + ", capabilities=" + capabilities + ", requirements=" + // requirements + ", defaultCapabilities=" + defaultCapabilities + ", additionalInformation=" + additionalInformation + + ", workflowOperations=" + workflowOperations + "Metadata [" + getComponentMetadataDefinition().getMetadataDataDefinition().toString() + "]"; } diff --git a/common-be/src/main/java/org/openecomp/sdc/be/datatypes/elements/WorkflowOperationDataDefinition.java b/common-be/src/main/java/org/openecomp/sdc/be/datatypes/elements/WorkflowOperationDataDefinition.java new file mode 100644 index 0000000000..52f5f02a40 --- /dev/null +++ b/common-be/src/main/java/org/openecomp/sdc/be/datatypes/elements/WorkflowOperationDataDefinition.java @@ -0,0 +1,89 @@ +/* + * Copyright © 2016-2018 European Support Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openecomp.sdc.be.datatypes.elements; + +import static org.openecomp.sdc.be.datatypes.enums.JsonPresentationFields.DESCRIPTION; +import static org.openecomp.sdc.be.datatypes.enums.JsonPresentationFields.TOSCA_RESOURCE_NAME; +import static org.openecomp.sdc.be.datatypes.enums.JsonPresentationFields.UNIQUE_ID; +import static org.openecomp.sdc.be.datatypes.enums.JsonPresentationFields.WO_INPUT_PARAMETERS; +import static org.openecomp.sdc.be.datatypes.enums.JsonPresentationFields.WO_OUTPUT_PARAMETERS; +import static org.openecomp.sdc.be.datatypes.enums.JsonPresentationFields.WO_TYPE; + + +import java.io.Serializable; +import org.openecomp.sdc.be.datatypes.tosca.ToscaDataDefinition; + +public class WorkflowOperationDataDefinition extends ToscaDataDefinition implements Serializable { + + public WorkflowOperationDataDefinition() { + super(); + } + + public WorkflowOperationDataDefinition(WorkflowOperationDataDefinition wodd) { + super(); + setUniqueId(wodd.getUniqueId()); + setInputParams(wodd.getInputParams()); + setOutputParams(wodd.getOutputParams()); + setDescription(wodd.getDescription()); + setToscaResourceName(wodd.getToscaResourceName()); + setType(wodd.getType()); + } + + public ListDataDefinition getInputParams() { + return (ListDataDefinition) getToscaPresentationValue(WO_INPUT_PARAMETERS); + } + + public void setInputParams(ListDataDefinition pathElements) { + setToscaPresentationValue(WO_INPUT_PARAMETERS, pathElements); + } + public ListDataDefinition getOutputParams() { + return (ListDataDefinition) getToscaPresentationValue(WO_OUTPUT_PARAMETERS); + } + + public void setOutputParams(ListDataDefinition pathElements) { + setToscaPresentationValue(WO_OUTPUT_PARAMETERS, pathElements); + } + public String getUniqueId() { + return (String) getToscaPresentationValue(UNIQUE_ID); + } + + public void setUniqueId(String uid) { + setToscaPresentationValue(UNIQUE_ID, uid); + } + + public String getDescription() { + return (String) getToscaPresentationValue(DESCRIPTION); + } + + public void setDescription(String description) { + setToscaPresentationValue(DESCRIPTION, description); + } + public String getType() { + return (String) getToscaPresentationValue(WO_TYPE); + } + + public void setType(String description) { + setToscaPresentationValue(WO_TYPE, description); + } + public String getToscaResourceName() { + return (String) getToscaPresentationValue(TOSCA_RESOURCE_NAME); + } + + public void setToscaResourceName(String toscaResourceName) { + setToscaPresentationValue(TOSCA_RESOURCE_NAME, toscaResourceName); + } +} diff --git a/common-be/src/main/java/org/openecomp/sdc/be/datatypes/elements/WorkflowOperationParamDataDefinition.java b/common-be/src/main/java/org/openecomp/sdc/be/datatypes/elements/WorkflowOperationParamDataDefinition.java new file mode 100644 index 0000000000..36dd85c336 --- /dev/null +++ b/common-be/src/main/java/org/openecomp/sdc/be/datatypes/elements/WorkflowOperationParamDataDefinition.java @@ -0,0 +1,55 @@ +/* + * Copyright © 2016-2018 European Support Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openecomp.sdc.be.datatypes.elements; + +import static org.openecomp.sdc.be.datatypes.enums.JsonPresentationFields.WO_PARAM_ID; +import static org.openecomp.sdc.be.datatypes.enums.JsonPresentationFields.WO_PARAM_NAME; + +import java.io.Serializable; +import org.openecomp.sdc.be.datatypes.tosca.ToscaDataDefinition; + +public class WorkflowOperationParamDataDefinition extends ToscaDataDefinition implements Serializable { + + public WorkflowOperationParamDataDefinition() { + super(); + } + + + + public WorkflowOperationParamDataDefinition(WorkflowOperationParamDataDefinition wopdd) { + super(); + setParamName(wopdd.getParamName()); + setParamID(wopdd.getParamID()); + + } + + public String getParamName() { + return (String) getToscaPresentationValue(WO_PARAM_NAME); + } + + public void setParamName(String name) { + setToscaPresentationValue(WO_PARAM_NAME, name); + } + public String getParamID() { + return (String) getToscaPresentationValue(WO_PARAM_ID); + } + + public void setParamID(String name) { + setToscaPresentationValue(WO_PARAM_ID, name); + } + +} diff --git a/common-be/src/main/java/org/openecomp/sdc/be/datatypes/enums/JsonPresentationFields.java b/common-be/src/main/java/org/openecomp/sdc/be/datatypes/enums/JsonPresentationFields.java index f88c84644c..bb65e7e7a9 100644 --- a/common-be/src/main/java/org/openecomp/sdc/be/datatypes/enums/JsonPresentationFields.java +++ b/common-be/src/main/java/org/openecomp/sdc/be/datatypes/enums/JsonPresentationFields.java @@ -161,7 +161,7 @@ public enum JsonPresentationFields { GROUP_INSTANCE_ARTIFACTS_UUID ("groupInstanceArtifactsUuid", null), GROUP_INSTANCE_PROPERTIES ("groupInstancesProperties", null), - //Component insatnce + //Component instance CI_COMPONENT_UID ("componentUid", null), CI_POS_X ("posX", null), @@ -181,6 +181,12 @@ public enum JsonPresentationFields { CI_SOURCE_MODEL_NAME ("sourceModelName", null), CI_IS_PROXY ("isProxy", null), + //Workflow Operation + WO_TYPE ("operationType",null), + WO_INPUT_PARAMETERS ("inputParams",null), + WO_OUTPUT_PARAMETERS ("outputParams",null), + WO_PARAM_NAME("paramName", null), + WO_PARAM_ID("paramId", null) ; -- cgit 1.2.3-korg