aboutsummaryrefslogtreecommitdiffstats
path: root/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailAttachPolicyImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailAttachPolicyImpl.java')
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailAttachPolicyImpl.java195
1 files changed, 89 insertions, 106 deletions
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailAttachPolicyImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailAttachPolicyImpl.java
index 2bee60dbda..3792f0eb54 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailAttachPolicyImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailAttachPolicyImpl.java
@@ -1,34 +1,35 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
+/*
+ * 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.
- * ============LICENSE_END=========================================================
*/
package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+import static org.openecomp.sdc.heat.services.HeatConstants.NETWORK_PROPERTY_NAME;
+import static org.openecomp.sdc.tosca.services.DataModelUtil.createAttachmentRequirementAssignment;
+import static org.openecomp.sdc.translator.services.heattotosca.HeatToToscaLogConstants.LOG_UNSUPPORTED_POLICY_NETWORK_PROPERTY;
+import static org.openecomp.sdc.translator.services.heattotosca.HeatToToscaLogConstants.LOG_UNSUPPORTED_POLICY_PROPERTY_GET_ATTR;
+import static org.openecomp.sdc.translator.services.heattotosca.HeatToToscaLogConstants.LOG_UNSUPPORTED_POLICY_RESOURCE;
+
+import java.util.Optional;
+
+import org.onap.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.heat.datatypes.model.Resource;
import org.openecomp.sdc.logging.api.Logger;
import org.openecomp.sdc.logging.api.LoggerFactory;
-import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
-import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
import org.openecomp.sdc.tosca.datatypes.ToscaTopologyTemplateElements;
-import org.onap.sdc.tosca.datatypes.model.NodeTemplate;
-import org.onap.sdc.tosca.datatypes.model.RequirementAssignment;
import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.tosca.services.ToscaConstants;
import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
@@ -37,107 +38,89 @@ import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslationFactory;
import org.openecomp.sdc.translator.services.heattotosca.errors.MissingMandatoryPropertyErrorBuilder;
-import java.util.Optional;
-
public class ResourceTranslationContrailAttachPolicyImpl extends ResourceTranslationBase {
- protected static Logger logger = LoggerFactory.getLogger(ResourceTranslationContrailAttachPolicyImpl.class);
+ protected static Logger logger = LoggerFactory.getLogger(ResourceTranslationContrailAttachPolicyImpl.class);
+
+ @Override
+ protected void translate(TranslateTo translateTo) {
+ String heatFileName = translateTo.getHeatFileName();
+ String translatedNetworkResourceId = getTranslatedNetworkResourceId(translateTo);
+ if (translatedNetworkResourceId == null) {
+ return;
+ }
+
+ NodeTemplate policyNodeTemplate = getTranslatedPolicyNodeTemplate(translateTo, heatFileName);
+ if (policyNodeTemplate != null) {
+ DataModelUtil.addRequirementAssignment(policyNodeTemplate, ToscaConstants.NETWORK_REQUIREMENT_ID,
+ createAttachmentRequirementAssignment(translatedNetworkResourceId));
+ }
+ }
- @Override
- protected void translate(TranslateTo translateTo) {
- String heatFileName = translateTo.getHeatFileName();
- String translatedNetworkResourceId = getTranslatedNetworkResourceId(translateTo);
- if (translatedNetworkResourceId == null) {
- return;
+ @Override
+ protected String generateTranslatedId(TranslateTo translateTo) {
+ return extractAttachedResourceIdHandleMissing(translateTo, NETWORK_PROPERTY_NAME).getEntityId().toString();
}
- NodeTemplate policyNodeTemplate = getTranslatedPolicyNodeTemplate(translateTo, heatFileName);
- if (policyNodeTemplate != null) {
- DataModelUtil
- .addRequirementAssignment(policyNodeTemplate, ToscaConstants.NETWORK_REQUIREMENT_ID,
- createRequirementAssignment(translatedNetworkResourceId));
+ @Override
+ protected Optional<ToscaTopologyTemplateElements> getTranslatedToscaTopologyElement(
+ TranslateTo translateTo) {
+ return Optional.empty();
}
- }
-
- @Override
- protected String generateTranslatedId(TranslateTo translateTo) {
- return extractAttachedResourceIdHandleMissing(translateTo, "network").getEntityId()
- .toString();
- }
-
- @Override
- protected Optional<ToscaTopologyTemplateElements> getTranslatedToscaTopologyElement(
- TranslateTo translateTo) {
- return Optional.empty();
- }
-
- private NodeTemplate getTranslatedPolicyNodeTemplate(TranslateTo translateTo,
- String heatFileName) {
- AttachedResourceId attachedPolicyResourceId =
- extractAttachedResourceIdHandleMissing(translateTo, "policy");
- NodeTemplate policyNodeTemplate = new NodeTemplate();
- Optional<String> policyResourceId =
- HeatToToscaUtil.getContrailAttachedHeatResourceId(attachedPolicyResourceId);
- if (policyResourceId.isPresent()) {
- policyNodeTemplate = getPolicyNodeTemplate(translateTo, heatFileName, policyResourceId.get());
- } else {
- logger.warn("Heat resource: '{}' with type: '{}' include 'policy' property without 'get_attr' of " +
- "'fq_name'/'get_resource' function, therefore this resource will be ignored in TOSCA translation.",
- translateTo.getResourceId(), translateTo.getResource().getType());
+
+ private NodeTemplate getTranslatedPolicyNodeTemplate(TranslateTo translateTo,
+ String heatFileName) {
+ AttachedResourceId attachedPolicyResourceId = extractAttachedResourceIdHandleMissing(translateTo, "policy");
+ NodeTemplate policyNodeTemplate = new NodeTemplate();
+ Optional<String> policyResourceId =
+ HeatToToscaUtil.getContrailAttachedHeatResourceId(attachedPolicyResourceId);
+ if (policyResourceId.isPresent()) {
+ policyNodeTemplate = getPolicyNodeTemplate(translateTo, heatFileName, policyResourceId.get());
+ } else {
+ logger.warn(LOG_UNSUPPORTED_POLICY_PROPERTY_GET_ATTR, translateTo.getResourceId(),
+ translateTo.getResource().getType());
+ }
+ return policyNodeTemplate;
}
- return policyNodeTemplate;
- }
-
- private NodeTemplate getPolicyNodeTemplate(TranslateTo translateTo, String heatFileName,
- String policyResourceId) {
- Resource policyResource = HeatToToscaUtil
- .getResource(translateTo.getHeatOrchestrationTemplate(), policyResourceId, heatFileName);
- Optional<String> translatedPolicyResourceId =
- ResourceTranslationFactory.getInstance(policyResource)
- .translateResource(heatFileName, translateTo.getServiceTemplate(),
- translateTo.getHeatOrchestrationTemplate(), policyResource, policyResourceId,
- translateTo.getContext());
- if (!translatedPolicyResourceId.isPresent()) {
- logger.warn("Heat resource: '{}' with type: '{}' include unsupported policy resource, " +
- "therefore this resource will be ignored in TOSCA translation.",
- translateTo.getResourceId(), translateTo.getResource().getType());
- return null;
+
+ private NodeTemplate getPolicyNodeTemplate(TranslateTo translateTo, String heatFileName,
+ String policyResourceId) {
+ Resource policyResource = HeatToToscaUtil
+ .getResource(translateTo.getHeatOrchestrationTemplate(), policyResourceId, heatFileName);
+ Optional<String> translatedPolicyResourceId =
+ ResourceTranslationFactory.getInstance(policyResource)
+ .translateResource(heatFileName, translateTo.getServiceTemplate(),
+ translateTo.getHeatOrchestrationTemplate(), policyResource, policyResourceId,
+ translateTo.getContext());
+ if (!translatedPolicyResourceId.isPresent()) {
+ logger.warn(LOG_UNSUPPORTED_POLICY_RESOURCE, translateTo.getResourceId(), translateTo.getResource().getType());
+ return null;
+ }
+ return DataModelUtil.getNodeTemplate(translateTo.getServiceTemplate(), translatedPolicyResourceId.get());
}
- return DataModelUtil
- .getNodeTemplate(translateTo.getServiceTemplate(), translatedPolicyResourceId.get());
- }
-
- private String getTranslatedNetworkResourceId(TranslateTo translateTo) {
- AttachedResourceId attachedNetworkResourceId =
- extractAttachedResourceIdHandleMissing(translateTo, "network");
-
- String translatedNetworkResourceId = null;
- if (attachedNetworkResourceId.isGetResource()) {
- translatedNetworkResourceId = (String) attachedNetworkResourceId.getTranslatedId();
- } else {
- logger.warn("Heat resource: '{}' with type: '{}' include 'network' property without 'get_resource' " +
- "function, therefore this resource will be ignored in TOSCA translation.",
- translateTo.getResourceId(), translateTo.getResource().getType());
+
+ private String getTranslatedNetworkResourceId(TranslateTo translateTo) {
+ AttachedResourceId attachedNetworkResourceId = extractAttachedResourceIdHandleMissing(translateTo,
+ NETWORK_PROPERTY_NAME);
+
+ String translatedNetworkResourceId = null;
+ if (attachedNetworkResourceId.isGetResource()) {
+ translatedNetworkResourceId = (String) attachedNetworkResourceId.getTranslatedId();
+ } else {
+ logger.warn(LOG_UNSUPPORTED_POLICY_NETWORK_PROPERTY, translateTo.getResourceId(),
+ translateTo.getResource().getType());
+ }
+ return translatedNetworkResourceId;
}
- return translatedNetworkResourceId;
- }
-
- private RequirementAssignment createRequirementAssignment(String translatedNetworkResourceId) {
- RequirementAssignment requirement = new RequirementAssignment();
- requirement.setCapability(ToscaCapabilityType.NATIVE_ATTACHMENT);
- requirement.setNode(translatedNetworkResourceId);
- requirement.setRelationship(ToscaRelationshipType.ATTACHES_TO);
- return requirement;
- }
-
- private AttachedResourceId extractAttachedResourceIdHandleMissing(
- TranslateTo translateTo, String propertyName) {
- Optional<AttachedResourceId> attachedResourceId =
- HeatToToscaUtil.extractAttachedResourceId(translateTo, propertyName);
-
- if (!attachedResourceId.isPresent()) {
- throw new CoreException(new MissingMandatoryPropertyErrorBuilder(propertyName).build());
+
+ private AttachedResourceId extractAttachedResourceIdHandleMissing(
+ TranslateTo translateTo, String propertyName) {
+ Optional<AttachedResourceId> attachedResourceId =
+ HeatToToscaUtil.extractAttachedResourceId(translateTo, propertyName);
+
+ if (!attachedResourceId.isPresent()) {
+ throw new CoreException(new MissingMandatoryPropertyErrorBuilder(propertyName).build());
+ }
+ return attachedResourceId.get();
}
- return attachedResourceId.get();
- }
}