aboutsummaryrefslogtreecommitdiffstats
path: root/blueprints-processor/plugin/assignment-provider/src
diff options
context:
space:
mode:
Diffstat (limited to 'blueprints-processor/plugin/assignment-provider/src')
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/ConfigAssignmentConstants.java37
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/data/ResourceAssignmentData.java163
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/DBResourceProcessor.java267
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/DefaultResourceProcessor.java107
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/InputResourceProcessor.java96
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/MdsalResourceProcessor.java239
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/ProcessorFactory.java52
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/ResourceAssignmentProcessor.java120
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentNode.java231
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentPersistService.java124
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentProcessService.java238
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentService.java35
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentServiceImpl.java79
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentUtils.java301
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigPreviewService.java119
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ResourceDictionaryService.java110
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ResourceModelService.java97
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/resources/OSGI-INF/blueprint/impl-blueprint.xml63
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/main/resources/org/opendaylight/blueprint/impl-blueprint.xml63
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/DBResourceProcessorTest.java231
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/DefaultResourceProcessorTest.java127
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/InputResourceProcessorTest.java178
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/MdsalResourceProcessorTest.java268
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentNodeTest.java246
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ConfigPreviewServiceTest.java111
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ConfigResourceAssignmentTestUtils.java182
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ResourceAssignmentGenerationTest.java110
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ResourceAssignmentValidation.java94
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/TopologicalSortingTest.java60
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/assignments/alltype-empty-value-mapping.json86
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/assignments/alltype-mapping.json110
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/assignments/empty-dictionary.json1
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/array-complex-response.json12
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/array-complex-v4-assigned-response.json13
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/complex-response.json6
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/default-pointer.json166
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/dt-location.json15
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/dt-v4-assigned-ip-list.json27
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-array-v4iplist.json76
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-array.json42
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-complex.json38
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-simple.json37
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-array.json15
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-complex-simple.json12
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-complex.json12
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-simple.json12
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/simple-response.json3
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/db-array.json40
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/db-complex.json37
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/db-simple.json36
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/dt-location.json15
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/resource-assignments-array.json15
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/resource-assignments-complex.json12
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/resource-assignments-simple.json12
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/default/default-simple.json35
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/default/resource-assignments-simple.json35
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/dependency.json110
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/dt-location.json15
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/input-complex.json24
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/input-simple.json35
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/resource-assignments-complex.json13
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/resource-assignments-simple.json32
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/sample-location.json4
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/input/input.json18
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/input/inputValidateTest.json18
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/resource_assignment.json407
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/resource_assignment/resource_assignment.json417
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/resource_assignment/velocity/base-config-template.vtl40
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/dict.json172
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/input-complex.json49
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/velocity/base-config-template.vtl40
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/vpe-201802-baseconfig.json639
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/validation/cyclic.json111
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/validation/duplicate.json110
-rw-r--r--blueprints-processor/plugin/assignment-provider/src/test/resources/validation/success.json110
75 files changed, 0 insertions, 7432 deletions
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/ConfigAssignmentConstants.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/ConfigAssignmentConstants.java
deleted file mode 100644
index 3052a8611..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/ConfigAssignmentConstants.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment;
-
-@SuppressWarnings("squid:S1118")
-public class ConfigAssignmentConstants {
-
- public static final String OUTPUT_PARAM_STATUS = "status";
- public static final String OUTPUT_PARAM_RESOURCE_ASSIGNMENT_PARAMS = "resource-assignment-params";
- public static final String OUTPUT_PARAM_MASHED_DATA = "mashed-data";
- public static final String OUTPUT_PARAM_ERROR_MESSAGE = "error-message";
- public static final String OUTPUT_STATUS_SUCCESS = "success";
- public static final String OUTPUT_STATUS_FAILURE = "failure";
-
- public static final String INPUT_PARAM_REQUEST_ID = "request-id";
- public static final String INPUT_PARAM_RESOURCE_ID = "resource-id";
- public static final String INPUT_PARAM_RESOURCE_TYPE = "resource-type";
- public static final String INPUT_PARAM_ACTION_NAME = "action-name";
- public static final String INPUT_PARAM_TEMPLATE_NAMES = "template-names";
- public static final String INPUT_PARAM_INPUT_DATA = "input-data";
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/data/ResourceAssignmentData.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/data/ResourceAssignmentData.java
deleted file mode 100644
index 75a1398bd..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/data/ResourceAssignmentData.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.data;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-
-public class ResourceAssignmentData {
-
- private String requestId;
- private boolean reloadModel;
- private String resourceType;
- private String resourceId;
- private String serviceTemplateName;
- private String serviceTemplateVersion;
- private String actionName;
- private String inputData;
- private SvcLogicContext svcLogicContext;
- private List<String> templateNames;
- private Map<String, List<ResourceAssignment>> templatesResourceAssignments = new HashMap<>();
- private Map<String, String> templatesContents = new HashMap<>();
- private Map<String, String> templatesMashedContents = new HashMap<>();
- private Map<String, String> templatesData = new HashMap<>();
- private Map<String, Object> context = new HashMap<>();
-
- public String getRequestId() {
- return requestId;
- }
-
- public void setRequestId(String requestId) {
- this.requestId = requestId;
- }
-
- public String getResourceType() {
- return resourceType;
- }
-
- public void setResourceType(String resourceType) {
- this.resourceType = resourceType;
- }
-
- public String getResourceId() {
- return resourceId;
- }
-
- public void setResourceId(String resourceId) {
- this.resourceId = resourceId;
- }
-
- public String getServiceTemplateName() {
- return serviceTemplateName;
- }
-
- public void setServiceTemplateName(String serviceTemplateName) {
- this.serviceTemplateName = serviceTemplateName;
- }
-
- public String getServiceTemplateVersion() {
- return serviceTemplateVersion;
- }
-
- public void setServiceTemplateVersion(String serviceTemplateVersion) {
- this.serviceTemplateVersion = serviceTemplateVersion;
- }
-
- public String getActionName() {
- return actionName;
- }
-
- public void setActionName(String actionName) {
- this.actionName = actionName;
- }
-
- public String getInputData() {
- return inputData;
- }
-
- public void setInputData(String inputData) {
- this.inputData = inputData;
- }
-
- public List<String> getTemplateNames() {
- return templateNames;
- }
-
- public void setTemplateNames(List<String> templateNames) {
- this.templateNames = templateNames;
- }
-
- public Map<String, List<ResourceAssignment>> getTemplatesResourceAssignments() {
- return templatesResourceAssignments;
- }
-
- public void setTemplatesResourceAssignments(Map<String, List<ResourceAssignment>> templatesResourceAssignments) {
- this.templatesResourceAssignments = templatesResourceAssignments;
- }
-
- public Map<String, String> getTemplatesContents() {
- return templatesContents;
- }
-
- public void setTemplatesContents(Map<String, String> templatesContents) {
- this.templatesContents = templatesContents;
- }
-
- public Map<String, String> getTemplatesMashedContents() {
- return templatesMashedContents;
- }
-
- public void setTemplatesMashedContents(Map<String, String> templatesMashedContents) {
- this.templatesMashedContents = templatesMashedContents;
- }
-
- public Map<String, String> getTemplatesData() {
- return templatesData;
- }
-
- public void setTemplatesData(Map<String, String> templatesData) {
- this.templatesData = templatesData;
- }
-
- public Map<String, Object> getContext() {
- return context;
- }
-
- public void setContext(Map<String, Object> context) {
- this.context = context;
- }
-
- public SvcLogicContext getSvcLogicContext() {
- return svcLogicContext;
- }
-
- public void setSvcLogicContext(SvcLogicContext svcLogicContext) {
- this.svcLogicContext = svcLogicContext;
- }
-
- public boolean isReloadModel() {
- return reloadModel;
- }
-
- public void setReloadModel(boolean reloadModel) {
- this.reloadModel = reloadModel;
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/DBResourceProcessor.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/DBResourceProcessor.java
deleted file mode 100644
index 132d03c4f..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/DBResourceProcessor.java
+++ /dev/null
@@ -1,267 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.processor;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.collections.CollectionUtils;
-import org.apache.commons.collections.MapUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.onap.ccsdk.features.assignment.service.ConfigAssignmentUtils;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.ConfigModelException;
-import org.onap.ccsdk.features.model.ValidTypes;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.data.dict.ResourceDefinition;
-import org.onap.ccsdk.features.model.data.dict.SourcesDefinition;
-import org.onap.ccsdk.features.model.service.ComponentNode;
-import org.onap.ccsdk.features.model.utils.JsonUtils;
-import org.onap.ccsdk.features.model.utils.ResourceAssignmentUtils;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import com.fasterxml.jackson.databind.node.ArrayNode;
-import com.fasterxml.jackson.databind.node.JsonNodeFactory;
-import com.fasterxml.jackson.databind.node.ObjectNode;
-
-public class DBResourceProcessor implements ComponentNode {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(DBResourceProcessor.class);
- private ConfigResourceService configResourceService;
- private Map<String, ResourceDefinition> dictionaries;
-
- public DBResourceProcessor(ConfigResourceService configResourceService) {
- this.configResourceService = configResourceService;
- }
-
- @Override
- public Boolean preCondition(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- return Boolean.TRUE;
- }
-
- @Override
- public void preProcess(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- // Auto-generated method stub
- }
-
- @Override
- public void process(Map<String, String> inParams, SvcLogicContext ctx) throws SvcLogicException {
- // Auto-generated method stub
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public void process(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- try {
- List<ResourceAssignment> batchResourceAssignment =
- (List<ResourceAssignment>) componentContext.get(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS);
- dictionaries =
- (Map<String, ResourceDefinition>) componentContext.get(ConfigModelConstant.PROPERTY_DICTIONARIES);
-
- if (CollectionUtils.isNotEmpty(batchResourceAssignment)) {
- for (ResourceAssignment resourceAssignment : batchResourceAssignment) {
- processResourceAssignment(ctx, componentContext, resourceAssignment);
- }
- }
- } catch (Exception e) {
- throw new SvcLogicException(String.format("DBResourceProcessor Exception : (%s)", e), e);
- }
- }
-
- private void processResourceAssignment(SvcLogicContext ctx, Map<String, Object> componentContext,
- ResourceAssignment resourceAssignment) throws SvcLogicException, ConfigModelException {
- if (resourceAssignment != null) {
- try {
- validate(resourceAssignment);
-
- // Check if It has Input
- Object value = ConfigAssignmentUtils.getContextKeyValue(ctx, resourceAssignment.getName());
- if (value != null) {
- logger.info("db source template key ({}) found from input and value is ({})",
- resourceAssignment.getName(), value);
- ResourceAssignmentUtils.setResourceDataValue(componentContext, resourceAssignment, value);
- return;
- }
-
- ResourceDefinition resourceDefinition = dictionaries.get(resourceAssignment.getDictionaryName());
- SourcesDefinition sourceDb = resourceDefinition.getSources().get("db");
- if (StringUtils.isBlank(sourceDb.getProperties().getQuery())) {
- throw new SvcLogicException("db query property is missing");
- }
-
- String sql = sourceDb.getProperties().getQuery();
- Map<String, String> inputKeyMapping = sourceDb.getProperties().getInputKeyMapping();
-
- logger.info("Db dictionary information : ({}), ({}), ({})", sql, inputKeyMapping,
- sourceDb.getProperties().getOutputKeyMapping());
-
- Map<String, Object> namedParameters = populateNamedParameter(componentContext, inputKeyMapping);
-
- logger.info("Parameter information : ({})", namedParameters);
- List<Map<String, Object>> rows = configResourceService.query(sql, namedParameters);
- if (rows != null && !rows.isEmpty()) {
- processDBResults(ctx, componentContext, resourceAssignment, sourceDb, rows);
- } else {
- logger.warn("Failed to get db result for dictionary name ({}) the query ({})",
- resourceAssignment.getDictionaryName(), sql);
- }
-
- // Check the value has populated for mandatory case
- ResourceAssignmentUtils.assertTemplateKeyValueNotNull(componentContext, resourceAssignment);
- } catch (Exception e) {
- ResourceAssignmentUtils.setFailedResourceDataValue(componentContext, resourceAssignment,
- e.getMessage());
- throw new SvcLogicException(
- String.format("Failed in template key (%s) assignments : (%s)", resourceAssignment, e), e);
- }
- } else {
- // Do Nothing
- }
- }
-
- private void validate(ResourceAssignment resourceAssignment) throws SvcLogicException {
- if (resourceAssignment == null) {
- throw new SvcLogicException("resource assignment is not defined");
- }
-
- if (StringUtils.isBlank(resourceAssignment.getName())) {
- throw new SvcLogicException("resource assignment template key is not defined");
- }
-
- if (StringUtils.isBlank(resourceAssignment.getDictionaryName())) {
- throw new SvcLogicException(
- String.format("resource assignment dictionary name is not defined for template key (%s)",
- resourceAssignment.getName()));
- }
-
- if (!ConfigModelConstant.SOURCE_DB.equalsIgnoreCase(resourceAssignment.getDictionarySource())) {
- throw new SvcLogicException(String.format("resource assignment source is not db, it is (%s)",
- resourceAssignment.getDictionarySource()));
- }
-
- ResourceDefinition resourceDefinition = dictionaries.get(resourceAssignment.getDictionaryName());
- if (resourceDefinition == null) {
- throw new SvcLogicException(String.format("missing resource dictionary definition for name (%s) ",
- resourceAssignment.getDictionaryName()));
- }
-
- if (resourceDefinition.getSources() == null || resourceDefinition.getSources().get("db") == null) {
- throw new SvcLogicException(String.format("missing resource dictionary db source definition for name (%s) ",
- resourceAssignment.getDictionaryName()));
- }
-
- SourcesDefinition sourceDb = resourceDefinition.getSources().get("db");
- if (StringUtils.isBlank(sourceDb.getProperties().getQuery())) {
- throw new SvcLogicException(String.format("Failed to get request Query for dictionary (%s)",
- resourceAssignment.getDictionaryName()));
- }
-
- }
-
- private Map<String, Object> populateNamedParameter(Map<String, Object> componentContext,
- Map<String, String> inputKeyMapping) {
- Map<String, Object> namedParameters = new HashMap<>();
- if (MapUtils.isNotEmpty(inputKeyMapping)) {
-
- for (Map.Entry<String, String> mapping : inputKeyMapping.entrySet()) {
- ResourceDefinition referenceDictionaryDefinition = dictionaries.get(mapping.getValue());
- Object expressionValue =
- ResourceAssignmentUtils.getDictionaryKeyValue(componentContext, referenceDictionaryDefinition);
- logger.trace("Reference dictionary key ({}), value ({})", mapping.getKey(), expressionValue);
- namedParameters.put(mapping.getKey(), expressionValue);
- }
- }
- return namedParameters;
- }
-
- @SuppressWarnings("squid:S3776")
- private void processDBResults(SvcLogicContext ctx, Map<String, Object> componentContext,
- ResourceAssignment resourceAssignment, SourcesDefinition sourceDb, List<Map<String, Object>> rows)
- throws SvcLogicException, ConfigModelException {
-
- Map<String, String> outputKeyMapping = sourceDb.getProperties().getOutputKeyMapping();
- String type = resourceAssignment.getProperty().getType();
- String entrySchema = null;
- logger.info("Response processing type({})", type);
- // Primitive Types
- if (ValidTypes.getPrimitivePropertType().contains(type)) {
-
- Map<String, Object> row = rows.get(0);
- String dbColumnName = outputKeyMapping.get(resourceAssignment.getDictionaryName());
- Object dbColumnValue = row.get(dbColumnName);
- ResourceAssignmentUtils.setResourceDataValue(componentContext, resourceAssignment, dbColumnValue);
-
- } else if (ValidTypes.getListPropertType().contains(type)) {
- // Array Types
- if (resourceAssignment.getProperty().getEntrySchema() != null) {
- entrySchema = resourceAssignment.getProperty().getEntrySchema().getType();
- }
-
- if (StringUtils.isNotBlank(entrySchema)) {
- ArrayNode arrayNode = JsonNodeFactory.instance.arrayNode();
-
- for (Map<String, Object> row : rows) {
- if (ValidTypes.getPrimitivePropertType().contains(entrySchema)) {
- String dbColumnName = outputKeyMapping.get(resourceAssignment.getDictionaryName());
- Object dbColumnValue = row.get(dbColumnName);
- // Add Array JSON
- JsonUtils.populatePrimitiveValues(dbColumnValue, entrySchema, arrayNode);
- } else {
- ObjectNode arrayChildNode = JsonNodeFactory.instance.objectNode();
- for (Map.Entry<String, String> mapping : outputKeyMapping.entrySet()) {
- Object dbColumnValue = row.get(mapping.getKey());
- String propertyTypeForDataType =
- ConfigAssignmentUtils.getPropertyType(ctx, entrySchema, mapping.getKey());
- JsonUtils.populatePrimitiveValues(mapping.getKey(), dbColumnValue, propertyTypeForDataType,
- arrayChildNode);
- }
- arrayNode.add(arrayChildNode);
- }
- }
- // Set the List of Complex Values
- ResourceAssignmentUtils.setResourceDataValue(componentContext, resourceAssignment, arrayNode);
- } else {
- throw new SvcLogicException(String.format("Entry schema is not defined for dictionary (%s) info",
- resourceAssignment.getDictionaryName()));
- }
- } else {
- // Complex Types
- Map<String, Object> row = rows.get(0);
- ObjectNode objectNode = JsonNodeFactory.instance.objectNode();
- for (Map.Entry<String, String> mapping : outputKeyMapping.entrySet()) {
- Object dbColumnValue = row.get(mapping.getKey());
- String propertyTypeForDataType = ConfigAssignmentUtils.getPropertyType(ctx, type, mapping.getKey());
- JsonUtils.populatePrimitiveValues(mapping.getKey(), dbColumnValue, propertyTypeForDataType, objectNode);
- }
- ResourceAssignmentUtils.setResourceDataValue(componentContext, resourceAssignment, objectNode);
- }
- }
-
- @Override
- public void postProcess(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- // Auto-generated method stub
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/DefaultResourceProcessor.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/DefaultResourceProcessor.java
deleted file mode 100644
index 563d5b523..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/DefaultResourceProcessor.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.processor;
-
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.lang3.StringUtils;
-import org.onap.ccsdk.features.assignment.service.ConfigAssignmentUtils;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.ConfigModelException;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.service.ComponentNode;
-import org.onap.ccsdk.features.model.utils.ResourceAssignmentUtils;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-
-public class DefaultResourceProcessor implements ComponentNode {
-
- public DefaultResourceProcessor(ConfigResourceService configResourceService) {}
-
- @Override
- public Boolean preCondition(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- return Boolean.TRUE;
- }
-
- @Override
- public void preProcess(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- // Auto-generated method stub
- }
-
- @Override
- public void process(Map<String, String> inParams, SvcLogicContext ctx) throws SvcLogicException {
- // Auto-generated method stub
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public void process(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- try {
- List<ResourceAssignment> batchResourceAssignment =
- (List<ResourceAssignment>) componentContext.get(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS);
-
- if (batchResourceAssignment != null && !batchResourceAssignment.isEmpty()) {
- for (ResourceAssignment resourceAssignment : batchResourceAssignment) {
- processResourceAssignment(ctx, componentContext, resourceAssignment);
- }
- }
- } catch (Exception e) {
- throw new SvcLogicException(String.format("DefaultResourceProcessor Exception : (%s)", e), e);
- }
-
- }
-
- private void processResourceAssignment(SvcLogicContext ctx, Map<String, Object> componentContext,
- ResourceAssignment resourceAssignment) throws ConfigModelException, SvcLogicException {
- if (resourceAssignment != null && StringUtils.isNotBlank(resourceAssignment.getName())
- && resourceAssignment.getProperty() != null) {
- try {
- // Check if It has Input
- Object value = ConfigAssignmentUtils.getContextKeyValue(ctx, resourceAssignment.getName());
- if (value == null) {
- value = resourceAssignment.getProperty().getDefaultValue();
- }
-
- // if value is null don't call setResourceDataValue to populate the value
- if (value != null) {
- ResourceAssignmentUtils.setResourceDataValue(componentContext, resourceAssignment, value);
- }
-
- // Check the value has populated for mandatory case
- ResourceAssignmentUtils.assertTemplateKeyValueNotNull(componentContext, resourceAssignment);
- } catch (Exception e) {
- ResourceAssignmentUtils.setFailedResourceDataValue(componentContext, resourceAssignment,
- e.getMessage());
- throw new SvcLogicException(
- String.format("Failed in template key (%s) assignments with : (%s)", resourceAssignment, e), e);
- }
- }
- }
-
- @Override
- public void postProcess(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- // Auto-generated method stub
-
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/InputResourceProcessor.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/InputResourceProcessor.java
deleted file mode 100644
index 6c73b08de..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/InputResourceProcessor.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.processor;
-
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.lang3.StringUtils;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.ConfigModelException;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.service.ComponentNode;
-import org.onap.ccsdk.features.model.utils.ResourceAssignmentUtils;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-
-public class InputResourceProcessor implements ComponentNode {
-
- public InputResourceProcessor(ConfigResourceService configResourceService) {}
-
- @Override
- public Boolean preCondition(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- return Boolean.TRUE;
- }
-
- @Override
- public void preProcess(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- // Auto-generated method stub
- }
-
- @Override
- public void process(Map<String, String> inParams, SvcLogicContext ctx) throws SvcLogicException {
- // Auto-generated method stub
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public void process(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- try {
- List<ResourceAssignment> batchResourceAssignment =
- (List<ResourceAssignment>) componentContext.get(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS);
- if (batchResourceAssignment != null && !batchResourceAssignment.isEmpty()) {
- for (ResourceAssignment resourceAssignment : batchResourceAssignment) {
- processResourceAssignment(ctx, componentContext, resourceAssignment);
- }
- }
- } catch (Exception e) {
- throw new SvcLogicException(String.format("InputResourceProcessor Exception : (%s)", e), e);
- }
- }
-
- private void processResourceAssignment(SvcLogicContext ctx, Map<String, Object> componentContext,
- ResourceAssignment resourceAssignment) throws ConfigModelException, SvcLogicException {
- try {
- if (StringUtils.isNotBlank(resourceAssignment.getName())) {
- String value = ctx.getAttribute(resourceAssignment.getName());
- // if value is null don't call setResourceDataValue to populate the value
- if (StringUtils.isNotBlank(value)) {
- ResourceAssignmentUtils.setResourceDataValue(componentContext, resourceAssignment, value);
- }
- }
-
- // Check the value has populated for mandatory case
- ResourceAssignmentUtils.assertTemplateKeyValueNotNull(componentContext, resourceAssignment);
- } catch (Exception e) {
- ResourceAssignmentUtils.setFailedResourceDataValue(componentContext, resourceAssignment, e.getMessage());
- throw new SvcLogicException(
- String.format("Failed in template key (%s) assignments with : (%s)", resourceAssignment, e), e);
- }
- }
-
- @Override
- public void postProcess(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- // Auto-generated method stub
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/MdsalResourceProcessor.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/MdsalResourceProcessor.java
deleted file mode 100644
index dfc041cee..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/MdsalResourceProcessor.java
+++ /dev/null
@@ -1,239 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.processor;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.collections.CollectionUtils;
-import org.apache.commons.collections.MapUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.onap.ccsdk.features.assignment.service.ConfigAssignmentUtils;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.ConfigModelException;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.data.dict.ResourceDefinition;
-import org.onap.ccsdk.features.model.data.dict.SourcesDefinition;
-import org.onap.ccsdk.features.model.service.ComponentNode;
-import org.onap.ccsdk.features.model.utils.ResourceAssignmentUtils;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import org.onap.ccsdk.features.rest.adaptor.ConfigRestAdaptorConstants;
-import org.onap.ccsdk.features.rest.adaptor.service.ConfigRestAdaptorService;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import com.fasterxml.jackson.databind.JsonNode;
-
-public class MdsalResourceProcessor implements ComponentNode {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(MdsalResourceProcessor.class);
- private ConfigRestAdaptorService configRestAdaptorService;
- private Map<String, ResourceDefinition> dictionaries;
-
- public MdsalResourceProcessor(ConfigRestAdaptorService configRestAdaptorService) {
- this.configRestAdaptorService = configRestAdaptorService;
- }
-
- @Override
- public Boolean preCondition(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- return Boolean.TRUE;
- }
-
- @Override
- public void preProcess(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- // Auto-generated method stub
- }
-
- @Override
- public void process(Map<String, String> inParams, SvcLogicContext ctx) throws SvcLogicException {
- // Auto-generated method stub
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public void process(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- try {
- List<ResourceAssignment> batchResourceAssignment =
- (List<ResourceAssignment>) componentContext.get(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS);
- dictionaries =
- (Map<String, ResourceDefinition>) componentContext.get(ConfigModelConstant.PROPERTY_DICTIONARIES);
-
- if (CollectionUtils.isNotEmpty(batchResourceAssignment)) {
- for (ResourceAssignment resourceAssignment : batchResourceAssignment) {
- processResourceAssignmnet(ctx, componentContext, resourceAssignment);
- }
- }
- } catch (Exception e) {
- throw new SvcLogicException(String.format("MdsalResourceProcessor Exception : (%s) ", e), e);
- }
- }
-
- private void processResourceAssignmnet(SvcLogicContext ctx, Map<String, Object> componentContext,
- ResourceAssignment resourceAssignment) throws ConfigModelException, SvcLogicException {
-
- try {
- // Validating Resource Assignment and Dictionary Definition data
- validate(resourceAssignment);
-
- // Check if It has Input
- Object value = ConfigAssignmentUtils.getContextKeyValue(ctx, resourceAssignment.getName());
- if (value != null) {
- logger.info("mdsal source template key ({}) found from input and value is ({})",
- resourceAssignment.getName(), value);
- ResourceAssignmentUtils.setResourceDataValue(componentContext, resourceAssignment, value);
- return;
- }
-
- ResourceDefinition resourceDefinition = dictionaries.get(resourceAssignment.getDictionaryName());
- SourcesDefinition sourceMdsal = resourceDefinition.getSources().get("mdsal");
- String urlPath = sourceMdsal.getProperties().getUrlPath();
- String path = sourceMdsal.getProperties().getPath();
- Map<String, String> inputKeyMapping = sourceMdsal.getProperties().getInputKeyMapping();
- Map<String, String> outputKeyMapping = sourceMdsal.getProperties().getOutputKeyMapping();
-
- logger.info(
- "mdsal dictionary information : urlpath ({}), path({}), inputKeyMapping ({}), outputKeyMapping ({})",
- urlPath, path, inputKeyMapping, outputKeyMapping);
-
- // Resolving url Variables
- Map<String, Object> urlVariables = populateUrlVariables(inputKeyMapping, componentContext);
- for (Map.Entry<String, Object> entry : urlVariables.entrySet()) {
- urlPath = urlPath.replaceAll("\\$" + entry.getKey(), entry.getValue().toString());
- }
-
- String restResponse = fetchResourceFromMDSAL(urlPath);
- // if restResponse is null don't call processMdsalResults to populate the value
- if (StringUtils.isNotBlank(restResponse)) {
- // Processing MDSAL Response
- processMdsalResults(ctx, componentContext, resourceAssignment, sourceMdsal, restResponse);
- } else {
- logger.warn("Coudn't get proper mdsal Response content ({}) for Resource Name ({}) for URI ({})",
- restResponse, resourceAssignment.getDictionaryName(), urlPath);
- }
-
- // Check the value has populated for mandatory case
- ResourceAssignmentUtils.assertTemplateKeyValueNotNull(componentContext, resourceAssignment);
- } catch (Exception e) {
- ResourceAssignmentUtils.setFailedResourceDataValue(componentContext, resourceAssignment, e.getMessage());
- throw new SvcLogicException(
- String.format("Failed in assignments for (%s) with (%s)", resourceAssignment, e), e);
- }
- }
-
- private String fetchResourceFromMDSAL(String urlPath) {
- String response = null;
- try {
- response = configRestAdaptorService.getResource(ConfigRestAdaptorConstants.SELECTOR_RESTCONF, urlPath,
- String.class);
- } catch (Exception e) {
- logger.warn("Fetching MDSAL data for URL ({}) failed with Error ({})", urlPath, e);
- }
- return response;
- }
-
- private void validate(ResourceAssignment resourceAssignment) throws SvcLogicException {
- if (resourceAssignment == null) {
- throw new SvcLogicException("resource assignment is not defined");
- }
-
- if (StringUtils.isBlank(resourceAssignment.getName())) {
- throw new SvcLogicException("resource assignment template key is not defined");
- }
-
- if (StringUtils.isBlank(resourceAssignment.getDictionaryName())) {
- throw new SvcLogicException(
- String.format("resource assignment dictionary name is not defined for template key (%s)",
- resourceAssignment.getName()));
- }
-
- if (!ConfigModelConstant.SOURCE_MDSAL.equalsIgnoreCase(resourceAssignment.getDictionarySource())) {
- throw new SvcLogicException(String.format("resource assignment source is not mdsal, it is (%s)",
- resourceAssignment.getDictionarySource()));
- }
-
- ResourceDefinition resourceDefinition = dictionaries.get(resourceAssignment.getDictionaryName());
- if (resourceDefinition == null) {
- throw new SvcLogicException(String.format("missing resource dictionary definition for name (%s) ",
- resourceAssignment.getDictionaryName()));
- }
-
- if (StringUtils.isBlank(resourceDefinition.getProperty().getType())) {
- throw new SvcLogicException(String.format(String.format("Failed to get dictionary (%s) data type info.",
- resourceAssignment.getDictionaryName())));
- }
-
- if (resourceDefinition.getSources() == null || resourceDefinition.getSources().get("mdsal") == null) {
- throw new SvcLogicException(
- String.format("missing resource dictionary mdsal source definition for name (%s) ",
- resourceAssignment.getDictionaryName()));
- }
-
- SourcesDefinition sourceMdsal = resourceDefinition.getSources().get("mdsal");
- if (StringUtils.isBlank(sourceMdsal.getProperties().getUrlPath())) {
- throw new SvcLogicException(String.format("Failed to get request URL Path for dictionary (%s)",
- resourceAssignment.getDictionaryName()));
- }
-
- if (StringUtils.isBlank(sourceMdsal.getProperties().getPath())) {
- throw new SvcLogicException(String.format("Failed to get request Path for dictionary (%s)",
- resourceAssignment.getDictionaryName()));
- }
- }
-
- private Map<String, Object> populateUrlVariables(Map<String, String> inputKeyMapping,
- Map<String, Object> componentContext) {
- Map<String, Object> urlVariables = new HashMap<>();
- if (MapUtils.isNotEmpty(inputKeyMapping)) {
-
- for (Map.Entry<String, String> mapping : inputKeyMapping.entrySet()) {
- ResourceDefinition referenceDictionaryDefinition = dictionaries.get(mapping.getValue());
- Object expressionValue =
- ResourceAssignmentUtils.getDictionaryKeyValue(componentContext, referenceDictionaryDefinition);
- logger.trace("Reference dictionary key ({}), value ({})", mapping.getKey(), expressionValue);
- urlVariables.put(mapping.getKey(), expressionValue);
- }
- }
- return urlVariables;
- }
-
- private void processMdsalResults(SvcLogicContext ctx, Map<String, Object> componentContext,
- ResourceAssignment resourceAssignment, SourcesDefinition sourceMdsal, String restResponse)
- throws SvcLogicException, ConfigModelException {
-
- Map<String, String> outputKeyMapping = sourceMdsal.getProperties().getOutputKeyMapping();
- JsonNode responseNode = TransformationUtils.getJsonNodeForString(restResponse);
- if (StringUtils.isNotBlank(sourceMdsal.getProperties().getPath())) {
- responseNode = responseNode.at(sourceMdsal.getProperties().getPath());
- }
- if (responseNode != null) {
- ConfigAssignmentUtils.populateValueForOutputMapping(ctx, componentContext, resourceAssignment,
- outputKeyMapping, responseNode);
- }
- }
-
- @Override
- public void postProcess(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- // Do Nothing
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/ProcessorFactory.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/ProcessorFactory.java
deleted file mode 100644
index bb620a1a3..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/ProcessorFactory.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.processor;
-
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.service.ComponentNode;
-import org.onap.ccsdk.features.model.service.ComponentNodeService;
-import org.onap.ccsdk.features.rest.adaptor.service.ConfigRestAdaptorService;
-
-public class ProcessorFactory {
-
- private ConfigResourceService configResourceService;
- private ConfigRestAdaptorService configRestAdaptorService;
- private ComponentNodeService componentNodeService;
-
- public ProcessorFactory(ConfigResourceService configResourceService,
- ConfigRestAdaptorService configRestAdaptorService, ComponentNodeService componentNodeService) {
- this.componentNodeService = componentNodeService;
- this.configResourceService = configResourceService;
- this.configRestAdaptorService = configRestAdaptorService;
- }
-
- public ComponentNode getInstance(String source) {
-
- if (ConfigModelConstant.SOURCE_DEFAULT.equalsIgnoreCase(source)) {
- return new DefaultResourceProcessor(configResourceService);
- } else if (ConfigModelConstant.SOURCE_DB.equalsIgnoreCase(source)) {
- return new DBResourceProcessor(configResourceService);
- } else if (ConfigModelConstant.SOURCE_MDSAL.equalsIgnoreCase(source)) {
- return new MdsalResourceProcessor(configRestAdaptorService);
- }
- // Default
- return new InputResourceProcessor(configResourceService);
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/ResourceAssignmentProcessor.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/ResourceAssignmentProcessor.java
deleted file mode 100644
index 3ee49f085..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/processor/ResourceAssignmentProcessor.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.processor;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.collections.CollectionUtils;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.utils.TopologicalSortingUtils;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-public class ResourceAssignmentProcessor {
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ResourceAssignmentProcessor.class);
-
- private List<ResourceAssignment> assignments;
- private Map<String, ResourceAssignment> resourceAssignmentMap;
-
- @SuppressWarnings("squid:S1172")
- public ResourceAssignmentProcessor(List<ResourceAssignment> assignments, SvcLogicContext ctx) {
- this.assignments = assignments;
- this.resourceAssignmentMap = new HashMap<>();
- }
-
- @SuppressWarnings("squid:S3776")
- public List<List<ResourceAssignment>> process() {
- List<List<ResourceAssignment>> sequenceBatchResourceAssignment = new ArrayList<>();
- if (this.assignments != null) {
- logger.info("Assignments ({})", this.assignments);
- this.assignments.forEach(resourceMapping -> {
- if (resourceMapping != null) {
- logger.trace("Processing Key ({})", resourceMapping.getName());
- resourceAssignmentMap.put(resourceMapping.getName(), resourceMapping);
- }
- });
-
- TopologicalSortingUtils<ResourceAssignment> topologySorting = new TopologicalSortingUtils<>();
- this.resourceAssignmentMap.forEach((mappingKey, mapping) -> {
- if (mapping != null) {
- if (mapping.getDependencies() != null && !mapping.getDependencies().isEmpty()) {
- for (String dependency : mapping.getDependencies()) {
- topologySorting.add(resourceAssignmentMap.get(dependency), mapping);
- }
- } else {
- topologySorting.add(null, mapping);
- }
- }
- });
-
- List<ResourceAssignment> sequencedResourceAssignments = topologySorting.topSort();
- logger.info("Sorted Sequenced Assignments ({})", sequencedResourceAssignments);
-
- List<ResourceAssignment> batchResourceAssignment = null;
- List<String> batchAssignmentName = null;
- for (int i = 0; i < sequencedResourceAssignments.size(); i++) {
- ResourceAssignment resourceAssignment = sequencedResourceAssignments.get(i);
- ResourceAssignment previousResourceAssignment = null;
-
- if (i > 0) {
- previousResourceAssignment = sequencedResourceAssignments.get(i - 1);
- }
- if (resourceAssignment != null) {
-
- boolean dependencyPresence = false;
- if (batchAssignmentName != null && resourceAssignment.getDependencies() != null) {
- dependencyPresence =
- CollectionUtils.containsAny(batchAssignmentName, resourceAssignment.getDependencies());
- }
-
- logger.trace("({}) -> Checking ({}), with ({}), result ({})", resourceAssignment.getName(),
- batchAssignmentName, resourceAssignment.getDependencies(), dependencyPresence);
-
- if (previousResourceAssignment != null && resourceAssignment.getDictionarySource() != null
- && resourceAssignment.getDictionarySource()
- .equalsIgnoreCase(previousResourceAssignment.getDictionarySource())
- && !dependencyPresence) {
- batchResourceAssignment.add(resourceAssignment);
- batchAssignmentName.add(resourceAssignment.getName());
- } else {
- if (batchResourceAssignment != null) {
- sequenceBatchResourceAssignment.add(batchResourceAssignment);
- logger.trace("Created old Set ({})", batchAssignmentName);
- }
- batchResourceAssignment = new ArrayList<>();
- batchResourceAssignment.add(resourceAssignment);
-
- batchAssignmentName = new ArrayList<>();
- batchAssignmentName.add(resourceAssignment.getName());
- }
- }
-
- if (i == (sequencedResourceAssignments.size() - 1)) {
- logger.trace("Created old Set ({})", batchAssignmentName);
- sequenceBatchResourceAssignment.add(batchResourceAssignment);
- }
- }
- logger.info("Batched Sequence : ({})", sequenceBatchResourceAssignment);
- }
- return sequenceBatchResourceAssignment;
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentNode.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentNode.java
deleted file mode 100644
index aaeadcabd..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentNode.java
+++ /dev/null
@@ -1,231 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.collections.MapUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.onap.ccsdk.features.assignment.ConfigAssignmentConstants;
-import org.onap.ccsdk.features.assignment.data.ResourceAssignmentData;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.generator.service.ConfigGeneratorService;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.service.ComponentNode;
-import org.onap.ccsdk.features.model.service.ComponentNodeService;
-import org.onap.ccsdk.features.model.service.ConfigModelService;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import org.onap.ccsdk.features.rest.adaptor.service.ConfigRestAdaptorService;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-public class ConfigAssignmentNode implements ComponentNode {
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ConfigAssignmentNode.class);
-
- private ComponentNodeService componentNodeService;
- private ConfigResourceService configResourceService;
- private ConfigModelService configModelService;
- private ConfigRestAdaptorService configRestAdaptorService;
- private ConfigGeneratorService configGeneratorService;
-
- public ConfigAssignmentNode(ConfigResourceService configResourceService,
- ConfigRestAdaptorService configRestAdaptorService, ConfigModelService configModelService,
- ComponentNodeService componentNodeService, ConfigGeneratorService configGeneratorService) {
- logger.info("{} Constrctor Initiated", "ConfigAssignmentNode");
- this.componentNodeService = componentNodeService;
- this.configResourceService = configResourceService;
- this.configModelService = configModelService;
- this.configRestAdaptorService = configRestAdaptorService;
- this.configGeneratorService = configGeneratorService;
- }
-
- @Override
- public Boolean preCondition(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- return Boolean.TRUE;
- }
-
- @Override
- public void preProcess(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- // Auto-generated method stub
- }
-
- /**
- * This method is used to resolve the resources defined in the template. Generic Resource API DG
- * calls this execute node.
- *
- * @param inParams This is the input parameter to process this node
- *
- * <pre>
- request-id (string): Tracking Id
- resource-type (string): Resource Type ( ex : vnf-type)
- resource-id (string): Resource Id
- service-template-name (string): Blueprint Name
- service-template-version (string): Blueprint Version
- action-name (string):
- template-names (List of string): Template Names / Artifact Node Names to resolve. ["template1", "template2"]
- input-data (string): Input Data in JSON String, for the substitution in the Template.
- prifix (string): Return Value selector
- * </pre>
- *
- * @param ctx This is the service logger context, Output will be stored (
- * <responsePrefix>.resource-assignment-params.<template-name> : Output Data in JSON String.
- * <responsePrefix>.status <responsePrefix>.error-message )
- * @throws SvcLogicException On processing error.
- */
-
- @Override
- public void process(Map<String, String> inParams, SvcLogicContext ctx) throws SvcLogicException {
-
- final String responsePrefix = StringUtils.isNotBlank(inParams.get(ConfigModelConstant.PROPERTY_SELECTOR))
- ? (inParams.get(ConfigModelConstant.PROPERTY_SELECTOR) + ".")
- : "";
- try {
-
- ResourceAssignmentData resourceAssignmentData = populateResourceData(inParams);
- resourceAssignmentData.setSvcLogicContext(ctx);
- Map<String, Object> componentContext = new HashMap<>();
- resourceAssignmentData.setContext(componentContext);
- resourceAssignmentData.setReloadModel(true);
-
- ConfigAssignmentProcessService configAssignmentProcessService =
- new ConfigAssignmentProcessService(configResourceService, configRestAdaptorService,
- configModelService, componentNodeService, configGeneratorService);
- configAssignmentProcessService.resolveResources(resourceAssignmentData);
-
- if (MapUtils.isNotEmpty(resourceAssignmentData.getTemplatesMashedContents())) {
- resourceAssignmentData.getTemplatesMashedContents().forEach((templateName, previewContent) -> {
- logger.debug("For Template name : ({}),\n Preview Content is : ({})", templateName, previewContent);
- ctx.setAttribute(
- responsePrefix + ConfigAssignmentConstants.OUTPUT_PARAM_MASHED_DATA + "." + templateName,
- previewContent);
- });
- }
- ctx.setAttribute(responsePrefix + ConfigAssignmentConstants.OUTPUT_PARAM_STATUS,
- ConfigAssignmentConstants.OUTPUT_STATUS_SUCCESS);
- } catch (Exception e) {
- ctx.setAttribute(responsePrefix + ConfigAssignmentConstants.OUTPUT_PARAM_STATUS,
- ConfigAssignmentConstants.OUTPUT_STATUS_FAILURE);
- ctx.setAttribute(responsePrefix + ConfigAssignmentConstants.OUTPUT_PARAM_ERROR_MESSAGE, e.getMessage());
- throw new SvcLogicException(e.getMessage(), e);
- }
- }
-
- @Override
- public void process(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
-
- final String responsePrefix = StringUtils.isNotBlank(inParams.get(ConfigModelConstant.PROPERTY_SELECTOR))
- ? (inParams.get(ConfigModelConstant.PROPERTY_SELECTOR) + ".")
- : "";
- try {
-
- ResourceAssignmentData resourceAssignmentData = populateResourceData(inParams);
- resourceAssignmentData.setSvcLogicContext(ctx);
- resourceAssignmentData.setContext(componentContext);
- resourceAssignmentData.setReloadModel(false);
-
- ConfigAssignmentProcessService configAssignmentProcessService =
- new ConfigAssignmentProcessService(configResourceService, configRestAdaptorService,
- configModelService, componentNodeService, configGeneratorService);
- configAssignmentProcessService.resolveResources(resourceAssignmentData);
- ctx.setAttribute(responsePrefix + ConfigAssignmentConstants.OUTPUT_PARAM_STATUS,
- ConfigAssignmentConstants.OUTPUT_STATUS_SUCCESS);
-
- } catch (Exception e) {
- ctx.setAttribute(responsePrefix + ConfigAssignmentConstants.OUTPUT_PARAM_STATUS,
- ConfigAssignmentConstants.OUTPUT_STATUS_FAILURE);
- ctx.setAttribute(responsePrefix + ConfigAssignmentConstants.OUTPUT_PARAM_ERROR_MESSAGE, e.getMessage());
- throw new SvcLogicException(e.getMessage(), e);
- }
- }
-
- @Override
- public void postProcess(Map<String, String> inParams, SvcLogicContext ctx, Map<String, Object> componentContext)
- throws SvcLogicException {
- // Do Nothing
- }
-
- private ResourceAssignmentData populateResourceData(Map<String, String> inParams) throws SvcLogicException {
- validateInputParams(inParams);
-
- String requestId = inParams.get(ConfigAssignmentConstants.INPUT_PARAM_REQUEST_ID);
- String resourceId = inParams.get(ConfigAssignmentConstants.INPUT_PARAM_RESOURCE_ID);
- String resourceType = inParams.get(ConfigAssignmentConstants.INPUT_PARAM_RESOURCE_TYPE);
- String serviceTemplateName = inParams.get(ConfigModelConstant.SERVICE_TEMPLATE_KEY_ARTIFACT_NAME);
- String serviceTemplateVersion = inParams.get(ConfigModelConstant.SERVICE_TEMPLATE_KEY_ARTIFACT_VERSION);
- String actionName = inParams.get(ConfigModelConstant.PROPERTY_ACTION_NAME);
- String inputData = inParams.get(ConfigAssignmentConstants.INPUT_PARAM_INPUT_DATA);
-
- String templateNamesStr = inParams.get(ConfigAssignmentConstants.INPUT_PARAM_TEMPLATE_NAMES);
- List<String> templateNames = TransformationUtils.getListfromJson(templateNamesStr, String.class);
-
- ResourceAssignmentData resourceAssignmentData = new ResourceAssignmentData();
- resourceAssignmentData.setRequestId(requestId);
- resourceAssignmentData.setResourceId(resourceId);
- resourceAssignmentData.setResourceType(resourceType);
- resourceAssignmentData.setServiceTemplateName(serviceTemplateName);
- resourceAssignmentData.setServiceTemplateVersion(serviceTemplateVersion);
- resourceAssignmentData.setActionName(actionName);
- resourceAssignmentData.setInputData(inputData);
- resourceAssignmentData.setTemplateNames(templateNames);
-
- return resourceAssignmentData;
- }
-
- private void validateInputParams(Map<String, String> inParams) throws SvcLogicException {
- if (inParams == null) {
- throw new SvcLogicException("Input parameters missing");
- }
-
- String requestId = inParams.get(ConfigAssignmentConstants.INPUT_PARAM_REQUEST_ID);
- if (StringUtils.isBlank(requestId)) {
- throw new SvcLogicException("Request id parameters missing");
- }
- String resourceId = inParams.get(ConfigAssignmentConstants.INPUT_PARAM_RESOURCE_ID);
- if (StringUtils.isBlank(resourceId)) {
- throw new SvcLogicException("Resource id parameter is missing");
- }
- String resourceType = inParams.get(ConfigAssignmentConstants.INPUT_PARAM_RESOURCE_TYPE);
- if (StringUtils.isBlank(resourceType)) {
- throw new SvcLogicException("Resource type parameter is missing");
- }
- String recipeName = inParams.get(ConfigAssignmentConstants.INPUT_PARAM_ACTION_NAME);
- if (StringUtils.isBlank(recipeName)) {
- throw new SvcLogicException("Action name is parameter is missing");
- }
- String templateNames = inParams.get(ConfigAssignmentConstants.INPUT_PARAM_TEMPLATE_NAMES);
- if (StringUtils.isBlank(templateNames)) {
- throw new SvcLogicException("Template names parameter missing");
- }
- String serviceTemplateName = inParams.get(ConfigModelConstant.SERVICE_TEMPLATE_KEY_ARTIFACT_NAME);
- if (StringUtils.isBlank(serviceTemplateName)) {
- throw new SvcLogicException("Service Template name parameter missing");
- }
- String serviceTemplateVersion = inParams.get(ConfigModelConstant.SERVICE_TEMPLATE_KEY_ARTIFACT_VERSION);
- if (StringUtils.isBlank(serviceTemplateVersion)) {
- throw new SvcLogicException("Service Template version parameter missing");
- }
-
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentPersistService.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentPersistService.java
deleted file mode 100644
index 44ddf5382..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentPersistService.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.util.List;
-import org.apache.commons.collections.CollectionUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.onap.ccsdk.features.data.adaptor.DataAdaptorConstants;
-import org.onap.ccsdk.features.data.adaptor.domain.ConfigResource;
-import org.onap.ccsdk.features.data.adaptor.domain.ResourceAssignmentData;
-import org.onap.ccsdk.features.data.adaptor.domain.TransactionLog;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.utils.ResourceAssignmentUtils;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-public class ConfigAssignmentPersistService {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ConfigAssignmentPersistService.class);
-
- private ConfigResourceService configResourceService;
-
- public ConfigAssignmentPersistService(ConfigResourceService configResourceService) {
- this.configResourceService = configResourceService;
- }
-
- public void saveResourceMapping(
- org.onap.ccsdk.features.assignment.data.ResourceAssignmentData resourceAssignmentData, String templateName,
- List<ResourceAssignment> resourceAssignments) throws SvcLogicException {
- try {
-
- if (resourceAssignmentData == null) {
- throw new SvcLogicException("Resource assignment data is missing");
- }
-
- if (StringUtils.isBlank(resourceAssignmentData.getRequestId())) {
- logger.warn("Request Id ({}) is missing, may be getting request for resource update.",
- resourceAssignmentData.getRequestId());
- }
-
- if (StringUtils.isBlank(resourceAssignmentData.getResourceId())) {
- throw new SvcLogicException("Resource Id is missing");
- }
-
- if (StringUtils.isBlank(resourceAssignmentData.getResourceType())) {
- throw new SvcLogicException("Resource type is missing");
- }
-
- if (StringUtils.isBlank(resourceAssignmentData.getActionName())) {
- throw new SvcLogicException("Action name is missing");
- }
-
- if (StringUtils.isBlank(templateName)) {
- throw new SvcLogicException("template name is missing");
- }
-
- StringBuilder builder = new StringBuilder();
- builder.append("Resource Assignment for Template Name :");
- builder.append(templateName);
- builder.append("\n");
- builder.append(TransformationUtils.getJson(resourceAssignments, true));
-
- configResourceService.save(new TransactionLog(resourceAssignmentData.getRequestId(),
- DataAdaptorConstants.LOG_MESSAGE_TYPE_LOG, builder.toString()));
-
- // Resource Data should be Regenerated based on the new Updates
- String resourceData = ResourceAssignmentUtils.generateResourceDataForAssignments(resourceAssignments);
-
- List<ResourceAssignmentData> resourceAssignmentDataList =
- ConfigAssignmentUtils.convertResoureAssignmentList(resourceAssignments);
-
- ConfigResource configResource = new ConfigResource();
- configResource.setRequestId(resourceAssignmentData.getRequestId());
- configResource.setServiceTemplateName(resourceAssignmentData.getServiceTemplateName());
- configResource.setServiceTemplateVersion(resourceAssignmentData.getServiceTemplateVersion());
- configResource.setRecipeName(resourceAssignmentData.getActionName());
- configResource.setResourceId(resourceAssignmentData.getResourceId());
- configResource.setResourceType(resourceAssignmentData.getResourceType());
- configResource.setResourceData(resourceData);
- configResource.setTemplateName(templateName);
- configResource.setStatus(ConfigModelConstant.STATUS_SUCCESS);
- configResource.setUpdatedBy(ConfigModelConstant.USER_SYSTEM);
-
- if (CollectionUtils.isNotEmpty(resourceAssignmentDataList)) {
- configResource.setResourceAssignments(resourceAssignmentDataList);
- }
- configResource = configResourceService.saveConfigResource(configResource);
- logger.info("Resource data saved successfully for the template ({}) with resource id ({})", templateName,
- configResource.getResourceId());
-
- builder = new StringBuilder();
- builder.append("Resource Data Template Name :");
- builder.append(templateName);
- builder.append("\n");
- builder.append(resourceData);
- configResourceService.save(new TransactionLog(resourceAssignmentData.getRequestId(),
- DataAdaptorConstants.LOG_MESSAGE_TYPE_LOG, builder.toString()));
-
- } catch (Exception e) {
- throw new SvcLogicException("ConfigAssignmentPersistService : " + e.getMessage(), e);
- }
-
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentProcessService.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentProcessService.java
deleted file mode 100644
index 61c035960..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentProcessService.java
+++ /dev/null
@@ -1,238 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.collections.CollectionUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.onap.ccsdk.features.assignment.ConfigAssignmentConstants;
-import org.onap.ccsdk.features.assignment.data.ResourceAssignmentData;
-import org.onap.ccsdk.features.assignment.processor.ProcessorFactory;
-import org.onap.ccsdk.features.assignment.processor.ResourceAssignmentProcessor;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.generator.service.ConfigGeneratorService;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.data.dict.ResourceDefinition;
-import org.onap.ccsdk.features.model.service.ComponentNode;
-import org.onap.ccsdk.features.model.service.ComponentNodeService;
-import org.onap.ccsdk.features.model.service.ConfigModelService;
-import org.onap.ccsdk.features.model.utils.ResourceAssignmentUtils;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import org.onap.ccsdk.features.rest.adaptor.service.ConfigRestAdaptorService;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-public class ConfigAssignmentProcessService {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ConfigAssignmentProcessService.class);
-
- private ComponentNodeService componentNodeService;
- private ConfigResourceService configResourceService;
- private ConfigModelService configModelService;
- private ConfigRestAdaptorService configRestAdaptorService;
- private ConfigGeneratorService configGeneratorService;
-
- public ConfigAssignmentProcessService(ConfigResourceService configResourceService,
- ConfigRestAdaptorService configRestAdaptorService, ConfigModelService configModelService,
- ComponentNodeService componentNodeService, ConfigGeneratorService configGeneratorService) {
- this.componentNodeService = componentNodeService;
- this.configResourceService = configResourceService;
- this.configModelService = configModelService;
- this.configRestAdaptorService = configRestAdaptorService;
- this.configGeneratorService = configGeneratorService;
- }
-
- @SuppressWarnings("squid:S1141")
- public void resolveResources(ResourceAssignmentData resourceAssignmentData) throws SvcLogicException {
- try {
- validateInputParams(resourceAssignmentData);
-
- String serviceTemplateName = resourceAssignmentData.getServiceTemplateName();
- String serviceTemplateVersion = resourceAssignmentData.getServiceTemplateVersion();
- String actionName = resourceAssignmentData.getActionName();
- String inputData = resourceAssignmentData.getInputData();
- SvcLogicContext svcLogicContext = resourceAssignmentData.getSvcLogicContext();
- List<String> templateNames = resourceAssignmentData.getTemplateNames();
-
- if (resourceAssignmentData.isReloadModel()) {
- Map<String, String> context = new HashMap<>();
- context.put(ConfigModelConstant.PROPERTY_ACTION_NAME, actionName);
- context = configModelService.prepareContext(context, inputData, serviceTemplateName,
- serviceTemplateVersion);
- context.forEach((key, value) -> svcLogicContext.setAttribute(key, value));
- logger.info("List of Resources provided in input: {}", svcLogicContext.toProperties());
- }
-
- Map<String, Object> componentContext = resourceAssignmentData.getContext();
-
- if (CollectionUtils.isNotEmpty(templateNames)) {
- // Get the Resource Assignments for templates and Validate the mappings
- ResourceModelService resourceModelService = new ResourceModelService(configModelService);
-
- // Get the Resource Assignment
- Map<String, List<ResourceAssignment>> templatesResourceAssignments =
- resourceModelService.getTemplatesResourceAssignments(svcLogicContext, templateNames);
-
- // Get the Template Contents
- Map<String, String> templatesContents =
- resourceModelService.getTemplatesContents(svcLogicContext, templateNames);
-
- // Process each template
- for (String templateName : templateNames) {
- List<ResourceAssignment> resourceAssignments = templatesResourceAssignments.get(templateName);
- String templateContent = templatesContents.get(templateName);
- if (resourceAssignments != null) {
- String templateData = null;
- try {
- // Populate the Dictionary
- ResourceDictionaryService resourceDictionaryService =
- new ResourceDictionaryService(configRestAdaptorService);
- Map<String, ResourceDefinition> dictionaries =
- resourceDictionaryService.getDataDictionaryDefinitions(resourceAssignments);
-
- processResourceAssignments(resourceAssignmentData, svcLogicContext, componentContext,
- templateName, resourceAssignments, dictionaries);
-
- logger.info("decrypting config data for templateName {}", templateName);
- templateData =
- ResourceAssignmentUtils.generateResourceDataForAssignments(resourceAssignments);
- } finally {
- saveResourceMapping(resourceAssignmentData, templateName, resourceAssignments);
- }
-
- logger.info("generating config preview for templateName {}", templateName);
- ConfigPreviewService configPreviewService = new ConfigPreviewService(configResourceService,
- configModelService, configGeneratorService);
- String mashedData = configPreviewService.generatePreview(templateContent, templateData);
- resourceAssignmentData.getTemplatesMashedContents().put(templateName, mashedData);
- resourceAssignmentData.getTemplatesData().put(templateName, templateData);
-
- } else {
- // Do nothing for Mapping not found
- logger.warn("No resource Assignment mappings to resolve for templateName {}", templateName);
- }
- }
- }
-
- } catch (Exception e) {
- throw new SvcLogicException(e.getMessage(), e);
- }
- }
-
- private void processResourceAssignments(ResourceAssignmentData resourceAssignmentData, SvcLogicContext ctx,
- Map<String, Object> componentContext, String templateName, List<ResourceAssignment> resourceAssignments,
- Map<String, ResourceDefinition> dictionaries) throws SvcLogicException {
-
- String recipeName = resourceAssignmentData.getActionName();
-
- ResourceAssignmentProcessor resourceAssignmentProcessor =
- new ResourceAssignmentProcessor(resourceAssignments, ctx);
- List<List<ResourceAssignment>> sequenceBatchResourceAssignment = resourceAssignmentProcessor.process();
-
- logger.debug("Resource dictionary Info ({})", dictionaries);
-
- if (sequenceBatchResourceAssignment != null) {
- componentContext.put(ConfigModelConstant.PROPERTY_ACTION_NAME, recipeName);
- componentContext.put(ConfigModelConstant.PROPERTY_TEMPLATE_NAME, templateName);
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARIES, dictionaries);
- for (List<ResourceAssignment> batchResourceAssignment : sequenceBatchResourceAssignment) {
-
- processBatchResourceAssignments(resourceAssignmentData, ctx, componentContext, batchResourceAssignment);
-
- logger.debug("Batch Resource data status ({})", TransformationUtils.getJson(batchResourceAssignment));
- }
- }
- }
-
- private void processBatchResourceAssignments(ResourceAssignmentData resourceAssignmentData, SvcLogicContext ctx,
- Map<String, Object> componentContext, List<ResourceAssignment> batchResourceAssignment)
- throws SvcLogicException {
-
- if (CollectionUtils.isNotEmpty(batchResourceAssignment)) {
-
- ResourceAssignment batchFirstResourceAssignment = batchResourceAssignment.get(0);
- if (batchFirstResourceAssignment != null
- && StringUtils.isNotBlank(batchFirstResourceAssignment.getDictionarySource())) {
- String source = batchFirstResourceAssignment.getDictionarySource();
- // Processing their Source
- logger.info("Processing source ({}) with batch ({}) ", source, batchResourceAssignment);
- componentContext.put(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS, batchResourceAssignment);
-
- ProcessorFactory factory =
- new ProcessorFactory(configResourceService, configRestAdaptorService, componentNodeService);
-
- ComponentNode processor = factory.getInstance(source);
-
- Map<String, String> inParams = new HashMap<>();
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_REQUEST_ID, resourceAssignmentData.getRequestId());
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_RESOURCE_ID, resourceAssignmentData.getResourceId());
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_RESOURCE_TYPE,
- resourceAssignmentData.getResourceType());
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_ACTION_NAME, resourceAssignmentData.getActionName());
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_TEMPLATE_NAMES,
- resourceAssignmentData.getTemplateNames().toString());
- processor.process(inParams, ctx, componentContext);
- }
- }
- }
-
- private void saveResourceMapping(ResourceAssignmentData resourceAssignmentData, String templateName,
- List<ResourceAssignment> resourceAssignments) throws SvcLogicException {
- if (resourceAssignmentData != null && StringUtils.isNotBlank(templateName)) {
-
- ConfigAssignmentPersistService configAssignmentPersistService =
- new ConfigAssignmentPersistService(configResourceService);
- configAssignmentPersistService.saveResourceMapping(resourceAssignmentData, templateName,
- resourceAssignments);
- }
- }
-
- private void validateInputParams(ResourceAssignmentData resourceAssignmentData) throws SvcLogicException {
- if (resourceAssignmentData == null) {
- throw new SvcLogicException("Input parameters missing");
- }
-
- String requestId = resourceAssignmentData.getRequestId();
- if (StringUtils.isBlank(requestId)) {
- throw new SvcLogicException("Request id parameters missing");
- }
- String resourceId = resourceAssignmentData.getResourceId();
- if (StringUtils.isBlank(resourceId)) {
- throw new SvcLogicException("Resource id parameter is missing");
- }
- String resourceType = resourceAssignmentData.getResourceType();
- if (StringUtils.isBlank(resourceType)) {
- throw new SvcLogicException("Resource type parameter is missing");
- }
- String actionName = resourceAssignmentData.getActionName();
- if (StringUtils.isBlank(actionName)) {
- throw new SvcLogicException("Action name is parameter is missing");
- }
-
- List<String> templatesNames = resourceAssignmentData.getTemplateNames();
- if (CollectionUtils.isEmpty(templatesNames)) {
- throw new SvcLogicException("Template names parameter missing");
- }
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentService.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentService.java
deleted file mode 100644
index e3f32171d..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentService.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.util.List;
-import org.onap.ccsdk.features.assignment.data.ResourceAssignmentData;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-
-public interface ConfigAssignmentService {
-
- public void resolveResources(ResourceAssignmentData resourceAssignmentData) throws SvcLogicException;
-
- public void saveResourceMapping(ResourceAssignmentData resourceAssignmentData, String templateName,
- List<ResourceAssignment> resourceAssignments) throws SvcLogicException;
-
- public ResourceAssignmentData generateTemplateResourceMash(ResourceAssignmentData resourceAssignmentData)
- throws SvcLogicException;
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentServiceImpl.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentServiceImpl.java
deleted file mode 100644
index bb60a23a4..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentServiceImpl.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.util.List;
-import org.onap.ccsdk.features.assignment.data.ResourceAssignmentData;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.generator.service.ConfigGeneratorService;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.service.ComponentNodeService;
-import org.onap.ccsdk.features.model.service.ConfigModelService;
-import org.onap.ccsdk.features.rest.adaptor.service.ConfigRestAdaptorService;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-public class ConfigAssignmentServiceImpl implements ConfigAssignmentService {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ConfigAssignmentServiceImpl.class);
-
- private ComponentNodeService componentNodeService;
- private ConfigResourceService configResourceService;
- private ConfigModelService configModelService;
- private ConfigRestAdaptorService configRestAdaptorService;
- private ConfigGeneratorService configGeneratorService;
-
- private static final String CLASS_NAME = "ConfigAssignmentServiceImpl";
-
- public ConfigAssignmentServiceImpl(ConfigResourceService configResourceService,
- ConfigRestAdaptorService configRestAdaptorService, ConfigModelService configModelService,
- ComponentNodeService componentNodeService, ConfigGeneratorService configGeneratorService) {
- logger.info("{} Constuctor Initated...", CLASS_NAME);
- this.componentNodeService = componentNodeService;
- this.configResourceService = configResourceService;
- this.configModelService = configModelService;
- this.configRestAdaptorService = configRestAdaptorService;
- this.configGeneratorService = configGeneratorService;
- }
-
- @Override
- public void resolveResources(ResourceAssignmentData resourceAssignmentData) throws SvcLogicException {
- ConfigAssignmentProcessService configAssignmentProcessService =
- new ConfigAssignmentProcessService(configResourceService, configRestAdaptorService, configModelService,
- componentNodeService, configGeneratorService);
- configAssignmentProcessService.resolveResources(resourceAssignmentData);
- }
-
- @Override
- public void saveResourceMapping(ResourceAssignmentData resourceAssignmentData, String templateName,
- List<ResourceAssignment> resourceAssignments) throws SvcLogicException {
- ConfigAssignmentPersistService configAssignmentPersistService =
- new ConfigAssignmentPersistService(configResourceService);
- configAssignmentPersistService.saveResourceMapping(resourceAssignmentData, templateName, resourceAssignments);
- }
-
- @Override
- public ResourceAssignmentData generateTemplateResourceMash(ResourceAssignmentData resourceAssignmentData)
- throws SvcLogicException {
- ConfigPreviewService configPreviewService =
- new ConfigPreviewService(configResourceService, configModelService, configGeneratorService);
- return configPreviewService.generateTemplateResourceMash(resourceAssignmentData);
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentUtils.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentUtils.java
deleted file mode 100644
index 15221ae64..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentUtils.java
+++ /dev/null
@@ -1,301 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.collections.CollectionUtils;
-import org.apache.commons.collections.IteratorUtils;
-import org.apache.commons.collections.MapUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.onap.ccsdk.features.data.adaptor.domain.ResourceAssignmentData;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.ConfigModelException;
-import org.onap.ccsdk.features.model.ValidTypes;
-import org.onap.ccsdk.features.model.data.DataType;
-import org.onap.ccsdk.features.model.data.EntrySchema;
-import org.onap.ccsdk.features.model.data.PropertyDefinition;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.data.dict.ResourceDefinition;
-import org.onap.ccsdk.features.model.domain.ResourceDictionary;
-import org.onap.ccsdk.features.model.utils.JsonUtils;
-import org.onap.ccsdk.features.model.utils.ResourceAssignmentUtils;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.node.ArrayNode;
-import com.fasterxml.jackson.databind.node.JsonNodeFactory;
-import com.fasterxml.jackson.databind.node.ObjectNode;
-
-public class ConfigAssignmentUtils {
-
- private ConfigAssignmentUtils() {
-
- }
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ConfigAssignmentUtils.class);
-
- public static synchronized Object getContextKeyValue(SvcLogicContext context, String key) {
- Object value = null;
- if (context != null && key != null && context.getAttributeKeySet().contains(key)) {
- String strValue = context.getAttribute(key);
- if (StringUtils.isNotBlank(strValue)) {
- value = strValue;
- }
- }
- return value;
- }
-
- /*
- * Populate the Field property type for the Data type
- */
- public static synchronized String getPropertyType(SvcLogicContext ctx, String dataTypeName, String propertyName)
- throws SvcLogicException {
- String type = ValidTypes.DATA_TYPE_STRING;
- try {
- if (ctx != null && StringUtils.isNotBlank(dataTypeName) && StringUtils.isNotBlank(propertyName)) {
- String dataTypeContent = ctx.getAttribute(ConfigModelConstant.PROPERTY_DATA_TYPES_DOT + dataTypeName);
- if (StringUtils.isNotBlank(dataTypeContent)) {
- DataType dataType = TransformationUtils.readValue(dataTypeContent, DataType.class);
- if (dataType != null && dataType.getProperties() != null
- && dataType.getProperties().containsKey(propertyName)) {
- PropertyDefinition propertyDefinition = dataType.getProperties().get(propertyName);
- if (StringUtils.isNotBlank(propertyDefinition.getType())) {
- type = propertyDefinition.getType();
- logger.trace("Data type({})'s property ({}) is ({})", dataTypeName, propertyName, type);
- } else {
- throw new SvcLogicException(String.format("Couldn't get data type (%s) ", dataTypeName));
- }
- }
- } else {
- throw new SvcLogicException(String.format("Couldn't get data type (%s) content", dataTypeName));
- }
- }
- } catch (Exception e) {
- logger.error("couldn't get data type({})'s property ({}), type ({}), error message ({}).", dataTypeName,
- propertyName, type, e.getMessage());
- throw new SvcLogicException(e.getMessage());
- }
- return type;
- }
-
- /*
- * Populate the Field property type for the Data type
- */
- public static synchronized PropertyDefinition getPropertyDefinition(SvcLogicContext ctx, String dataTypeName,
- String propertyName) throws SvcLogicException {
- PropertyDefinition propertyDefinition = null;
- try {
- if (ctx != null && StringUtils.isNotBlank(dataTypeName) && StringUtils.isNotBlank(propertyName)) {
- String dataTypeContent = ctx.getAttribute(ConfigModelConstant.PROPERTY_DATA_TYPES_DOT + dataTypeName);
- if (StringUtils.isNotBlank(dataTypeContent)) {
- DataType dataType = TransformationUtils.readValue(dataTypeContent, DataType.class);
- if (dataType != null && dataType.getProperties() != null
- && dataType.getProperties().containsKey(propertyName)) {
- propertyDefinition = dataType.getProperties().get(propertyName);
- if (propertyDefinition == null) {
- throw new SvcLogicException(String.format("couldn't get data type (%s) ", dataTypeName));
- }
- }
- } else {
- throw new SvcLogicException(String.format("couldn't get data type (%s) content.", dataTypeName));
- }
- }
- } catch (Exception e) {
- throw new SvcLogicException(e.getMessage());
- }
- return propertyDefinition;
- }
-
- public static synchronized ResourceDefinition getDictionaryDefinition(Map<String, ResourceDictionary> dictionaries,
- String dictionaryName) {
- ResourceDefinition resourceDefinition = null;
- if (dictionaries != null && StringUtils.isNotBlank(dictionaryName)) {
- ResourceDictionary resourceDictionary = dictionaries.get(dictionaryName);
- if (resourceDictionary != null && resourceDictionary.getDefinition() != null) {
- resourceDefinition =
- TransformationUtils.treeToValue(resourceDictionary.getDefinition(), ResourceDefinition.class);
- }
- }
- return resourceDefinition;
- }
-
- @SuppressWarnings("squid:S3776")
- public static synchronized void populateValueForOutputMapping(SvcLogicContext ctx,
- Map<String, Object> componentContext, ResourceAssignment resourceAssignment,
- Map<String, String> outputKeyMapping, JsonNode responseNode)
- throws ConfigModelException, SvcLogicException {
- if (resourceAssignment == null) {
- throw new SvcLogicException("resourceAssignment is null.");
- }
-
- if (ctx == null) {
- throw new SvcLogicException("service logic context is null.");
- }
-
- if (componentContext == null) {
- throw new SvcLogicException("component context is null.");
- }
-
- logger.info("populating value for output mapping ({}), from json ({})", outputKeyMapping, responseNode);
- String dictionaryName = resourceAssignment.getDictionaryName();
- String type = resourceAssignment.getProperty().getType();
-
- String entrySchema = null;
- if (ValidTypes.getPrimitivePropertType().contains(type)) {
- ResourceAssignmentUtils.setResourceDataValue(componentContext, resourceAssignment, responseNode);
- } else if (ValidTypes.getListPropertType().contains(type)) {
- // Array Types
- if (resourceAssignment.getProperty().getEntrySchema() != null) {
- entrySchema = resourceAssignment.getProperty().getEntrySchema().getType();
- }
-
- if (StringUtils.isNotBlank(entrySchema)) {
- ArrayNode arrayNode = JsonNodeFactory.instance.arrayNode();
- if (ValidTypes.getPrimitivePropertType().contains(entrySchema)) {
- arrayNode = (ArrayNode) responseNode;
- } else if (MapUtils.isNotEmpty(outputKeyMapping)) {
- List<JsonNode> responseArrayNode = IteratorUtils.toList(responseNode.elements());
- for (JsonNode responseSingleJsonNode : responseArrayNode) {
- if (responseSingleJsonNode != null) {
- ObjectNode arrayChildNode = JsonNodeFactory.instance.objectNode();
- for (Map.Entry<String, String> mapping : outputKeyMapping.entrySet()) {
- JsonNode responseKeyValue = responseSingleJsonNode.get(mapping.getKey());
-
- String propertyTypeForDataType =
- ConfigAssignmentUtils.getPropertyType(ctx, entrySchema, mapping.getKey());
- logger.info("For List Type Resource: key ({}), value ({}), type ({})",
- mapping.getKey(), responseKeyValue, propertyTypeForDataType);
- JsonUtils.populateJsonNodeValues(mapping.getValue(), responseKeyValue,
- propertyTypeForDataType, arrayChildNode);
- }
- arrayNode.add(arrayChildNode);
- }
- }
- } else {
- arrayNode = (ArrayNode) responseNode;
- }
- // Set the List of Complex Values
- ResourceAssignmentUtils.setResourceDataValue(componentContext, resourceAssignment, arrayNode);
- } else {
- throw new SvcLogicException(
- String.format("Entry schema is not defined for dictionary (%s) info", dictionaryName));
- }
- } else {
- // Complex Types
- ObjectNode objectNode = null;
- if (MapUtils.isNotEmpty(outputKeyMapping)) {
- objectNode = JsonNodeFactory.instance.objectNode();
- for (Map.Entry<String, String> mapping : outputKeyMapping.entrySet()) {
- JsonNode responseKeyValue = responseNode.get(mapping.getKey());
- String propertyTypeForDataType =
- ConfigAssignmentUtils.getPropertyType(ctx, entrySchema, mapping.getKey());
- logger.info("For Complex Type Resource: key ({}), value ({}), type ({})", mapping.getKey(),
- responseKeyValue, propertyTypeForDataType);
- JsonUtils.populateJsonNodeValues(mapping.getValue(), responseKeyValue, propertyTypeForDataType,
- objectNode);
- }
- } else {
- objectNode = (ObjectNode) responseNode;
- }
- ResourceAssignmentUtils.setResourceDataValue(componentContext, resourceAssignment, objectNode);
- }
- }
-
- @SuppressWarnings("squid:S3776")
- public static synchronized List<ResourceAssignment> convertResoureAssignmentDataList(
- List<ResourceAssignmentData> resourceAssignmentDataList) {
- List<ResourceAssignment> assignments = new ArrayList<>();
- if (CollectionUtils.isNotEmpty(resourceAssignmentDataList)) {
- for (ResourceAssignmentData resourceAssignmentData : resourceAssignmentDataList) {
- if (resourceAssignmentData != null) {
- ResourceAssignment resourceAssignment = new ResourceAssignment();
- resourceAssignment.setName(resourceAssignmentData.getTemplateKeyName());
- resourceAssignment.setVersion(resourceAssignmentData.getVersion());
- resourceAssignment.setUpdatedBy(resourceAssignmentData.getUpdatedBy());
- resourceAssignment.setUpdatedDate(resourceAssignmentData.getUpdatedDate());
- resourceAssignment.setDictionaryName(resourceAssignmentData.getResourceName());
- resourceAssignment.setDictionarySource(resourceAssignmentData.getSource());
- resourceAssignment.setStatus(resourceAssignmentData.getStatus());
- resourceAssignment.setMessage(resourceAssignmentData.getMessage());
- PropertyDefinition property = new PropertyDefinition();
- property.setType(resourceAssignmentData.getDataType());
-
- if (StringUtils.isNotBlank(resourceAssignmentData.getResourceValue())) {
- if (ValidTypes.getPrimitivePropertType().contains(resourceAssignmentData.getDataType())) {
- property.setValue(resourceAssignmentData.getResourceValue());
- } else {
- JsonNode valueNode =
- TransformationUtils.getJsonNodeForString(resourceAssignmentData.getResourceValue());
- property.setValue(valueNode);
- }
- }
- if (StringUtils.isNotBlank(resourceAssignmentData.getEntrySchema())) {
- EntrySchema entrySchema = new EntrySchema();
- entrySchema.setType(resourceAssignmentData.getEntrySchema());
- property.setEntrySchema(entrySchema);
- } else {
- property.setEntrySchema(null);
- }
- resourceAssignment.setProperty(property);
- assignments.add(resourceAssignment);
- }
- }
-
- }
- return assignments;
- }
-
- @SuppressWarnings("squid:S3776")
- public static synchronized List<ResourceAssignmentData> convertResoureAssignmentList(
- List<ResourceAssignment> assignments) {
- List<ResourceAssignmentData> resourceAssignmentDataList = new ArrayList<>();
- if (CollectionUtils.isNotEmpty(assignments)) {
- for (ResourceAssignment assignment : assignments) {
- if (assignment != null) {
- ResourceAssignmentData resourceAssignmentData = new ResourceAssignmentData();
- resourceAssignmentData.setTemplateKeyName(assignment.getName());
- resourceAssignmentData.setVersion(assignment.getVersion());
- resourceAssignmentData.setUpdatedBy(assignment.getUpdatedBy());
- resourceAssignmentData.setUpdatedDate(assignment.getUpdatedDate());
- if (assignment.getProperty() != null) {
- resourceAssignmentData.setDataType(assignment.getProperty().getType());
- if (assignment.getProperty().getEntrySchema() != null) {
- resourceAssignmentData.setEntrySchema(assignment.getProperty().getEntrySchema().getType());
- }
- if (assignment.getProperty().getValue() != null) {
- String valueContent = TransformationUtils.getJson(assignment.getProperty().getValue());
- resourceAssignmentData.setResourceValue(valueContent);
- }
- }
- resourceAssignmentData.setResourceName(assignment.getDictionaryName());
- resourceAssignmentData.setSource(assignment.getDictionarySource());
- resourceAssignmentData.setStatus(assignment.getStatus());
- resourceAssignmentData.setMessage(assignment.getMessage());
- resourceAssignmentDataList.add(resourceAssignmentData);
- }
- }
- }
- return resourceAssignmentDataList;
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigPreviewService.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigPreviewService.java
deleted file mode 100644
index 071b5a548..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ConfigPreviewService.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.collections.CollectionUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.onap.ccsdk.features.assignment.data.ResourceAssignmentData;
-import org.onap.ccsdk.features.data.adaptor.domain.ConfigResource;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.generator.data.ConfigGeneratorInfo;
-import org.onap.ccsdk.features.generator.service.ConfigGeneratorService;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.service.ConfigModelService;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-public class ConfigPreviewService {
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ConfigAssignmentPersistService.class);
- private ConfigResourceService configResourceService;
- private ConfigModelService configModelService;
- private ConfigGeneratorService configGeneratorService;
-
- public ConfigPreviewService(ConfigResourceService configResourceService, ConfigModelService configModelService,
- ConfigGeneratorService configGeneratorService) {
- this.configResourceService = configResourceService;
- this.configModelService = configModelService;
- this.configGeneratorService = configGeneratorService;
- }
-
- public String generatePreview(String templateContent, String templateData) throws SvcLogicException {
- String mashedData = "";
- ConfigGeneratorInfo configGeneratorInfo =
- configGeneratorService.generateConfiguration(templateContent, templateData);
- if (configGeneratorInfo != null) {
- mashedData = configGeneratorInfo.getMashedData();
- }
- return mashedData;
- }
-
- public ResourceAssignmentData generateTemplateResourceMash(ResourceAssignmentData resourceAssignmentData)
- throws SvcLogicException {
- if (resourceAssignmentData == null) {
- throw new SvcLogicException("Resource assignment data is missing");
- }
- if (StringUtils.isBlank(resourceAssignmentData.getServiceTemplateName())) {
- throw new SvcLogicException("Service template name is missing");
- }
- if (StringUtils.isBlank(resourceAssignmentData.getServiceTemplateVersion())) {
- throw new SvcLogicException("Service template version is missing");
- }
- if (StringUtils.isBlank(resourceAssignmentData.getResourceType())) {
- throw new SvcLogicException("Resource type is missing");
- }
- if (StringUtils.isBlank(resourceAssignmentData.getResourceId())) {
- throw new SvcLogicException("Resource Id is missing");
- }
- if (StringUtils.isBlank(resourceAssignmentData.getActionName())) {
- throw new SvcLogicException("Action name is missing");
- }
-
- String serviceTemplateName = resourceAssignmentData.getServiceTemplateName();
- String serviceTemplateVersion = resourceAssignmentData.getServiceTemplateVersion();
- String actionName = resourceAssignmentData.getActionName();
- String resourceId = resourceAssignmentData.getResourceId();
- String resourceType = resourceAssignmentData.getResourceType();
- String inputData = "{}";
-
- Map<String, String> context = new HashMap<>();
- context.put(ConfigModelConstant.PROPERTY_ACTION_NAME, actionName);
- context = configModelService.prepareContext(context, inputData, serviceTemplateName, serviceTemplateVersion);
-
- ConfigResource configResourceQuery = new ConfigResource();
- configResourceQuery.setServiceTemplateVersion(serviceTemplateName);
- configResourceQuery.setServiceTemplateVersion(serviceTemplateVersion);
- configResourceQuery.setRecipeName(actionName);
- configResourceQuery.setResourceId(resourceId);
- configResourceQuery.setResourceType(resourceType);
-
- List<ConfigResource> configResources = configResourceService.getConfigResource(configResourceQuery);
- if (CollectionUtils.isNotEmpty(configResources)) {
- for (ConfigResource cr : configResources) {
- String templateContent = context
- .get(ConfigModelConstant.PROPERTY_NODE_TEMPLATES_DOT + cr.getTemplateName() + ".content");
- String templateData = cr.getResourceData();
- String previewContent = generatePreview(templateContent, templateData);
- resourceAssignmentData.getTemplatesMashedContents().put(cr.getTemplateName(), previewContent);
- logger.info("Preview generated for template name ({}) ", cr.getTemplateName());
- logger.trace("Preview generated for preview ({}) ", previewContent);
- }
- } else {
- logger.info(
- "Couldn't get config resource for service template name ({}) service template version ({})"
- + " action ({}) resource id ({}) resource type ({})",
- serviceTemplateName, serviceTemplateVersion, actionName, resourceId, resourceType);
- }
- return resourceAssignmentData;
-
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ResourceDictionaryService.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ResourceDictionaryService.java
deleted file mode 100644
index d8692c4c7..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ResourceDictionaryService.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.lang3.StringUtils;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.data.dict.ResourceDefinition;
-import org.onap.ccsdk.features.model.domain.ResourceDictionary;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import org.onap.ccsdk.features.rest.adaptor.ConfigRestAdaptorConstants;
-import org.onap.ccsdk.features.rest.adaptor.ConfigRestAdaptorException;
-import org.onap.ccsdk.features.rest.adaptor.service.ConfigRestAdaptorService;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-public class ResourceDictionaryService {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ResourceDictionaryService.class);
- private ConfigRestAdaptorService configRestAdaptorService;
-
- public ResourceDictionaryService(ConfigRestAdaptorService configRestAdaptorService) {
- this.configRestAdaptorService = configRestAdaptorService;
- }
-
- @SuppressWarnings("squid:S3776")
- public Map<String, ResourceDefinition> getDataDictionaryDefinitions(List<ResourceAssignment> resourceAssignments)
- throws SvcLogicException {
- try {
- Map<String, ResourceDefinition> dictionaries = new HashMap<>();
- if (resourceAssignments != null) {
- List<String> names = new ArrayList<>();
- for (ResourceAssignment resourceAssignment : resourceAssignments) {
- if (resourceAssignment != null && StringUtils.isNotBlank(resourceAssignment.getDictionaryName())) {
- if (!names.contains(resourceAssignment.getDictionaryName())) {
- names.add(resourceAssignment.getDictionaryName());
- }
- if (resourceAssignment.getDependencies() != null
- && !resourceAssignment.getDependencies().isEmpty()) {
- List<String> dependencieNames = resourceAssignment.getDependencies();
- for (String dependencieName : dependencieNames) {
- if (StringUtils.isNotBlank(dependencieName) && !names.contains(dependencieName)) {
- names.add(dependencieName);
- }
- }
- }
- }
- }
- queryResourceDictionaryDefinitions(dictionaries, names);
- }
- return dictionaries;
- } catch (Exception e) {
- throw new SvcLogicException("Failed in getting resource data dictionary : " + e.getMessage());
- }
-
- }
-
- @SuppressWarnings("squid:S3776")
- private void queryResourceDictionaryDefinitions(Map<String, ResourceDefinition> dictionaries, List<String> names)
- throws SvcLogicException, ConfigRestAdaptorException {
- logger.info("Getting resource dictionary definition for the names ({})", names);
- if (!names.isEmpty()) {
-
- String dictionaryContents = configRestAdaptorService.postResource(
- ConfigRestAdaptorConstants.SELECTOR_MODEL_SERVICE, "dictionary/by-names", names, String.class);
-
- if (StringUtils.isNotBlank(dictionaryContents)) {
- List<ResourceDictionary> dataDictionaries =
- TransformationUtils.getListfromJson(dictionaryContents, ResourceDictionary.class);
- if (dataDictionaries != null) {
- for (ResourceDictionary dataDictionary : dataDictionaries) {
- if (dataDictionary != null && StringUtils.isNotBlank(dataDictionary.getName())
- && dataDictionary.getDefinition() != null) {
- ResourceDefinition resourceDefinition = TransformationUtils
- .treeToValue(dataDictionary.getDefinition(), ResourceDefinition.class);
- if (resourceDefinition != null && StringUtils.isNotBlank(resourceDefinition.getName())) {
- dictionaries.put(resourceDefinition.getName(), resourceDefinition);
- } else {
- throw new SvcLogicException(
- "Failed in getting resource data dictionary definition for : "
- + dataDictionary.getName());
- }
- }
- }
- }
- } else {
- logger.warn("No resource dictionary definition found for the names ({})", names);
- }
- }
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ResourceModelService.java b/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ResourceModelService.java
deleted file mode 100644
index befa36a34..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/java/org/onap/ccsdk/features/assignment/service/ResourceModelService.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.collections.CollectionUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.service.ConfigModelService;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import org.onap.ccsdk.features.model.validator.ResourceAssignmentValidator;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-public class ResourceModelService {
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ResourceModelService.class);
-
- private ConfigModelService configModelService;
-
- public ResourceModelService(ConfigModelService configModelService) {
- this.configModelService = configModelService;
- }
-
- public Map<String, String> getTemplatesContents(SvcLogicContext ctx, List<String> templateNames)
- throws SvcLogicException {
- Map<String, String> templatesContents = new HashMap<>();
- try {
- if (CollectionUtils.isNotEmpty(templateNames)) {
- for (String templateName : templateNames) {
- String templateContent = this.configModelService.getNodeTemplateContent(ctx, templateName);
- logger.trace("Processing template ({}) with content : {}", templateName, templateContent);
- templatesContents.put(templateName, templateContent);
- }
- }
- } catch (Exception e) {
- throw new SvcLogicException(e.getMessage());
- }
- return templatesContents;
- }
-
- public Map<String, List<ResourceAssignment>> getTemplatesResourceAssignments(SvcLogicContext ctx,
- List<String> templateNames) throws SvcLogicException {
- Map<String, List<ResourceAssignment>> templatesResourceAssignments = new HashMap<>();
- try {
- if (CollectionUtils.isNotEmpty(templateNames)) {
- for (String templateName : templateNames) {
- String resourceMappingContent = this.configModelService.getNodeTemplateMapping(ctx, templateName);
- logger.info("Processing template ({}) with resource assignment content : {}", templateName,
- resourceMappingContent);
-
- if (StringUtils.isNotBlank(resourceMappingContent)) {
-
- List<ResourceAssignment> resourceAssignments =
- TransformationUtils.getListfromJson(resourceMappingContent, ResourceAssignment.class);
-
- if (resourceAssignments != null) {
- ResourceAssignmentValidator resourceAssignmentValidator =
- new ResourceAssignmentValidator(resourceAssignments);
- resourceAssignmentValidator.validateResourceAssignment();
- logger.info("Resource assignment validated successfully for the template ({})",
- templateName);
- templatesResourceAssignments.put(templateName, resourceAssignments);
- } else {
- throw new SvcLogicException(String.format(
- "Failed to convert assignment content (%s) to object", resourceMappingContent));
- }
- } else {
- // Do nothing, because som e templates may not have mappings
- }
- }
- }
- } catch (Exception e) {
- throw new SvcLogicException(e.getMessage());
- }
-
- return templatesResourceAssignments;
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/resources/OSGI-INF/blueprint/impl-blueprint.xml b/blueprints-processor/plugin/assignment-provider/src/main/resources/OSGI-INF/blueprint/impl-blueprint.xml
deleted file mode 100644
index f15429dfe..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/resources/OSGI-INF/blueprint/impl-blueprint.xml
+++ /dev/null
@@ -1,63 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2017-2018 AT&T Intellectual Property.
- Modifications Copyright © 2018 IBM.
-
- 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.
--->
-
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
- xmlns:odl="http://opendaylight.org/xmlns/blueprint/v1.0.0"
- odl:use-default-for-reference-types="true">
-
- <reference id="componentNodeService"
- interface="org.onap.ccsdk.features.model.service.ComponentNodeService" />
-
- <reference id="configResourceService"
- interface="org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService" />
-
- <reference id="configModelService"
- interface="org.onap.ccsdk.features.model.service.ConfigModelService" />
-
- <reference id="configRestAdaptorService"
- interface="org.onap.ccsdk.features.rest.adaptor.service.ConfigRestAdaptorService" />
-
- <reference id="configGeneratorService"
- interface="org.onap.ccsdk.features.generator.service.ConfigGeneratorService" />
-
- <!-- Expose the Common Component Bean -->
- <bean id="configAssignmentNode"
- class="org.onap.ccsdk.features.assignment.service.ConfigAssignmentNode">
- <argument ref="configResourceService" />
- <argument ref="configRestAdaptorService" />
- <argument ref="configModelService" />
- <argument ref="componentNodeService" />
- <argument ref="configGeneratorService" />
- </bean>
-
- <service ref="configAssignmentNode"
- interface="org.onap.ccsdk.features.assignment.service.ConfigAssignmentNode" />
-
- <bean id="configAssignmentService"
- class="org.onap.ccsdk.features.assignment.service.ConfigAssignmentServiceImpl">
- <argument ref="configResourceService" />
- <argument ref="configRestAdaptorService" />
- <argument ref="configModelService" />
- <argument ref="componentNodeService" />
- <argument ref="configGeneratorService" />
- </bean>
-
- <service ref="configAssignmentService"
- interface="org.onap.ccsdk.features.assignment.service.ConfigAssignmentService" />
-
-</blueprint>
diff --git a/blueprints-processor/plugin/assignment-provider/src/main/resources/org/opendaylight/blueprint/impl-blueprint.xml b/blueprints-processor/plugin/assignment-provider/src/main/resources/org/opendaylight/blueprint/impl-blueprint.xml
deleted file mode 100644
index f15429dfe..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/main/resources/org/opendaylight/blueprint/impl-blueprint.xml
+++ /dev/null
@@ -1,63 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2017-2018 AT&T Intellectual Property.
- Modifications Copyright © 2018 IBM.
-
- 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.
--->
-
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
- xmlns:odl="http://opendaylight.org/xmlns/blueprint/v1.0.0"
- odl:use-default-for-reference-types="true">
-
- <reference id="componentNodeService"
- interface="org.onap.ccsdk.features.model.service.ComponentNodeService" />
-
- <reference id="configResourceService"
- interface="org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService" />
-
- <reference id="configModelService"
- interface="org.onap.ccsdk.features.model.service.ConfigModelService" />
-
- <reference id="configRestAdaptorService"
- interface="org.onap.ccsdk.features.rest.adaptor.service.ConfigRestAdaptorService" />
-
- <reference id="configGeneratorService"
- interface="org.onap.ccsdk.features.generator.service.ConfigGeneratorService" />
-
- <!-- Expose the Common Component Bean -->
- <bean id="configAssignmentNode"
- class="org.onap.ccsdk.features.assignment.service.ConfigAssignmentNode">
- <argument ref="configResourceService" />
- <argument ref="configRestAdaptorService" />
- <argument ref="configModelService" />
- <argument ref="componentNodeService" />
- <argument ref="configGeneratorService" />
- </bean>
-
- <service ref="configAssignmentNode"
- interface="org.onap.ccsdk.features.assignment.service.ConfigAssignmentNode" />
-
- <bean id="configAssignmentService"
- class="org.onap.ccsdk.features.assignment.service.ConfigAssignmentServiceImpl">
- <argument ref="configResourceService" />
- <argument ref="configRestAdaptorService" />
- <argument ref="configModelService" />
- <argument ref="componentNodeService" />
- <argument ref="configGeneratorService" />
- </bean>
-
- <service ref="configAssignmentService"
- interface="org.onap.ccsdk.features.assignment.service.ConfigAssignmentService" />
-
-</blueprint>
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/DBResourceProcessorTest.java b/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/DBResourceProcessorTest.java
deleted file mode 100644
index a93e6de2e..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/DBResourceProcessorTest.java
+++ /dev/null
@@ -1,231 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.processor;
-
-import static org.mockito.Matchers.any;
-import java.io.File;
-import java.nio.charset.Charset;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.io.FileUtils;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Matchers;
-import org.mockito.Mock;
-import org.mockito.Mockito;
-import org.mockito.MockitoAnnotations;
-import org.mockito.invocation.InvocationOnMock;
-import org.mockito.runners.MockitoJUnitRunner;
-import org.mockito.stubbing.Answer;
-import org.onap.ccsdk.features.assignment.service.ConfigResourceAssignmentTestUtils;
-import org.onap.ccsdk.features.data.adaptor.domain.TransactionLog;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.data.dict.ResourceDefinition;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-@RunWith(MockitoJUnitRunner.class)
-public class DBResourceProcessorTest {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(DBResourceProcessorTest.class);
-
- @Mock
- private ConfigResourceService configResourceService;
-
- @SuppressWarnings("unchecked")
- @Before
- public void before() {
- MockitoAnnotations.initMocks(this);
-
- try {
- Mockito.doAnswer(new Answer<Void>() {
- @Override
- public Void answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- if (args != null) {
- logger.trace("Transaction info " + Arrays.asList(args));
- }
- return null;
- }
- }).when(configResourceService).save(any(TransactionLog.class));
-
- } catch (SvcLogicException e) {
- e.printStackTrace();
- }
- }
-
- @Test
- public void testDbSimpleProcess() throws Exception {
- logger.info(" ******************************* testDbSimpleProcess ***************************");
-
- Mockito.doAnswer(new Answer<List<Map<String, Object>>>() {
- @Override
- public List<Map<String, Object>> answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- List<Map<String, Object>> results = new ArrayList<>();
- if (args != null) {
- logger.info("Query " + Arrays.asList(args));
- Map<String, Object> record = new HashMap<>();
- record.put("country", "US");
- results.add(record);
- }
- return results;
- }
- }).when(configResourceService).query(Matchers.anyString(), Matchers.<Map<String, Object>>any());
-
- String recipeName = "sample-recipe";
-
- String resourceassignmentContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/db/resource-assignments-simple.json"), Charset.defaultCharset());
- List<ResourceAssignment> batchResourceAssignment =
- TransformationUtils.getListfromJson(resourceassignmentContent, ResourceAssignment.class);
-
- String dictionaryContent = FileUtils.readFileToString(new File("src/test/resources/mapping/db/db-simple.json"),
- Charset.defaultCharset());
- Map<String, ResourceDefinition> dictionaries =
- ConfigResourceAssignmentTestUtils.getMapfromJson(dictionaryContent);
- DBResourceProcessor dbResourceProcessor = new DBResourceProcessor(configResourceService);
- Map<String, Object> componentContext = new HashMap<>();
- componentContext.put(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS, batchResourceAssignment);
- componentContext.put(ConfigModelConstant.PROPERTY_ACTION_NAME, recipeName);
- componentContext.put(ConfigModelConstant.PROPERTY_TEMPLATE_NAME, "sample-template");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARIES, dictionaries);
-
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".profile_name", "sample");
-
- Map<String, String> inParams = new HashMap<>();
- SvcLogicContext ctx = new SvcLogicContext();
- dbResourceProcessor.process(inParams, ctx, componentContext);
-
- logger.info(" Context " + componentContext);
-
- }
-
- @Test
- public void testDbComplexProcess() throws Exception {
- logger.info(" ******************************* testDbComplexProcess ***************************");
-
- Mockito.doAnswer(new Answer<List<Map<String, Object>>>() {
- @Override
- public List<Map<String, Object>> answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- List<Map<String, Object>> results = new ArrayList<>();
- if (args != null) {
- logger.info("Query " + Arrays.asList(args));
- Map<String, Object> record = new HashMap<>();
- record.put("db-country", "US");
- record.put("db-state", "NJ");
- results.add(record);
- }
- return results;
- }
- }).when(configResourceService).query(Matchers.anyString(), Matchers.<Map<String, Object>>any());
-
- String recipeName = "sample-recipe";
-
- String resourceassignmentContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/db/resource-assignments-complex.json"), Charset.defaultCharset());
- List<ResourceAssignment> batchResourceAssignment =
- TransformationUtils.getListfromJson(resourceassignmentContent, ResourceAssignment.class);
-
- String dictionaryContent = FileUtils.readFileToString(new File("src/test/resources/mapping/db/db-complex.json"),
- Charset.defaultCharset());
- Map<String, ResourceDefinition> dictionaries =
- ConfigResourceAssignmentTestUtils.getMapfromJson(dictionaryContent);
- DBResourceProcessor dbResourceProcessor = new DBResourceProcessor(configResourceService);
- Map<String, Object> componentContext = new HashMap<>();
- componentContext.put(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS, batchResourceAssignment);
- componentContext.put(ConfigModelConstant.PROPERTY_ACTION_NAME, recipeName);
- componentContext.put(ConfigModelConstant.PROPERTY_TEMPLATE_NAME, "sample-template");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARIES, dictionaries);
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".profile_name", "sample");
-
- Map<String, String> inParams = new HashMap<>();
- SvcLogicContext ctx = new SvcLogicContext();
- String datatypeContent = FileUtils.readFileToString(new File("src/test/resources/mapping/db/dt-location.json"),
- Charset.defaultCharset());
- ctx.setAttribute("data_types.dt-location", datatypeContent);
- dbResourceProcessor.process(inParams, ctx, componentContext);
-
- }
-
- @Test
- public void testDbArrayComplexProcess() throws Exception {
- logger.info(" ******************************* testDbArrayComplexProcess ***************************");
- Mockito.doAnswer(new Answer<List<Map<String, Object>>>() {
- @Override
- public List<Map<String, Object>> answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- List<Map<String, Object>> results = new ArrayList<>();
- if (args != null) {
- logger.info("Query " + Arrays.asList(args));
- Map<String, Object> record = new HashMap<>();
- record.put("db-country", "US");
- record.put("db-state", "NJ");
- results.add(record);
-
- Map<String, Object> record2 = new HashMap<>();
- record2.put("db-country", "INDIA");
- record2.put("db-state", "TN");
- results.add(record2);
- }
- return results;
- }
- }).when(configResourceService).query(Matchers.anyString(), Matchers.<Map<String, Object>>any());
-
- String recipeName = "sample-recipe";
-
- String resourceassignmentContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/db/resource-assignments-array.json"), Charset.defaultCharset());
- List<ResourceAssignment> batchResourceAssignment =
- TransformationUtils.getListfromJson(resourceassignmentContent, ResourceAssignment.class);
-
- String dictionaryContent = FileUtils.readFileToString(new File("src/test/resources/mapping/db/db-array.json"),
- Charset.defaultCharset());
- Map<String, ResourceDefinition> dictionaries =
- ConfigResourceAssignmentTestUtils.getMapfromJson(dictionaryContent);
- DBResourceProcessor dbResourceProcessor = new DBResourceProcessor(configResourceService);
- Map<String, Object> componentContext = new HashMap<>();
- componentContext.put(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS, batchResourceAssignment);
- componentContext.put(ConfigModelConstant.PROPERTY_ACTION_NAME, recipeName);
- componentContext.put(ConfigModelConstant.PROPERTY_TEMPLATE_NAME, "sample-template");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARIES, dictionaries);
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".profile_name", "sample");
-
- Map<String, String> inParams = new HashMap<>();
- SvcLogicContext ctx = new SvcLogicContext();
- String datatypeContent = FileUtils.readFileToString(new File("src/test/resources/mapping/db/dt-location.json"),
- Charset.defaultCharset());
- ctx.setAttribute("data_types.dt-location", datatypeContent);
- dbResourceProcessor.process(inParams, ctx, componentContext);
- logger.info("Component Context = ({})", componentContext);
- Assert.assertNotNull("faile dto populate Array Complex response ", componentContext);
-
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/DefaultResourceProcessorTest.java b/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/DefaultResourceProcessorTest.java
deleted file mode 100644
index 16fd6c0bd..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/DefaultResourceProcessorTest.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.processor;
-
-import static org.mockito.Matchers.any;
-import java.io.File;
-import java.nio.charset.Charset;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.io.FileUtils;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.Mockito;
-import org.mockito.MockitoAnnotations;
-import org.mockito.invocation.InvocationOnMock;
-import org.mockito.runners.MockitoJUnitRunner;
-import org.mockito.stubbing.Answer;
-import org.onap.ccsdk.features.assignment.service.ConfigResourceAssignmentTestUtils;
-import org.onap.ccsdk.features.data.adaptor.domain.TransactionLog;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.data.dict.ResourceDefinition;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-@RunWith(MockitoJUnitRunner.class)
-public class DefaultResourceProcessorTest {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(DefaultResourceProcessorTest.class);
-
- @Mock
- private ConfigResourceService configResourceService;
-
- @SuppressWarnings("unchecked")
- @Before
- public void before() {
- MockitoAnnotations.initMocks(this);
-
- try {
- Mockito.doAnswer(new Answer<Void>() {
- @Override
- public Void answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- if (args != null) {
- logger.trace("Transaction info " + Arrays.asList(args));
- }
- return null;
- }
- }).when(configResourceService).save(any(TransactionLog.class));
-
- } catch (SvcLogicException e) {
- e.printStackTrace();
- }
- }
-
- @Test
- public void testDefaultSimpleProcess() throws Exception {
- logger.info(" ******************************* testDefaultSimpleProcess ***************************");
-
- String recipeName = "sample-recipe";
-
- String resourceassignmentContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/default/resource-assignments-simple.json"),
- Charset.defaultCharset());
- List<ResourceAssignment> batchResourceAssignment =
- TransformationUtils.getListfromJson(resourceassignmentContent, ResourceAssignment.class);
-
- String dictionaryContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/default/default-simple.json"), Charset.defaultCharset());
- Map<String, ResourceDefinition> dictionaries =
- ConfigResourceAssignmentTestUtils.getMapfromJson(dictionaryContent);
-
- DefaultResourceProcessor defaultResourceProcessor = new DefaultResourceProcessor(configResourceService);
- Map<String, Object> componentContext = new HashMap<>();
- componentContext.put(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS, batchResourceAssignment);
- componentContext.put(ConfigModelConstant.PROPERTY_ACTION_NAME, recipeName);
- componentContext.put(ConfigModelConstant.PROPERTY_TEMPLATE_NAME, "sample-template");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARIES, dictionaries);
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".profile_name", "sample");
-
- Map<String, String> inParams = new HashMap<>();
- SvcLogicContext ctx = new SvcLogicContext();
- defaultResourceProcessor.process(inParams, ctx, componentContext);
- logger.trace(" componentContext " + componentContext);
-
- Assert.assertEquals("Failed to populate default country value ", "US",
- componentContext.get(ConfigModelConstant.PROPERTY_RECIPE_KEY_DOT + "sample-recipe.country"));
- Assert.assertEquals("Failed to populate default country value ", "US",
- componentContext.get(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + "sample-recipe.country"));
-
- Assert.assertEquals("Failed to populate default port value ", 830,
- componentContext.get(ConfigModelConstant.PROPERTY_RECIPE_KEY_DOT + "sample-recipe.port"));
- Assert.assertEquals("Failed to populate default port value ", 830,
- componentContext.get(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + "sample-recipe.port"));
-
- Assert.assertEquals("Failed to populate default voip-enabled value ", true,
- componentContext.get(ConfigModelConstant.PROPERTY_RECIPE_KEY_DOT + "sample-recipe.voip-enabled"));
- Assert.assertEquals("Failed to populate default voip-enabled value ", true,
- componentContext.get(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + "sample-recipe.voip-enabled"));
-
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/InputResourceProcessorTest.java b/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/InputResourceProcessorTest.java
deleted file mode 100644
index add00d3a9..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/InputResourceProcessorTest.java
+++ /dev/null
@@ -1,178 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.processor;
-
-import static org.mockito.Matchers.any;
-import java.io.File;
-import java.nio.charset.Charset;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.io.FileUtils;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.Mockito;
-import org.mockito.MockitoAnnotations;
-import org.mockito.invocation.InvocationOnMock;
-import org.mockito.runners.MockitoJUnitRunner;
-import org.mockito.stubbing.Answer;
-import org.onap.ccsdk.features.assignment.service.ConfigResourceAssignmentTestUtils;
-import org.onap.ccsdk.features.data.adaptor.domain.TransactionLog;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.data.dict.ResourceDefinition;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import org.onap.ccsdk.sli.core.sli.SvcLogicException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-@RunWith(MockitoJUnitRunner.class)
-public class InputResourceProcessorTest {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(InputResourceProcessorTest.class);
-
- @Mock
- private ConfigResourceService configResourceService;
-
- @SuppressWarnings("unchecked")
- @Before
- public void before() {
- MockitoAnnotations.initMocks(this);
-
- try {
- Mockito.doAnswer(new Answer<Void>() {
- @Override
- public Void answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- if (args != null) {
- logger.trace("Transaction info " + Arrays.asList(args));
- }
- return null;
- }
- }).when(configResourceService).save(any(TransactionLog.class));
-
- } catch (SvcLogicException e) {
- e.printStackTrace();
- }
- }
-
- @Test
- public void testInputSimpleProcess() throws Exception {
- logger.info(" ******************************* testInputSimpleProcess ***************************");
-
- String recipeName = "sample-recipe";
-
- String resourceassignmentContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/input/resource-assignments-simple.json"),
- Charset.defaultCharset());
- List<ResourceAssignment> batchResourceAssignment =
- TransformationUtils.getListfromJson(resourceassignmentContent, ResourceAssignment.class);
-
- String dictionaryContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/default/default-simple.json"), Charset.defaultCharset());
- Map<String, ResourceDefinition> dictionaries =
- ConfigResourceAssignmentTestUtils.getMapfromJson(dictionaryContent);
-
- InputResourceProcessor inputResourceProcessor = new InputResourceProcessor(configResourceService);
- Map<String, Object> componentContext = new HashMap<>();
- componentContext.put(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS, batchResourceAssignment);
- componentContext.put(ConfigModelConstant.PROPERTY_ACTION_NAME, recipeName);
- componentContext.put(ConfigModelConstant.PROPERTY_TEMPLATE_NAME, "sample-template");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARIES, dictionaries);
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".profile_name", "sample");
-
- Map<String, String> inParams = new HashMap<>();
- SvcLogicContext ctx = new SvcLogicContext();
- ctx.setAttribute("country", "US");
- ctx.setAttribute("port", "830");
- ctx.setAttribute("voip-enabled", "true");
-
- inputResourceProcessor.process(inParams, ctx, componentContext);
- logger.trace(" componentContext " + componentContext);
-
- Assert.assertEquals("Failed to populate default recipe country value ", "US",
- componentContext.get(ConfigModelConstant.PROPERTY_RECIPE_KEY_DOT + "sample-recipe.country"));
- Assert.assertEquals("Failed to populate default dictionary country value ", "US",
- componentContext.get(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + "sample-recipe.country"));
-
- Assert.assertEquals("Failed to populate default recipe port value ", 830,
- componentContext.get(ConfigModelConstant.PROPERTY_RECIPE_KEY_DOT + "sample-recipe.port"));
- Assert.assertEquals("Failed to populate default dictionary port value ", 830,
- componentContext.get(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + "sample-recipe.port"));
-
- Assert.assertEquals("Failed to populate default recipe voip-enabled value ", true,
- componentContext.get(ConfigModelConstant.PROPERTY_RECIPE_KEY_DOT + "sample-recipe.voip-enabled"));
- Assert.assertEquals("Failed to populate default dictionary voip-enabled value ", true,
- componentContext.get(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + "sample-recipe.voip-enabled"));
-
- }
-
- @Test
- public void testInputComplexProcess() throws Exception {
- logger.info(" ******************************* testInputComplexProcess ***************************");
-
- String recipeName = "sample-recipe";
-
- String resourceassignmentContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/input/resource-assignments-complex.json"),
- Charset.defaultCharset());
- List<ResourceAssignment> batchResourceAssignment =
- TransformationUtils.getListfromJson(resourceassignmentContent, ResourceAssignment.class);
-
- String dictionaryContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/input/input-complex.json"), Charset.defaultCharset());
- Map<String, ResourceDefinition> dictionaries =
- ConfigResourceAssignmentTestUtils.getMapfromJson(dictionaryContent);
-
- InputResourceProcessor inputResourceProcessor = new InputResourceProcessor(configResourceService);
- Map<String, Object> componentContext = new HashMap<>();
- componentContext.put(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS, batchResourceAssignment);
- componentContext.put(ConfigModelConstant.PROPERTY_ACTION_NAME, recipeName);
- componentContext.put(ConfigModelConstant.PROPERTY_TEMPLATE_NAME, "sample-template");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARIES, dictionaries);
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".profile_name", "sample");
-
- Map<String, String> inParams = new HashMap<>();
- SvcLogicContext ctx = new SvcLogicContext();
- String datatypeContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/input/dt-location.json"), Charset.defaultCharset());
- ctx.setAttribute("data_types.dt-location", datatypeContent);
-
- String samplelocation = FileUtils.readFileToString(
- new File("src/test/resources/mapping/input/sample-location.json"), Charset.defaultCharset());
- ctx.setAttribute("location", samplelocation);
-
- inputResourceProcessor.process(inParams, ctx, componentContext);
-
- logger.trace(" componentContext " + componentContext);
- logger.trace(" Resource Mapping " + TransformationUtils.getJson(batchResourceAssignment, true));
-
- Assert.assertNotNull("Failed to populate input recipe location value ",
- componentContext.get(ConfigModelConstant.PROPERTY_RECIPE_KEY_DOT + "sample-recipe.location"));
- Assert.assertNotNull("Failed to populate input dictionary location value ",
- componentContext.get(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + "sample-recipe.location"));
-
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/MdsalResourceProcessorTest.java b/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/MdsalResourceProcessorTest.java
deleted file mode 100644
index 10a43538c..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/processor/MdsalResourceProcessorTest.java
+++ /dev/null
@@ -1,268 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.processor;
-
-import java.io.File;
-import java.nio.charset.Charset;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.io.FileUtils;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Matchers;
-import org.mockito.Mock;
-import org.mockito.Mockito;
-import org.mockito.invocation.InvocationOnMock;
-import org.mockito.runners.MockitoJUnitRunner;
-import org.mockito.stubbing.Answer;
-import org.onap.ccsdk.features.assignment.service.ConfigResourceAssignmentTestUtils;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.data.dict.ResourceDefinition;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import org.onap.ccsdk.features.rest.adaptor.service.ConfigRestAdaptorService;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-@RunWith(MockitoJUnitRunner.class)
-public class MdsalResourceProcessorTest {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(MdsalResourceProcessorTest.class);
-
- @Mock
- private ConfigRestAdaptorService configRestAdaptorService;
-
- @SuppressWarnings("unchecked")
- @Before
- public void before() {
-
- }
-
- @Test
- @SuppressWarnings("unchecked")
- public void testMdsalSimpleProcess() throws Exception {
- logger.info(" ******************************* testMdsalSimpleProcess ***************************");
-
- Mockito.doAnswer(new Answer<String>() {
- @Override
- public String answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- String response = null;
- if (args != null) {
- response = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/simple-response.json"),
- Charset.defaultCharset());
- logger.info(" Returning response :" + response);
- }
- return response;
- }
- }).when(configRestAdaptorService).getResource(Matchers.anyString(), Matchers.anyString(),
- Matchers.any(Class.class));
-
- String recipeName = "sample-recipe";
-
- String resourceassignmentContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/resource-assignments-simple.json"),
- Charset.defaultCharset());
- List<ResourceAssignment> batchResourceAssignment =
- TransformationUtils.getListfromJson(resourceassignmentContent, ResourceAssignment.class);
-
- String dictionaryContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/mdsal-simple.json"), Charset.defaultCharset());
- Map<String, ResourceDefinition> dictionaries =
- ConfigResourceAssignmentTestUtils.getMapfromJson(dictionaryContent);
- MdsalResourceProcessor mdsalResourceProcessor = new MdsalResourceProcessor(configRestAdaptorService);
- Map<String, Object> componentContext = new HashMap<>();
- componentContext.put(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS, batchResourceAssignment);
- componentContext.put(ConfigModelConstant.PROPERTY_ACTION_NAME, recipeName);
- componentContext.put(ConfigModelConstant.PROPERTY_TEMPLATE_NAME, "sample-template");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARIES, dictionaries);
-
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".profile_name", "sample");
-
- Map<String, String> inParams = new HashMap<>();
- SvcLogicContext ctx = new SvcLogicContext();
- mdsalResourceProcessor.process(inParams, ctx, componentContext);
-
- }
-
- @SuppressWarnings("unchecked")
- @Test
- public void testMDSALComplexProcess() throws Exception {
- logger.info(" ******************************* testMDSALComplexProcess ***************************");
-
- Mockito.doAnswer(new Answer<String>() {
- @Override
- public String answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- String response = null;
- if (args != null) {
- response = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/complex-response.json"),
- Charset.defaultCharset());
- }
- return response;
- }
- }).when(configRestAdaptorService).getResource(Matchers.anyString(), Matchers.anyString(),
- Matchers.any(Class.class));
-
- String recipeName = "sample-recipe";
-
- String resourceassignmentContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/resource-assignments-complex.json"),
- Charset.defaultCharset());
- List<ResourceAssignment> batchResourceAssignment =
- TransformationUtils.getListfromJson(resourceassignmentContent, ResourceAssignment.class);
-
- String dictionaryContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/mdsal-complex.json"), Charset.defaultCharset());
- Map<String, ResourceDefinition> dictionaries =
- ConfigResourceAssignmentTestUtils.getMapfromJson(dictionaryContent);
- MdsalResourceProcessor dbResourceProcessor = new MdsalResourceProcessor(configRestAdaptorService);
- Map<String, Object> componentContext = new HashMap<>();
- componentContext.put(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS, batchResourceAssignment);
- componentContext.put(ConfigModelConstant.PROPERTY_ACTION_NAME, recipeName);
- componentContext.put(ConfigModelConstant.PROPERTY_TEMPLATE_NAME, "sample-template");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARIES, dictionaries);
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".profile_name", "sample");
-
- Map<String, String> inParams = new HashMap<>();
- SvcLogicContext ctx = new SvcLogicContext();
- String datatypeContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/dt-location.json"), Charset.defaultCharset());
- ctx.setAttribute("data_types.dt-location", datatypeContent);
- dbResourceProcessor.process(inParams, ctx, componentContext);
-
- }
-
- @Test
- @SuppressWarnings("unchecked")
- public void testMDSALArrayComplexProcess() throws Exception {
- logger.info(" ******************************* testMDSALArrayComplexProcess ***************************");
-
- Mockito.doAnswer(new Answer<String>() {
- @Override
- public String answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- String response = null;
- if (args != null) {
- response = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/array-complex-response.json"),
- Charset.defaultCharset());
- }
- return response;
- }
- }).when(configRestAdaptorService).getResource(Matchers.anyString(), Matchers.anyString(),
- Matchers.any(Class.class));
-
- String recipeName = "sample-recipe";
-
- String resourceassignmentContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/resource-assignments-array.json"), Charset.defaultCharset());
- List<ResourceAssignment> batchResourceAssignment =
- TransformationUtils.getListfromJson(resourceassignmentContent, ResourceAssignment.class);
-
- String dictionaryContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/mdsal-array.json"), Charset.defaultCharset());
-
- Map<String, ResourceDefinition> dictionaries =
- ConfigResourceAssignmentTestUtils.getMapfromJson(dictionaryContent);
- MdsalResourceProcessor dbResourceProcessor = new MdsalResourceProcessor(configRestAdaptorService);
- Map<String, Object> componentContext = new HashMap<>();
- componentContext.put(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS, batchResourceAssignment);
- componentContext.put(ConfigModelConstant.PROPERTY_ACTION_NAME, recipeName);
- componentContext.put(ConfigModelConstant.PROPERTY_TEMPLATE_NAME, "sample-template");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARIES, dictionaries);
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".profile_name", "sample");
-
- Map<String, String> inParams = new HashMap<>();
- SvcLogicContext ctx = new SvcLogicContext();
- String datatypeContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/dt-location.json"), Charset.defaultCharset());
- ctx.setAttribute("data_types.dt-location", datatypeContent);
- dbResourceProcessor.process(inParams, ctx, componentContext);
- logger.info("Component Context = ({})", componentContext);
- Assert.assertNotNull("failed to populate Array Complex response ", componentContext);
-
- }
-
- @Test
- @SuppressWarnings("unchecked")
- public void testMDSALArraySimpleProcess() throws Exception {
- logger.info(" ******************************* testMDSALArrayComplexProcess ***************************");
-
- Mockito.doAnswer(new Answer<String>() {
- @Override
- public String answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- String response = null;
- if (args != null) {
- response = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/array-complex-v4-assigned-response.json"),
- Charset.defaultCharset());
- }
- return response;
- }
- }).when(configRestAdaptorService).getResource(Matchers.anyString(), Matchers.anyString(),
- Matchers.any(Class.class));
-
- String recipeName = "sample-recipe";
-
- String resourceassignmentContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/resource-assignments-complex-simple.json"),
- Charset.defaultCharset());
- List<ResourceAssignment> batchResourceAssignment =
- TransformationUtils.getListfromJson(resourceassignmentContent, ResourceAssignment.class);
-
- String dictionaryContent = FileUtils.readFileToString(
- new File("src/test/resources/mapping/Mdsal/mdsal-array-v4iplist.json"), Charset.defaultCharset());
- Map<String, ResourceDefinition> dictionaries =
- ConfigResourceAssignmentTestUtils.getMapfromJson(dictionaryContent);
- MdsalResourceProcessor mdsalResourceProcessor = new MdsalResourceProcessor(configRestAdaptorService);
- Map<String, Object> componentContext = new HashMap<>();
- componentContext.put(ConfigModelConstant.PROPERTY_RESOURCE_ASSIGNMENTS, batchResourceAssignment);
- componentContext.put(ConfigModelConstant.PROPERTY_ACTION_NAME, recipeName);
- componentContext.put(ConfigModelConstant.PROPERTY_TEMPLATE_NAME, "sample-template");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARIES, dictionaries);
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".service-instance-id",
- "3c8d5a63-a793-4206-a67c-4b2e8e648196");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".oam-network-role",
- "sample");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".oam-ipv4-ip-type",
- "sample");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".profile_name", "sample");
- componentContext.put(ConfigModelConstant.PROPERTY_DICTIONARY_KEY_DOT + recipeName + ".oam-vm-type", "sample");
-
- Map<String, String> inParams = new HashMap<>();
- SvcLogicContext ctx = new SvcLogicContext();
- // String datatypeContent = FileUtils.readFileToString(new
- // File("src/test/resources/mapping/Mdsal/dt-v4-assigned-ip-list.json"), Charset.defaultCharset() );
- // ctx.setAttribute("data_types.dt-v4-assigned-ip-list", datatypeContent);
- mdsalResourceProcessor.process(inParams, ctx, componentContext);
- logger.info("Component Context = ({})", componentContext);
- Assert.assertNotNull("failed to populate Array Complex response ", componentContext);
- Assert.assertEquals("Compare String ", "10.66.1.152",
- componentContext.get(ConfigModelConstant.PROPERTY_RECIPE_KEY_DOT + recipeName + ".v4-ip-prefix"));
-
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentNodeTest.java b/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentNodeTest.java
deleted file mode 100644
index 0fe6c9261..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ConfigAssignmentNodeTest.java
+++ /dev/null
@@ -1,246 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.io.File;
-import java.nio.charset.Charset;
-import java.util.HashMap;
-import java.util.Map;
-import org.apache.commons.io.FileUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.sling.testing.mock.osgi.MockOsgi;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.mockito.runners.MockitoJUnitRunner;
-import org.onap.ccsdk.features.assignment.ConfigAssignmentConstants;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.generator.service.ConfigGeneratorService;
-import org.onap.ccsdk.features.generator.service.ConfigGeneratorServiceImpl;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.service.ComponentNodeDelegate;
-import org.onap.ccsdk.features.model.service.ComponentNodeService;
-import org.onap.ccsdk.features.model.service.ComponentNodeServiceImpl;
-import org.onap.ccsdk.features.model.service.ConfigModelService;
-import org.onap.ccsdk.features.model.service.ConfigModelServiceImpl;
-import org.onap.ccsdk.features.rest.adaptor.service.ConfigRestAdaptorService;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import org.osgi.framework.BundleContext;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-@RunWith(MockitoJUnitRunner.class)
-public class ConfigAssignmentNodeTest {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ConfigAssignmentNodeTest.class);
-
- @Rule
- public ExpectedException thrown = ExpectedException.none();
-
- @Mock
- private ConfigResourceService configResourceService;
-
- @Mock
- private ConfigRestAdaptorService configRestAdaptorService;
-
- private ConfigModelService configModelService;
-
- private ComponentNodeService componentNodeService;
-
- private ConfigGeneratorService configGeneratorService;
-
- BundleContext bundleContext = MockOsgi.newBundleContext();
-
- @SuppressWarnings("unchecked")
- @Before
- public void before() throws Exception {
- MockitoAnnotations.initMocks(this);
- /*
- * ConfigAssignmentNode configAssignmentNode = new ConfigAssignmentNode(componentNodeService,
- * configResourceService, configModelService, configRestAdaptorService, configGeneratorService);
- * bundleContext.registerService(ConfigAssignmentNode.class, configAssignmentNode, null);
- */
- }
-
- @Test
- public void testResourceAssignment() throws Exception {
- ConfigResourceAssignmentTestUtils.injectTransactionLogSaveMock(configResourceService);
-
- ConfigResourceAssignmentTestUtils.injectConfigModelMock(configRestAdaptorService, "resource_assignment");
-
- ConfigResourceAssignmentTestUtils.injectResourceDictionaryMock(configRestAdaptorService,
- "assignments/empty-dictionary.json");
-
- ConfigResourceAssignmentTestUtils.injectConfigResourceSaveMock(configResourceService);
-
- componentNodeService =
- new ComponentNodeServiceImpl(bundleContext, configResourceService, configRestAdaptorService);
- configModelService = new ConfigModelServiceImpl(configRestAdaptorService);
- configGeneratorService = new ConfigGeneratorServiceImpl(configResourceService);
-
- ConfigAssignmentNode configAssignmentNode = new ConfigAssignmentNode(configResourceService,
- configRestAdaptorService, configModelService, componentNodeService, configGeneratorService);
-
- String inputContent = FileUtils.readFileToString(
- new File("src/test/resources/service_templates/input/input.json"), Charset.defaultCharset());
-
- Map<String, String> inParams = new HashMap<>();
- inParams.put(ConfigModelConstant.PROPERTY_SELECTOR, "test");
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_REQUEST_ID, "1234");
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_RESOURCE_ID, "resourceid-1234");
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_RESOURCE_TYPE, "vnf-type");
- inParams.put(ConfigModelConstant.SERVICE_TEMPLATE_KEY_ARTIFACT_NAME, "vpe-201802-baseconfig");
- inParams.put(ConfigModelConstant.SERVICE_TEMPLATE_KEY_ARTIFACT_VERSION, "1.0.0");
- inParams.put(ConfigModelConstant.PROPERTY_ACTION_NAME, "resource-assignment-action");
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_INPUT_DATA, inputContent);
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_TEMPLATE_NAMES, "[\"base-config-template\"]");
-
- // Populate the SvcContext ( Simulation)
- SvcLogicContext svcLogicContext = new SvcLogicContext();
- Map<String, String> context = new HashMap<>();
- context.put(ConfigModelConstant.PROPERTY_ACTION_NAME, "resource-assignment-action");
- context = configModelService.prepareContext(context, inputContent, "vpe-201802-baseconfig", "1.0.0");
- context.forEach((key, value) -> svcLogicContext.setAttribute(key, value));
-
- Map<String, Object> componentContext = new HashMap<>();
- configAssignmentNode.process(inParams, svcLogicContext, componentContext);
- Assert.assertNotNull("Failed to get response status", svcLogicContext.getAttribute("test.status"));
-
- }
-
- @Test
- public void testSimplePreview() throws Exception {
- ConfigResourceAssignmentTestUtils.injectTransactionLogSaveMock(configResourceService);
-
- ConfigResourceAssignmentTestUtils.injectConfigModelMock(configRestAdaptorService, "resource_assignment");
-
- ConfigResourceAssignmentTestUtils.injectResourceDictionaryMock(configRestAdaptorService,
- "assignments/empty-dictionary.json");
-
- ConfigResourceAssignmentTestUtils.injectConfigResourceSaveMock(configResourceService);
-
- componentNodeService =
- new ComponentNodeServiceImpl(bundleContext, configResourceService, configRestAdaptorService);
- configModelService = new ConfigModelServiceImpl(configRestAdaptorService);
- configGeneratorService = new ConfigGeneratorServiceImpl(configResourceService);
-
- ConfigAssignmentNode configAssignmentNode = new ConfigAssignmentNode(configResourceService,
- configRestAdaptorService, configModelService, componentNodeService, configGeneratorService);
-
- String inputContent = FileUtils.readFileToString(
- new File("src/test/resources/service_templates/input/input.json"), Charset.defaultCharset());
-
- Map<String, String> inParams = new HashMap<>();
- inParams.put(ConfigModelConstant.PROPERTY_SELECTOR, "test");
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_REQUEST_ID, "1234");
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_RESOURCE_ID, "resourceid-1234");
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_RESOURCE_TYPE, "vnf-type");
- inParams.put(ConfigModelConstant.SERVICE_TEMPLATE_KEY_ARTIFACT_NAME, "vpe-201802-baseconfig");
- inParams.put(ConfigModelConstant.SERVICE_TEMPLATE_KEY_ARTIFACT_VERSION, "1.0.0");
- inParams.put(ConfigModelConstant.PROPERTY_ACTION_NAME, "resource-assignment-action");
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_INPUT_DATA, inputContent);
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_TEMPLATE_NAMES, "[\"base-config-template\"]");
- SvcLogicContext ctx = new SvcLogicContext();
- configAssignmentNode.process(inParams, ctx);
- Assert.assertNotNull("Failed to get response mashed Content",
- ctx.getAttribute("test.mashed-data.base-config-template"));
- }
-
- @Test
- public void testComplexPreview() throws Exception {
- ConfigResourceAssignmentTestUtils.injectTransactionLogSaveMock(configResourceService);
-
- ConfigResourceAssignmentTestUtils.injectConfigModelMock(configRestAdaptorService, "vpe-201802-baseconfig");
-
- ConfigResourceAssignmentTestUtils.injectResourceDictionaryMock(configRestAdaptorService,
- "service_templates/vpe-201802-baseconfig/dict.json");
-
- ConfigResourceAssignmentTestUtils.injectConfigResourceSaveMock(configResourceService);
-
- componentNodeService =
- new ComponentNodeServiceImpl(bundleContext, configResourceService, configRestAdaptorService);
- configModelService = new ConfigModelServiceImpl(configRestAdaptorService);
- configGeneratorService = new ConfigGeneratorServiceImpl(configResourceService);
-
- ConfigAssignmentNode configAssignmentNode = new ConfigAssignmentNode(configResourceService,
- configRestAdaptorService, configModelService, componentNodeService, configGeneratorService);
-
- String inputContent = FileUtils.readFileToString(
- new File("src/test/resources/service_templates/vpe-201802-baseconfig/input-complex.json"),
- Charset.defaultCharset());
-
- Map<String, String> inParams = new HashMap<>();
- inParams.put(ConfigModelConstant.PROPERTY_SELECTOR, "complex-test");
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_REQUEST_ID, "request-1234");
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_RESOURCE_ID, "resourceid-1234");
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_RESOURCE_TYPE, "vnf-type");
- inParams.put(ConfigModelConstant.SERVICE_TEMPLATE_KEY_ARTIFACT_NAME, "vpe-201802-baseconfig");
- inParams.put(ConfigModelConstant.SERVICE_TEMPLATE_KEY_ARTIFACT_VERSION, "1.0.0");
- inParams.put(ConfigModelConstant.PROPERTY_ACTION_NAME, "resource-assignment-action");
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_INPUT_DATA, inputContent);
- inParams.put(ConfigAssignmentConstants.INPUT_PARAM_TEMPLATE_NAMES, "[\"base-config-template\"]");
- SvcLogicContext ctx = new SvcLogicContext();
- configAssignmentNode.process(inParams, ctx);
- Assert.assertNotNull("Failed to get response mashed Content",
- ctx.getAttribute("complex-test.mashed-data.base-config-template"));
-
- }
-
- @Test
- public void inputValidator() {
- SvcLogicContext ctx = new SvcLogicContext();
- try {
-
- logger.info(" ******************************* inputValidator ***************************");
- String serviceTemplateContent = FileUtils.readFileToString(
- new File("src/test/resources/service_templates/resource_assignment.json"),
- Charset.defaultCharset());
-
- String inputcontent = FileUtils.readFileToString(
- new File("src/test/resources/service_templates/input/inputValidateTest.json"),
- Charset.defaultCharset());
-
- Map<String, String> context = new HashMap<>();
- configModelService.prepareContext(context, inputcontent, serviceTemplateContent);
-
- // TransformationUtils.printMap(context);
-
- context.forEach((name, value) -> {
- if (StringUtils.isNotBlank(name) && StringUtils.isNotBlank(value)) {
- ctx.setAttribute(name, value);
- }
- });
-
- ComponentNodeDelegate componentNodeDelegate = new ComponentNodeDelegate(componentNodeService);
- Map<String, String> inParams = new HashMap<>();
- inParams.put(ConfigModelConstant.PROPERTY_SELECTOR, "resource-assignment");
- componentNodeDelegate.process(inParams, ctx);
- Assert.fail();
- } catch (Exception e) {
- logger.error("Failed in inputValidator" + e.getMessage());
- logger.info("** ctx.getAttribute Check for **" + ctx.getAttribute("resource-assignment.error-message"));
- }
-
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ConfigPreviewServiceTest.java b/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ConfigPreviewServiceTest.java
deleted file mode 100644
index be4ca0381..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ConfigPreviewServiceTest.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.io.File;
-import java.nio.charset.Charset;
-import org.apache.commons.io.FileUtils;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.mockito.runners.MockitoJUnitRunner;
-import org.onap.ccsdk.features.assignment.data.ResourceAssignmentData;
-import org.onap.ccsdk.features.data.adaptor.domain.ConfigResource;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.generator.service.ConfigGeneratorService;
-import org.onap.ccsdk.features.generator.service.ConfigGeneratorServiceImpl;
-import org.onap.ccsdk.features.model.service.ConfigModelService;
-import org.onap.ccsdk.features.model.service.ConfigModelServiceImpl;
-import org.onap.ccsdk.features.rest.adaptor.service.ConfigRestAdaptorService;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-@RunWith(MockitoJUnitRunner.class)
-public class ConfigPreviewServiceTest {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ConfigPreviewServiceTest.class);
-
- @Rule
- public ExpectedException thrown = ExpectedException.none();
-
- @Mock
- private ConfigResourceService configResourceService;
-
- @Mock
- private ConfigRestAdaptorService configRestAdaptorService;
-
- private ConfigModelService configModelService;
- private ConfigGeneratorService configGeneratorService;
-
- @SuppressWarnings("unchecked")
- @Before
- public void before() throws Exception {
- MockitoAnnotations.initMocks(this);
- }
-
- @Test
- public void testGenerateTemplateResourceMash() throws Exception {
-
- ConfigResourceAssignmentTestUtils.injectTransactionLogSaveMock(configResourceService);
-
- ConfigResourceAssignmentTestUtils.injectConfigModelMock(configRestAdaptorService, "resource_assignment");
-
- ConfigResourceAssignmentTestUtils.injectResourceDictionaryMock(configRestAdaptorService,
- "assignments/empty-dictionary.json");
-
- ConfigResource configResourceQuery = new ConfigResource();
- configResourceQuery.setServiceTemplateVersion("sample-serviceTemplateName");
- configResourceQuery.setServiceTemplateVersion("1.0.0");
- configResourceQuery.setRecipeName("sample-action");
- configResourceQuery.setResourceId("123-resourceId");
- configResourceQuery.setResourceType("sample-resourceType");
- configResourceQuery.setTemplateName("base-config-template");
- String inputContent = FileUtils.readFileToString(
- new File("src/test/resources/service_templates/input/input.json"), Charset.defaultCharset());
- configResourceQuery.setResourceData(inputContent);
-
- ConfigResourceAssignmentTestUtils.injectGetConfigResourceMock(configResourceService, configResourceQuery);
-
- configModelService = new ConfigModelServiceImpl(configRestAdaptorService);
- configGeneratorService = new ConfigGeneratorServiceImpl(configResourceService);
-
- ConfigPreviewService configPreviewService =
- new ConfigPreviewService(configResourceService, configModelService, configGeneratorService);
-
- ResourceAssignmentData resourceAssignmentData = new ResourceAssignmentData();
- resourceAssignmentData.setResourceId("123-resourceId");
- resourceAssignmentData.setResourceType("sample-resourceType");
- resourceAssignmentData.setServiceTemplateName("sample-serviceTemplateName");
- resourceAssignmentData.setServiceTemplateVersion("1.0.0");
- resourceAssignmentData.setActionName("sample-action");
-
- resourceAssignmentData = configPreviewService.generateTemplateResourceMash(resourceAssignmentData);
-
- Assert.assertNotNull("Failed to get GenerateTemplateResourceMash response.", resourceAssignmentData);
- Assert.assertNotNull("Failed to get template mashed contents.",
- resourceAssignmentData.getTemplatesMashedContents());
-
- Assert.assertNotNull("Failed to get base-config template mashed contents.",
- resourceAssignmentData.getTemplatesMashedContents().get("base-config-template"));
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ConfigResourceAssignmentTestUtils.java b/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ConfigResourceAssignmentTestUtils.java
deleted file mode 100644
index 97082ae0f..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ConfigResourceAssignmentTestUtils.java
+++ /dev/null
@@ -1,182 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyString;
-import java.io.File;
-import java.nio.charset.Charset;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.io.FileUtils;
-import org.apache.commons.io.FilenameUtils;
-import org.apache.commons.io.IOUtils;
-import org.mockito.Matchers;
-import org.mockito.Mockito;
-import org.mockito.invocation.InvocationOnMock;
-import org.mockito.stubbing.Answer;
-import org.onap.ccsdk.features.data.adaptor.domain.ConfigResource;
-import org.onap.ccsdk.features.data.adaptor.domain.TransactionLog;
-import org.onap.ccsdk.features.data.adaptor.service.ConfigResourceService;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.data.dict.ResourceDefinition;
-import org.onap.ccsdk.features.model.domain.ConfigModel;
-import org.onap.ccsdk.features.model.domain.ConfigModelContent;
-import org.onap.ccsdk.features.rest.adaptor.service.ConfigRestAdaptorService;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import com.fasterxml.jackson.core.type.TypeReference;
-import com.fasterxml.jackson.databind.ObjectMapper;
-
-public class ConfigResourceAssignmentTestUtils {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ConfigResourceAssignmentTestUtils.class);
-
- public static void injectTransactionLogSaveMock(ConfigResourceService configResourceService) throws Exception {
- Mockito.doAnswer(new Answer<Void>() {
- @Override
- public Void answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- if (args != null) {
- logger.trace("Transaction info " + Arrays.asList(args));
- }
- return null;
- }
- }).when(configResourceService).save(any(TransactionLog.class));
- }
-
- public static void injectConfigModelMock(ConfigRestAdaptorService configRestAdaptorService,
- String serviceTemplateName) throws Exception {
-
- Mockito.doAnswer(new Answer<ConfigModel>() {
- @Override
- public org.onap.ccsdk.features.model.domain.ConfigModel answer(InvocationOnMock invocationOnMock)
- throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- org.onap.ccsdk.features.model.domain.ConfigModel serviceArtifact = null;
- if (args != null && args.length == 3) {
-
- logger.info("Artifact info " + Arrays.asList(args));
- String modelContent = IOUtils.toString(
- ConfigResourceAssignmentTestUtils.class.getClassLoader().getResourceAsStream(
- "service_templates/" + serviceTemplateName + "/" + serviceTemplateName + ".json"),
- Charset.defaultCharset());
-
- ConfigModelContent configModelContent = new ConfigModelContent();
- configModelContent.setContent(modelContent);
- configModelContent.setContentType(ConfigModelConstant.MODEL_CONTENT_TYPE_TOSCA_JSON);
-
- List<ConfigModelContent> configModelContents = new ArrayList<>();
- configModelContents.add(configModelContent);
-
- String velocityDir = ConfigResourceAssignmentTestUtils.class.getClassLoader()
- .getResource("service_templates/" + serviceTemplateName + "/velocity").getPath();
-
- Collection<File> templateFiles =
- FileUtils.listFiles(new File(velocityDir), new String[] {"vtl"}, true);
- logger.info("Template Files info " + templateFiles);
- for (File templateFile : templateFiles) {
- String templateContent = FileUtils.readFileToString(templateFile, Charset.defaultCharset());
- ConfigModelContent configModelTemplateContent = new ConfigModelContent();
- configModelTemplateContent.setContent(templateContent);
- configModelTemplateContent.setName(FilenameUtils.getBaseName(templateFile.getName()));
- configModelTemplateContent.setContentType(ConfigModelConstant.MODEL_CONTENT_TYPE_TEMPLATE);
- configModelContents.add(configModelTemplateContent);
- }
-
- serviceArtifact = new org.onap.ccsdk.features.model.domain.ConfigModel();
- serviceArtifact.setArtifactName(String.valueOf(args[0]));
- serviceArtifact.setArtifactVersion(String.valueOf(args[1]));
- serviceArtifact.setPublished("Y");
- serviceArtifact.setConfigModelContents(configModelContents);
- }
-
- return serviceArtifact;
- }
- }).when(configRestAdaptorService).getResource(anyString(), anyString(), Matchers.any(Class.class));
- }
-
- public static void injectResourceDictionaryMock(ConfigRestAdaptorService configRestAdaptorService,
- String dictionaryFileName) throws Exception {
-
- Mockito.doAnswer(new Answer<String>() {
- @Override
- public String answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- String dictionaties = "[]";
- if (args != null) {
- logger.info("getResourceDictionaryByNames " + Arrays.asList(args));
- dictionaties = IOUtils.toString(
- ConfigAssignmentNodeTest.class.getClassLoader().getResourceAsStream(dictionaryFileName),
- Charset.defaultCharset());
- }
- return dictionaties;
- }
- }).when(configRestAdaptorService).postResource(Matchers.any(), Matchers.any(), Matchers.any(),
- Matchers.any(Class.class));
- }
-
- public static void injectConfigResourceSaveMock(ConfigResourceService configResourceService) throws Exception {
- Mockito.doAnswer(new Answer<ConfigResource>() {
- @Override
- public ConfigResource answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- ConfigResource configResource = null;
- if (args != null) {
- configResource = (ConfigResource) args[0];
- logger.info("Config Resource Save info " + configResource);
- return configResource;
- }
- return configResource;
- }
- }).when(configResourceService).saveConfigResource(any(ConfigResource.class));
- }
-
- public static void injectGetConfigResourceMock(ConfigResourceService configResourceService,
- ConfigResource configResource) throws Exception {
- Mockito.doAnswer(new Answer<List<ConfigResource>>() {
- @Override
- public List<ConfigResource> answer(InvocationOnMock invocationOnMock) throws Throwable {
- Object[] args = invocationOnMock.getArguments();
- List<ConfigResource> configResources = new ArrayList<>();
- if (args != null) {
- configResources.add(configResource);
- }
- return configResources;
- }
- }).when(configResourceService).getConfigResource(any(ConfigResource.class));
- }
-
- public static String getFileContent(String filePath) throws Exception {
- return IOUtils.toString(ConfigResourceAssignmentTestUtils.class.getClassLoader().getResourceAsStream(filePath),
- Charset.defaultCharset());
- }
-
- public static Map<String, ResourceDefinition> getMapfromJson(String content) {
- try {
- ObjectMapper mapper = new ObjectMapper();
- return mapper.readValue(content, new TypeReference<Map<String, ResourceDefinition>>() {});
- } catch (Exception e) {
- logger.info("getMapfromJson Exception ({})", e);
- }
- return null;
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ResourceAssignmentGenerationTest.java b/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ResourceAssignmentGenerationTest.java
deleted file mode 100644
index 73f0d0941..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ResourceAssignmentGenerationTest.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.nio.charset.Charset;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.io.IOUtils;
-import org.junit.Assert;
-import org.junit.Test;
-import org.onap.ccsdk.features.model.ConfigModelConstant;
-import org.onap.ccsdk.features.model.ValidTypes;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.utils.ResourceAssignmentUtils;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import com.fasterxml.jackson.databind.JsonNode;
-
-public class ResourceAssignmentGenerationTest {
-
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ResourceAssignmentGenerationTest.class);
-
- @Test
- public void testResourceDataSetting() {
- try {
- logger.info(" **************** testResourceDataSetting *****************");
- String resourceAssignmentContents = IOUtils.toString(TopologicalSortingTest.class.getClassLoader()
- .getResourceAsStream("assignments/alltype-empty-value-mapping.json"), Charset.defaultCharset());
-
- List<ResourceAssignment> assignments =
- TransformationUtils.getListfromJson(resourceAssignmentContents, ResourceAssignment.class);
- if (assignments != null) {
- Map<String, Object> componentContext = new HashMap<>();
- componentContext.put(ConfigModelConstant.PROPERTY_ACTION_NAME, "sample-recipe");
- for (ResourceAssignment resourceAssignment : assignments) {
- if (resourceAssignment != null && resourceAssignment.getProperty() != null) {
- String type = resourceAssignment.getProperty().getType();
- Object value = null;
- if (ValidTypes.DATA_TYPE_STRING.equals(type)) {
- value = new String("abcdef");
- } else if (ValidTypes.DATA_TYPE_INTEGER.equals(type)) {
- value = new Integer(1234);
- } else if (ValidTypes.DATA_TYPE_BOOLEAN.equals(type)) {
- value = new Boolean(true);
- } else if (ValidTypes.DATA_TYPE_LIST.equals(type)) {
- String entityType = resourceAssignment.getProperty().getEntrySchema().getType();
- if (ValidTypes.DATA_TYPE_STRING.equals(entityType)) {
- value = "[\"abcd-array\"]";
- } else {
- String content = "[{\"name\" : \"abcd-array-complex\"}]";
- JsonNode node = TransformationUtils.getJsonNodeForString(content);
- value = node;
- }
- } else {
- String content = "{\"name\" : \"abcd-complex\"}";
- JsonNode node = TransformationUtils.getJsonNodeForString(content);
- value = node;
- }
- ResourceAssignmentUtils.setResourceDataValue(componentContext, resourceAssignment, value);
- }
- }
- String generatedData = ResourceAssignmentUtils.generateResourceDataForAssignments(assignments);
- logger.trace("Generated Data " + generatedData);
-
- Assert.assertNotNull("Failed to generate resource data", generatedData);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-
- @Test
- public void testGenerateResourceData() {
- try {
- logger.info(" **************** testGenerateResourceData *****************");
- String resourceAssignmentContents = IOUtils.toString(TopologicalSortingTest.class.getClassLoader()
- .getResourceAsStream("assignments/alltype-mapping.json"), Charset.defaultCharset());
-
- List<ResourceAssignment> assignments =
- TransformationUtils.getListfromJson(resourceAssignmentContents, ResourceAssignment.class);
- if (assignments != null) {
-
- String generatedData = ResourceAssignmentUtils.generateResourceDataForAssignments(assignments);
- logger.trace("Generated Data " + generatedData);
-
- Assert.assertNotNull("Failed to generate resource data", generatedData);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ResourceAssignmentValidation.java b/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ResourceAssignmentValidation.java
deleted file mode 100644
index 081315639..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/ResourceAssignmentValidation.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.io.IOException;
-import java.nio.charset.Charset;
-import java.util.List;
-import org.apache.commons.io.IOUtils;
-import org.junit.Assert;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-import org.onap.ccsdk.features.model.ConfigModelException;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import org.onap.ccsdk.features.model.validator.ResourceAssignmentValidator;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-public class ResourceAssignmentValidation {
- private static EELFLogger logger = EELFManager.getInstance().getLogger(ResourceAssignmentValidation.class);
-
- @Rule
- public final ExpectedException exception = ExpectedException.none();
-
- @Test
- public void testValidateSuccess() {
- try {
- logger.info(" **************** testValidateSuccess *****************");
- String resourceMapping = IOUtils.toString(
- TopologicalSortingTest.class.getClassLoader().getResourceAsStream("validation/success.json"),
- Charset.defaultCharset());
-
- List<ResourceAssignment> assignments =
- TransformationUtils.getListfromJson(resourceMapping, ResourceAssignment.class);
- if (assignments != null) {
- ResourceAssignmentValidator resourceAssignmentValidator = new ResourceAssignmentValidator(assignments);
-
- boolean result = resourceAssignmentValidator.validateResourceAssignment();
- Assert.assertTrue("Failed to Validate", result);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-
- @Test(expected = ConfigModelException.class)
- public void testValidateDuplicate() throws IOException, ConfigModelException {
- logger.info(" **************** testValidateDuplicate *****************");
- String resourceMapping = IOUtils.toString(
- TopologicalSortingTest.class.getClassLoader().getResourceAsStream("validation/duplicate.json"),
- Charset.defaultCharset());
-
- List<ResourceAssignment> assignments =
- TransformationUtils.getListfromJson(resourceMapping, ResourceAssignment.class);
- if (assignments != null) {
- ResourceAssignmentValidator resourceAssignmentValidator = new ResourceAssignmentValidator(assignments);
- resourceAssignmentValidator.validateResourceAssignment();
- }
-
- }
-
- @Test(expected = ConfigModelException.class)
- public void testValidateCyclic() throws IOException, ConfigModelException {
- logger.info(" **************** testValidateCyclic *****************");
- String resourceMapping = IOUtils.toString(
- TopologicalSortingTest.class.getClassLoader().getResourceAsStream("validation/cyclic.json"),
- Charset.defaultCharset());
-
- List<ResourceAssignment> assignments =
- TransformationUtils.getListfromJson(resourceMapping, ResourceAssignment.class);
- if (assignments != null) {
- ResourceAssignmentValidator resourceAssignmentValidator = new ResourceAssignmentValidator(assignments);
-
- resourceAssignmentValidator.validateResourceAssignment();
- }
-
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/TopologicalSortingTest.java b/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/TopologicalSortingTest.java
deleted file mode 100644
index f6e8871a6..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/java/org/onap/ccsdk/features/assignment/service/TopologicalSortingTest.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright © 2017-2018 AT&T Intellectual Property.
- * Modifications Copyright © 2018 IBM.
- *
- * 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.onap.ccsdk.features.assignment.service;
-
-import java.nio.charset.Charset;
-import java.util.List;
-import org.apache.commons.io.IOUtils;
-import org.junit.Assert;
-import org.junit.Test;
-import org.onap.ccsdk.features.assignment.processor.ResourceAssignmentProcessor;
-import org.onap.ccsdk.features.model.data.ResourceAssignment;
-import org.onap.ccsdk.features.model.utils.TransformationUtils;
-import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-public class TopologicalSortingTest {
- private static EELFLogger logger = EELFManager.getInstance().getLogger(TopologicalSortingTest.class);
-
- @Test
- public void testBulkSequencingMapping() {
- try {
- logger.info(" **************** Bulk Sequencing Default *****************");
- String resourceMapping = IOUtils.toString(
- TopologicalSortingTest.class.getClassLoader().getResourceAsStream("mapping/dependency.json"),
- Charset.defaultCharset());
-
- List<ResourceAssignment> assignments =
- TransformationUtils.getListfromJson(resourceMapping, ResourceAssignment.class);
- if (assignments != null) {
- SvcLogicContext ctx = new SvcLogicContext();
- ResourceAssignmentProcessor resourceAssignmentProcessor =
- new ResourceAssignmentProcessor(assignments, ctx);
- List<List<ResourceAssignment>> sequenceBatchResourceAssignment = resourceAssignmentProcessor.process();
-
- Assert.assertNotNull("Failed to populate Sequence Bulk Mappings", sequenceBatchResourceAssignment);
- Assert.assertNotEquals("Failed to populate Sequence Bulk Mappings size ",
- (sequenceBatchResourceAssignment.size() > 0));
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/assignments/alltype-empty-value-mapping.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/assignments/alltype-empty-value-mapping.json
deleted file mode 100644
index a3d65927b..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/assignments/alltype-empty-value-mapping.json
+++ /dev/null
@@ -1,86 +0,0 @@
-[
- {
- "name": "vnf-id-string",
- "property": {
- "required": true,
- "type": "string"
- },
- "input-param": true,
- "dictionary-name": "vnf-id-string",
- "dictionary-source": "input",
- "version": 0,
- "status": "success",
- "updated-by": "System"
- },
- {
- "name": "vnf-id-integer",
- "property": {
- "required": true,
- "type": "integer"
- },
- "input-param": true,
- "dictionary-name": "vnf-id-integer",
- "dictionary-source": "input",
- "version": 0,
- "status": "success",
- "updated-by": "System"
- },
- {
- "name": "vnf-boolean",
- "property": {
- "required": true,
- "type": "boolean"
- },
- "input-param": true,
- "dictionary-name": "vnf-boolean",
- "dictionary-source": "input",
- "version": 0,
- "status": "success",
- "updated-by": "System"
- },
- {
- "name": "vnf-complex",
- "property": {
- "required": true,
- "type": "dt-complex"
- },
- "input-param": true,
- "dictionary-name": "vnf-complex",
- "dictionary-source": "input",
- "version": 0,
- "status": "success",
- "updated-by": "System"
- },
- {
- "name": "vnf-id-array",
- "property": {
- "required": true,
- "type": "list",
- "entry_schema": {
- "type": "string"
- }
- },
- "input-param": true,
- "dictionary-name": "vnf-id-array",
- "dictionary-source": "input",
- "version": 0,
- "status": "success",
- "updated-by": "System"
- },
- {
- "name": "vnf-array-complex",
- "property": {
- "required": true,
- "type": "list",
- "entry_schema": {
- "type": "dt-complex"
- }
- },
- "input-param": true,
- "dictionary-name": "vnf-array-complex",
- "dictionary-source": "input",
- "version": 0,
- "status": "success",
- "updated-by": "System"
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/assignments/alltype-mapping.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/assignments/alltype-mapping.json
deleted file mode 100644
index 36909da99..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/assignments/alltype-mapping.json
+++ /dev/null
@@ -1,110 +0,0 @@
-[
- {
- "name": "vnf-id-string",
- "property": {
- "required": true,
- "type": "string",
- "value": "123456"
- },
- "input-param": true,
- "dictionary-name": "vnf-id-string",
- "dictionary-source": "input",
- "version": 0,
- "status": "success",
- "updated-by": "System"
- },
- {
- "name": "vnf-id-integer",
- "property": {
- "required": true,
- "type": "integer",
- "value": 123456
- },
- "input-param": true,
- "dictionary-name": "vnf-id-integer",
- "dictionary-source": "input",
- "version": 0,
- "status": "success",
- "updated-by": "System"
- },
- {
- "name": "vnf-boolean",
- "property": {
- "required": true,
- "type": "boolean",
- "value": true
- },
- "input-param": true,
- "dictionary-name": "vnf-boolean",
- "dictionary-source": "input",
- "version": 0,
- "status": "success",
- "updated-by": "System"
- },
- {
- "name": "vnf-complex",
- "property": {
- "required": true,
- "type": "dt-complex",
- "value": {
- "name": "Brinda",
- "location": "Madurai",
- "count": 2
- }
- },
- "input-param": true,
- "dictionary-name": "vnf-complex",
- "dictionary-source": "input",
- "version": 0,
- "status": "success",
- "updated-by": "System"
- },
- {
- "name": "vnf-id-array",
- "property": {
- "required": true,
- "type": "list",
- "entry_schema": {
- "type": "string"
- },
- "value": [
- "A",
- "B",
- "C"
- ]
- },
- "input-param": true,
- "dictionary-name": "vnf-id-array",
- "dictionary-source": "input",
- "version": 0,
- "status": "success",
- "updated-by": "System"
- },
- {
- "name": "vnf-array-complex",
- "property": {
- "required": true,
- "type": "list",
- "entry_schema": {
- "type": "dt-complex"
- },
- "value": [
- {
- "name": "A"
- },
- {
- "name": "B"
- },
- {
- "name": "C"
- }
- ]
- },
- "input-param": true,
- "dictionary-name": "vnf-array-complex",
- "dictionary-source": "input",
- "version": 0,
- "status": "success",
- "updated-by": "System"
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/assignments/empty-dictionary.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/assignments/empty-dictionary.json
deleted file mode 100644
index 0637a088a..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/assignments/empty-dictionary.json
+++ /dev/null
@@ -1 +0,0 @@
-[] \ No newline at end of file
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/array-complex-response.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/array-complex-response.json
deleted file mode 100644
index 2dfe89e29..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/array-complex-response.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "locations": [
- {
- "mdsal-country": "US",
- "mdsal-state": "NJ"
- },
- {
- "mdsal-country": "INDIA",
- "mdsal-state": "TN"
- }
- ]
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/array-complex-v4-assigned-response.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/array-complex-v4-assigned-response.json
deleted file mode 100644
index d7c5546c1..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/array-complex-v4-assigned-response.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "v4-assigned-ip-list": [
- {
- "v4-ip-type": "NMLAN",
- "ipv4-gateway-prefix": "10.66.1.129",
- "v4-ip-prefix": "10.66.1.152",
- "v4-ip-prefix-length": 32,
- "ip-count": 1,
- "v4-ip-source": "EIPAM",
- "client-key": "ADIG_19_vnf_name061rej01"
- }
- ]
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/complex-response.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/complex-response.json
deleted file mode 100644
index 1a36100fd..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/complex-response.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "locations": {
- "mdsal-country": "US",
- "mdsal-state": "NJ"
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/default-pointer.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/default-pointer.json
deleted file mode 100644
index 47edb1881..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/default-pointer.json
+++ /dev/null
@@ -1,166 +0,0 @@
-{
- "vnf-topology-information": {
- "vnf-assignments": {
- "availability-zones": [
- {
- "availability-zone": "frkde-esx-az01"
- }
- ],
- "vnf-vms": [
- {
- "vm-type": "vre",
- "vm-count": 1,
- "vm-networks": [
- {
- "network-role": "ADIGOam.OAM",
- "network-name": "ADIGOAM.OAM",
- "v4-assigned-ip-list": [
- {
- "v4-ip-type": "NMLAN",
- "ipv4-gateway-prefix": "10.66.1.129",
- "v4-ip-prefix": "10.66.1.152",
- "v4-ip-prefix-length": 32,
- "ip-count": 1,
- "v4-ip-source": "EIPAM",
- "client-key": "ADIG_19_vnf_name061rej01"
- }
- ],
- "network-id": "VPEADIG1d77c-1086-41ec-b7f3-94bb30936807"
- },
- {
- "network-role": "Internal-Network",
- "network-name": "VMX-INTTERNAL056",
- "v4-assigned-ip-list": [
- {
- "v4-ip-type": "INTERNAL",
- "v4-ip-prefix": "128.0.0.1",
- "ipv4-prefix-block": "128.0.0.0",
- "v4-ip-prefix-length": 24,
- "v4-ip-source": "OTHER"
- }
- ],
- "network-forwarding": "l2",
- "network-id": "VMX-INT1"
- }
- ],
- "vm-names": [
- {
- "vm-name": "ADIG_19_vnf_name061rej",
- "vm-uuid": "50d2032d-fe15-4e82-94f3-8b73c566a345"
- }
- ]
- },
- {
- "vm-type": "vpfe",
- "vm-count": 1,
- "vm-networks": [
- {
- "network-role": "ADIG_SRIOV_3",
- "network-name": "ADIG_SRIOV_3",
- "multicast-allow": true,
- "broadcast-allow": true,
- "network-id": "VPEADIG1d77c-1086-41ec-b7f3-94bb30936810",
- "vlan-filter": "[4013,4014]",
- "network-macs": [
- {
- "mac-address": "dc:38:e1:69:bf:5f"
- }
- ],
- "vlan-strip": false,
- "unicast-allow": true
- },
- {
- "network-role": "ADIG_SRIOV_4",
- "network-name": "ADIG_SRIOV_4",
- "multicast-allow": true,
- "broadcast-allow": true,
- "network-id": "VPEADIG1d77c-1086-41ec-b7f3-94bb30936811",
- "vlan-filter": "[4013,4014]",
- "network-macs": [
- {
- "mac-address": "dc:38:e1:69:bf:5f"
- }
- ],
- "vlan-strip": false,
- "unicast-allow": true
- },
- {
- "network-role": "ADIG_SRIOV_1",
- "network-name": "ADIG_SRIOV_1",
- "multicast-allow": true,
- "broadcast-allow": true,
- "network-id": "VPEADIG1d77c-1086-41ec-b7f3-94bb30936808",
- "vlan-filter": "[4013,4014]",
- "network-macs": [
- {
- "mac-address": "dc:38:e1:69:bf:5f"
- }
- ],
- "vlan-strip": false,
- "unicast-allow": true
- },
- {
- "network-role": "ADIG_SRIOV_2",
- "network-name": "ADIG_SRIOV_2",
- "multicast-allow": true,
- "broadcast-allow": true,
- "network-id": "VPEADIG1d77c-1086-41ec-b7f3-94bb30936809",
- "vlan-filter": "[4013,4014]",
- "network-macs": [
- {
- "mac-address": "dc:38:e1:69:bf:5f"
- }
- ],
- "vlan-strip": false,
- "unicast-allow": true
- },
- {
- "network-role": "Internal-Network",
- "network-name": "VMX-INTTERNAL056",
- "v4-assigned-ip-list": [
- {
- "v4-ip-type": "INTERNAL",
- "v4-ip-prefix": "128.0.0.16",
- "ipv4-prefix-block": "128.0.0.0",
- "v4-ip-prefix-length": 24,
- "v4-ip-source": "OTHER"
- }
- ],
- "network-forwarding": "l2",
- "network-id": "VMX-INT1"
- }
- ],
- "vm-names": [
- {
- "vm-name": "ADIG_19_vnf_name056fej",
- "vm-uuid": "d2ce6023-a3ab-412e-bc63-360307aac165"
- }
- ]
- }
- ],
- "vnf-status": "Deactivated",
- "vnf-networks": [
- {
- "network-role": "ADIGOam.OAM",
- "network-id": "VPEADIG1d77c-1086-41ec-b7f3-94bb30936807"
- },
- {
- "network-role": "ADIG_SRIOV_3",
- "network-id": "VPEADIG1d77c-1086-41ec-b7f3-94bb30936810"
- },
- {
- "network-role": "ADIG_SRIOV_2",
- "network-id": "VPEADIG1d77c-1086-41ec-b7f3-94bb30936809"
- },
- {
- "network-role": "ADIG_SRIOV_4",
- "network-id": "VPEADIG1d77c-1086-41ec-b7f3-94bb30936811"
- },
- {
- "network-role": "ADIG_SRIOV_1",
- "network-id": "VPEADIG1d77c-1086-41ec-b7f3-94bb30936808"
- }
- ]
- }
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/dt-location.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/dt-location.json
deleted file mode 100644
index 52e0a7967..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/dt-location.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "version": "1.0.0",
- "description": "test Data Type",
- "properties": {
- "country": {
- "required": true,
- "type": "string"
- },
- "state": {
- "required": false,
- "type": "string"
- }
- },
- "derived_from": "tosca.datatypes.Root"
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/dt-v4-assigned-ip-list.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/dt-v4-assigned-ip-list.json
deleted file mode 100644
index bc8f1d2c2..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/dt-v4-assigned-ip-list.json
+++ /dev/null
@@ -1,27 +0,0 @@
-{
- "version": "1.0.0",
- "description": "This is dt-v4-assigned-ip-list Data Type",
- "properties": {
- "v4-ip-type": {
- "required": true,
- "type": "string"
- },
- "ipv4-gateway-prefix": {
- "required": true,
- "type": "string"
- },
- "v4-ip-prefix": {
- "required": true,
- "type": "string"
- },
- "v4-ip-prefix-length": {
- "required": true,
- "type": "string"
- },
- "v4-ip-source": {
- "required": true,
- "type": "string"
- }
- },
- "derived_from": "tosca.datatypes.Root"
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-array-v4iplist.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-array-v4iplist.json
deleted file mode 100644
index 387a5ad2d..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-array-v4iplist.json
+++ /dev/null
@@ -1,76 +0,0 @@
-{
- "v4-ip-prefix": {
- "name": "v4-ip-prefix",
- "property": {
- "type": "string"
- },
- "sources": {
- "mdsal": {
- "type": "source-mdsal",
- "properties": {
- "url-path": "/restconf/config/L3VNF-API:services/service-list/$service-instance-id/service-data/vnf-topology-information/vnf-assignments/vnf-vms/$oam-ipv4-ip-type/vm-networks/$oam-network-role/v4-assigned-ip-list/$oam-vm-type",
- "path": "/v4-assigned-ip-list/0/v4-ip-prefix",
- "input-key-mapping": {
- "service-instance-id": "service-instance-id",
- "oam-network-role": "oam-network-role",
- "oam-ipv4-ip-type": "oam-ipv4-ip-type",
- "oam-vm-type": "oam-vm-type"
- },
- "output-key-mapping": {
- "v4-ip-prefix": "v4-ip-prefix"
- },
- "key-dependencies": [
- "service-instance-id",
- "oam-network-role",
- "oam-ipv4-ip-type",
- "oam-vm-type"
- ]
- }
- }
- }
- },
- "service-instance-id": {
- "name": "service-instance-id",
- "property": {
- "type": "string"
- },
- "sources": {
- "default": {
- "type": "source-input"
- }
- }
- },
- "oam-network-role": {
- "name": "oam-network-role",
- "property": {
- "type": "string"
- },
- "sources": {
- "default": {
- "type": "source-input"
- }
- }
- },
- "oam-ipv4-ip-type": {
- "name": "oam-ipv4-ip-type",
- "property": {
- "type": "string"
- },
- "sources": {
- "default": {
- "type": "source-input"
- }
- }
- },
- "oam-vm-type": {
- "name": "oam-vm-type",
- "property": {
- "type": "string"
- },
- "sources": {
- "default": {
- "type": "source-input"
- }
- }
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-array.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-array.json
deleted file mode 100644
index 290a15752..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-array.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- "locations": {
- "name": "locations",
- "property": {
- "type": "list",
- "entry_schema": {
- "type": "dt-location"
- }
- },
- "sources": {
- "mdsal": {
- "type": "source-mdsal",
- "properties": {
- "url-path": "/restconf/config/L3VNF-API/services/service-list/$profile_name/12345",
- "path": "/locations",
- "input-key-mapping": {
- "profile_name": "profile_name"
- },
- "output-key-mapping": {
- "mdsal-country": "country",
- "mdsal-state": "state"
- },
- "key-dependencies": [
- "profile_name"
- ]
- }
- }
- }
- },
- "profile_name": {
- "name": "profile_name",
- "property": {
- "type": "string"
- },
- "sources": {
- "default": {
- "type": "source-input"
- }
- }
- }
-}
-
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-complex.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-complex.json
deleted file mode 100644
index f5a7d7ef6..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-complex.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "location": {
- "name": "location",
- "property": {
- "type": "dt-location"
- },
- "sources": {
- "mdsal": {
- "type": "source-mdsal",
- "properties": {
- "url-path": "/restconf/config/L3VNF-API/services/service-list/$profile_name/12345",
- "path": "/locations",
- "input-key-mapping": {
- "profile_name": "profile_name"
- },
- "output-key-mapping": {
- "mdsal-country": "country",
- "mdsal-state": "state"
- },
- "key-dependencies": [
- "profile_name"
- ]
- }
- }
- }
- },
- "profile_name": {
- "name": "profile_name",
- "property": {
- "type": "string"
- },
- "sources": {
- "default": {
- "type": "source-input"
- }
- }
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-simple.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-simple.json
deleted file mode 100644
index db7ee7eed..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/mdsal-simple.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "country": {
- "name": "country",
- "property": {
- "type": "string"
- },
- "sources": {
- "mdsal": {
- "type": "source-mdsal",
- "properties": {
- "url-path": "/restconf/config/L3VNF-API/services/service-list/$profile_name/12345",
- "path": "/locations",
- "input-key-mapping": {
- "profile_name": "profile_name"
- },
- "output-key-mapping": {
- "country": "country"
- },
- "key-dependencies": [
- "profile_name"
- ]
- }
- }
- }
- },
- "profile_name": {
- "name": "profile_name",
- "property": {
- "type": "string"
- },
- "sources": {
- "input": {
- "type": "source-input"
- }
- }
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-array.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-array.json
deleted file mode 100644
index 2b5865326..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-array.json
+++ /dev/null
@@ -1,15 +0,0 @@
-[
- {
- "name": "locations",
- "input-param": true,
- "property": {
- "type": "list",
- "entry_schema": {
- "type": "dt-location"
- }
- },
- "dictionary-name": "locations",
- "dictionary-source": "mdsal",
- "dependencies": []
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-complex-simple.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-complex-simple.json
deleted file mode 100644
index 15881cfd0..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-complex-simple.json
+++ /dev/null
@@ -1,12 +0,0 @@
-[
- {
- "name": "v4-ip-prefix",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "v4-ip-prefix",
- "dictionary-source": "mdsal",
- "dependencies": []
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-complex.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-complex.json
deleted file mode 100644
index e42bd9431..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-complex.json
+++ /dev/null
@@ -1,12 +0,0 @@
-[
- {
- "name": "location",
- "input-param": true,
- "property": {
- "type": "dt-location"
- },
- "dictionary-name": "location",
- "dictionary-source": "mdsal",
- "dependencies": []
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-simple.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-simple.json
deleted file mode 100644
index 6385e6a8b..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/resource-assignments-simple.json
+++ /dev/null
@@ -1,12 +0,0 @@
-[
- {
- "name": "country",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "country",
- "dictionary-source": "mdsal",
- "dependencies": []
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/simple-response.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/simple-response.json
deleted file mode 100644
index 8c2bb898f..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/Mdsal/simple-response.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "locations": "US"
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/db-array.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/db-array.json
deleted file mode 100644
index bab783544..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/db-array.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "locations": {
- "name": "locations",
- "property": {
- "type": "list",
- "entry_schema": {
- "type": "dt-location"
- }
- },
- "sources": {
- "db": {
- "type": "source-sdnctl-db",
- "properties": {
- "query": "SELECT db-country, db-state FROM DEVICE_PROFILE WHERE profile_name = :profile_name",
- "input-key-mapping": {
- "profile_name": "profile_name"
- },
- "output-key-mapping": {
- "db-country": "country",
- "db-state": "state"
- },
- "key-dependencies": [
- "profile_name"
- ]
- }
- }
- }
- },
- "profile_name": {
- "name": "profile_name",
- "property": {
- "type": "string"
- },
- "sources": {
- "input": {
- "type": "source-input"
- }
- }
- }
-} \ No newline at end of file
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/db-complex.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/db-complex.json
deleted file mode 100644
index 7310500e3..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/db-complex.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "location": {
- "name": "location",
- "property": {
- "type": "dt-location"
- },
- "sources": {
- "db": {
- "type": "source-sdnctl-db",
- "properties": {
- "query": "SELECT db-country, db-state FROM DEVICE_PROFILE WHERE profile_name = :profile_name",
- "input-key-mapping": {
- "profile_name": "profile_name"
- },
- "output-key-mapping": {
- "db-country": "country",
- "db-state": "state"
- },
- "key-dependencies": [
- "profile_name"
- ]
- }
- }
- }
- },
- "profile_name": {
- "name": "profile_name",
- "property": {
- "type": "string"
- },
- "sources": {
- "input": {
- "type": "source-input"
- }
- }
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/db-simple.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/db-simple.json
deleted file mode 100644
index 86d29c751..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/db-simple.json
+++ /dev/null
@@ -1,36 +0,0 @@
-{
- "country": {
- "name": "country",
- "property": {
- "type": "string"
- },
- "sources": {
- "db": {
- "type": "source-sdnctl-db",
- "properties": {
- "query": "SELECT country FROM DEVICE_PROFILE WHERE profile_name = :profile_name",
- "input-key-mapping": {
- "profile_name": "profile_name"
- },
- "output-key-mapping": {
- "country": "country"
- },
- "key-dependencies": [
- "profile_name"
- ]
- }
- }
- }
- },
- "profile_name": {
- "name": "profile_name",
- "property": {
- "type": "string"
- },
- "sources": {
- "input": {
- "type": "source-input"
- }
- }
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/dt-location.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/dt-location.json
deleted file mode 100644
index 52e0a7967..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/dt-location.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "version": "1.0.0",
- "description": "test Data Type",
- "properties": {
- "country": {
- "required": true,
- "type": "string"
- },
- "state": {
- "required": false,
- "type": "string"
- }
- },
- "derived_from": "tosca.datatypes.Root"
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/resource-assignments-array.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/resource-assignments-array.json
deleted file mode 100644
index c82f9addc..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/resource-assignments-array.json
+++ /dev/null
@@ -1,15 +0,0 @@
-[
- {
- "name": "locations",
- "input-param": true,
- "property": {
- "type": "list",
- "entry_schema": {
- "type": "dt-location"
- }
- },
- "dictionary-name": "locations",
- "dictionary-source": "db",
- "dependencies": []
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/resource-assignments-complex.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/resource-assignments-complex.json
deleted file mode 100644
index 4cca99bde..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/resource-assignments-complex.json
+++ /dev/null
@@ -1,12 +0,0 @@
-[
- {
- "name": "location",
- "input-param": true,
- "property": {
- "type": "dt-location"
- },
- "dictionary-name": "location",
- "dictionary-source": "db",
- "dependencies": []
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/resource-assignments-simple.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/resource-assignments-simple.json
deleted file mode 100644
index 02ce68be4..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/db/resource-assignments-simple.json
+++ /dev/null
@@ -1,12 +0,0 @@
-[
- {
- "name": "country",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "country",
- "dictionary-source": "db",
- "dependencies": []
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/default/default-simple.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/default/default-simple.json
deleted file mode 100644
index fca0dde83..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/default/default-simple.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- "country": {
- "name": "country",
- "property": {
- "type": "string"
- },
- "sources": {
- "default": {
- "type": "source-default"
- }
- }
- },
- "port": {
- "name": "port",
- "property": {
- "type": "integer"
- },
- "sources": {
- "default": {
- "type": "source-default"
- }
- }
- },
- "voip-enabled": {
- "name": "voip-enabled",
- "property": {
- "type": "boolean"
- },
- "sources": {
- "default": {
- "type": "source-default"
- }
- }
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/default/resource-assignments-simple.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/default/resource-assignments-simple.json
deleted file mode 100644
index fc92710a5..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/default/resource-assignments-simple.json
+++ /dev/null
@@ -1,35 +0,0 @@
-[
- {
- "name": "country",
- "input-param": true,
- "property": {
- "type": "string",
- "default": "US"
- },
- "dictionary-name": "country",
- "dictionary-source": "default",
- "dependencies": []
- },
- {
- "name": "port",
- "input-param": true,
- "property": {
- "type": "integer",
- "default": 830
- },
- "dictionary-name": "port",
- "dictionary-source": "default",
- "dependencies": []
- },
- {
- "name": "voip-enabled",
- "input-param": true,
- "property": {
- "type": "boolean",
- "default": true
- },
- "dictionary-name": "voip-enabled",
- "dictionary-source": "default",
- "dependencies": []
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/dependency.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/dependency.json
deleted file mode 100644
index e08539c0d..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/dependency.json
+++ /dev/null
@@ -1,110 +0,0 @@
-[
- {
- "name": "vnf-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "vnf-id",
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "service-instance-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "service-instance-id",
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "bundle-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "bundle-id",
- "dictionary-source": "mdsal",
- "dependencies": [
- "vnf-id"
- ]
- },
- {
- "name": "bundle-ip",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "bundle-ip",
- "dictionary-source": "mdsal",
- "dependencies": [
- "vnf-id"
- ]
- },
- {
- "name": "bundle-mac",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "bundle-mac",
- "dictionary-source": "mdsal",
- "dependencies": [
- "vnf-id",
- "bundle-id"
- ]
- },
- {
- "name": "managed-ip",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "managed-ip",
- "dictionary-source": "mdsal",
- "dependencies": [
- "loopback-ip"
- ]
- },
- {
- "name": "vnf-name",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "vnf-name",
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "managed-ip1",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "managed-ip1",
- "dictionary-source": "mdsal",
- "dependencies": [
- "loopback-ip"
- ]
- },
- {
- "name": "loopback-ip",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "loopback-ip",
- "dictionary-source": "db",
- "dependencies": [
- "bundle-mac"
- ]
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/dt-location.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/dt-location.json
deleted file mode 100644
index 52e0a7967..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/dt-location.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "version": "1.0.0",
- "description": "test Data Type",
- "properties": {
- "country": {
- "required": true,
- "type": "string"
- },
- "state": {
- "required": false,
- "type": "string"
- }
- },
- "derived_from": "tosca.datatypes.Root"
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/input-complex.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/input-complex.json
deleted file mode 100644
index 7eabe440a..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/input-complex.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
- "location": {
- "name": "location",
- "property": {
- "type": "dt-location"
- },
- "sources": {
- "default": {
- "type": "source-input"
- }
- }
- },
- "profile_name": {
- "name": "profile_name",
- "property": {
- "type": "string"
- },
- "sources": {
- "default": {
- "type": "source-input"
- }
- }
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/input-simple.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/input-simple.json
deleted file mode 100644
index 7b663f36a..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/input-simple.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- "country": {
- "name": "country",
- "property": {
- "type": "string"
- },
- "sources": {
- "default": {
- "type": "source-input"
- }
- }
- },
- "port": {
- "name": "port",
- "property": {
- "type": "integer"
- },
- "sources": {
- "default": {
- "type": "source-input"
- }
- }
- },
- "voip-enabled": {
- "name": "voip-enabled",
- "property": {
- "type": "boolean"
- },
- "sources": {
- "default": {
- "type": "source-input"
- }
- }
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/resource-assignments-complex.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/resource-assignments-complex.json
deleted file mode 100644
index 9e17841b4..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/resource-assignments-complex.json
+++ /dev/null
@@ -1,13 +0,0 @@
-[
- {
- "name": "location",
- "input-param": true,
- "property": {
- "type": "dt-location",
- "required": true
- },
- "dictionary-name": "location",
- "dictionary-source": "input",
- "dependencies": []
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/resource-assignments-simple.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/resource-assignments-simple.json
deleted file mode 100644
index e3b2bcc06..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/resource-assignments-simple.json
+++ /dev/null
@@ -1,32 +0,0 @@
-[
- {
- "name": "country",
- "input-param": true,
- "property": {
- "type": "string",
- "default": "US"
- },
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "port",
- "input-param": true,
- "property": {
- "type": "integer",
- "default": 830
- },
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "voip-enabled",
- "input-param": true,
- "property": {
- "type": "boolean",
- "default": true
- },
- "dictionary-source": "input",
- "dependencies": []
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/sample-location.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/sample-location.json
deleted file mode 100644
index 2f3f1c102..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/mapping/input/sample-location.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "country": "US",
- "state": "NJ"
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/input/input.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/input/input.json
deleted file mode 100644
index cd6fac128..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/input/input.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "api-ver": "2.00",
- "originator-id": "MSO",
- "request-id": "123456",
- "service-instance-id": "ibcx0001vm001",
- "service-type": "AVPN",
- "vnf-type": "vUSP - vDBE-IPX HUB",
- "vnf-id": 123456,
- "service-template-name": "VRR-baseconfiguration",
- "service-template-version": "1.0.0",
- "action-name": "resource-assignment-action",
- "group-name": "sample group name",
- "bundle-id": "sample bundle id",
- "bundle-mac": [
- "Sample bundle mac",
- "Sample bundle mac"
- ]
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/input/inputValidateTest.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/input/inputValidateTest.json
deleted file mode 100644
index 354ca577b..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/input/inputValidateTest.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "api-ver": "2.00",
- "originator-id": "MSO",
- "request-id": "123456",
- "service-instance-id": "ibcx0001vm001",
- "service-type": "AVPN",
- "vnf-type": "vUSP - vDBE-IPX HUB",
- "vnf-id": "",
- "service-template-name": "VRR-baseconfiguration",
- "service-template-version": "1.0.0",
- "action-name": "resource-assignment-action",
- "group-name": "sample group name",
- "bundle-id": "sample bundle id",
- "bundle-mac": [
- "Sample bundle mac",
- "Sample bundle mac"
- ]
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/resource_assignment.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/resource_assignment.json
deleted file mode 100644
index cbea6a82c..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/resource_assignment.json
+++ /dev/null
@@ -1,407 +0,0 @@
-{
- "metadata": {
- "author": "ks220y@att.com",
- "service-template-name": "VRR-baseconfiguration",
- "service-template-version": "1.0.0",
- "release": "1802",
- "service-type": "AVPN",
- "vnf-type": "VRR"
- },
- "topology_template": {
- "inputs": {
- "request-id": {
- "required": true,
- "type": "string"
- },
- "service-instance-id": {
- "required": true,
- "type": "string"
- },
- "action-name": {
- "required": true,
- "type": "string"
- },
- "scope-type": {
- "required": true,
- "type": "string"
- },
- "hostname": {
- "required": true,
- "type": "string"
- }
- },
- "node_templates": {
- "base-config-template": {
- "type": "artifact-config-template",
- "properties": {
- "action-names": [
- "resource-assignment-action"
- ]
- },
- "capabilities": {
- "content": {
- "properties": {
- "content": "db://base-config-template"
- }
- },
- "mapping": {
- "properties": {
- "mapping": [
- {
- "name": "vnf-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "vnf-id",
- "dictionary-source": "input"
- },
- {
- "name": "group-name",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "group-name",
- "dictionary-source": "input"
- }
- ]
- }
- }
- }
- },
- "resource-assignment-action": {
- "type": "dg-resource-assignment",
- "interfaces": {
- "CONFIG": {
- "operations": {
- "ResourceAssignment": {
-
- }
- }
- }
- },
- "capabilities": {
- "dg-node": {
-
- }
- },
- "requirements": {
- "component-dependency": {
- "capability": "component-node",
- "node": "resource-assignment",
- "relationship": "tosca.relationships.DependsOn"
- }
- }
- },
- "licence-template": {
- "type": "artifact-config-template",
- "properties": {
- "action-names": [
- "resource-assignment-action"
- ]
- },
- "capabilities": {
- "content": {
- "properties": {
- "content": "db://licence-template"
- }
- },
- "mapping": {
- "properties": {
- "mapping": [
- {
- "name": "bundle-id",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "bundle-id",
- "dictionary-source": "input"
- },
- {
- "name": "bundle-mac",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "bundle-mac",
- "dictionary-source": "input"
- }
- ]
- }
- }
- }
- },
- "resource-assignment": {
- "type": "component-resource-assignment",
- "interfaces": {
- "org-onap-ccsdk-features-assignment-service-ConfigAssignmentNode": {
- "operations": {
- "process": {
- "inputs": {
- "action-name": "{ \"get_input\" : \"action-name\" }",
- "resource-type": "vnf-type",
- "template-names": [
- "base-config-template",
- "licence-template"
- ],
- "request-id": "{ \"get_input\" : \"request-id\" }",
- "resource-id": "{ \"get_input\" : \"vnf-id\" }"
- },
- "outputs": {
- "resource-assignment-params": "",
- "status": ""
- }
- }
- }
- }
- },
- "capabilities": {
- "component-node": {
-
- }
- }
- }
- }
- },
- "node_types": {
- "dg-resource-assignment": {
- "description": "This is Resource Assignment Directed Graph",
- "version": "1.0.0",
- "properties": {
- "mode": {
- "required": false,
- "type": "string",
- "default": "sync"
- },
- "version": {
- "required": false,
- "type": "string",
- "default": "LATEST"
- },
- "is-start-flow": {
- "required": false,
- "type": "boolean",
- "default": "false"
- }
- },
- "capabilities": {
- "dg-node": {
- "type": "tosca.capabilities.Node"
- },
- "content": {
- "type": "tosca.capabilities.Content",
- "properties": {
- "type": {
- "required": false,
- "type": "string",
- "default": "json"
- },
- "content": {
- "required": true,
- "type": "string"
- }
- }
- }
- },
- "requirements": {
- "component-dependency": {
- "capability": "component-node",
- "node": "component-resource-assignment",
- "relationship": "tosca.relationships.DependsOn"
- }
- },
- "interfaces": {
- "CONFIG": {
- "operations": {
- "ResourceAssignment": {
- "inputs": {
- "params": {
- "required": false,
- "type": "list",
- "entry_schema": {
- "type": "datatype-property"
- }
- }
- }
- }
- }
- }
- },
- "derived_from": "tosca.nodes.DG"
- },
- "component-resource-assignment": {
- "description": "This is Resource Assignment Component API",
- "version": "1.0.0",
- "capabilities": {
- "component-node": {
- "type": "tosca.capabilities.Node"
- }
- },
- "interfaces": {
- "org-onap-ccsdk-features-assignment-service-ConfigAssignmentNode": {
- "operations": {
- "process": {
- "inputs": {
- "action-name": {
- "description": "Action Name to get from Database, Either (message & mask-info ) or ( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority",
- "required": false,
- "type": "string"
- },
- "handler-name": {
- "description": "Name of the Artifact Node Template, to get the template Content. If template-content is present, then content wont be reterived from the Artifact Node Template.",
- "required": true,
- "type": "string"
- },
- "resource-type": {
- "required": false,
- "type": "string"
- },
- "template-names": {
- "description": "Name of the Artifact Node Templates, to get the template Content.",
- "required": true,
- "type": "list",
- "entry_schema": {
- "type": "string"
- }
- },
- "request-id": {
- "description": "Request Id used to store the generated configuration, in the database along with the template-name",
- "required": true,
- "type": "string"
- },
- "resource-id": {
- "description": "Id used to pull the data content from the data base. Either template-data or resource-id should be present",
- "required": true,
- "type": "string"
- }
- },
- "outputs": {
- "resource-assignment-params": {
- "required": true,
- "type": "string"
- },
- "status": {
- "required": true,
- "type": "string"
- }
- }
- }
- }
- }
- },
- "derived_from": "tosca.nodes.Component"
- },
- "artifact-config-template": {
- "description": "This is Configuration Velocity Template",
- "version": "1.0.0",
- "properties": {
- "action-names": {
- "required": true,
- "type": "list",
- "entry_schema": {
- "type": "string"
- }
- },
- "content": {
- "required": false,
- "type": "string"
- },
- "mapping": {
- "required": false,
- "type": "list",
- "entry_schema": {
- "type": "datatype-resource-assignment"
- }
- }
- },
- "capabilities": {
- "content": {
- "type": "tosca.capabilities.Content",
- "properties": {
- "content": {
- "required": true,
- "type": "string"
- }
- }
- },
- "mapping": {
- "type": "tosca.capabilities.Mapping",
- "properties": {
- "mapping": {
- "required": false,
- "type": "list",
- "entry_schema": {
- "type": "datatype-resource-assignment"
- }
- }
- }
- }
- },
- "derived_from": "tosca.nodes.Artifact"
- }
- },
- "data_types": {
- "datatype-resource-assignment": {
- "version": "1.0.0",
- "description": "This is Resource Assignment Data Type",
- "properties": {
- "property": {
- "required": true,
- "type": "datatype-property"
- },
- "input-param": {
- "required": true,
- "type": "boolean"
- },
- "dictionary-name": {
- "required": false,
- "type": "string"
- },
- "dictionary-source": {
- "required": false,
- "type": "string"
- },
- "dependencies": {
- "required": true,
- "type": "list",
- "entry_schema": {
- "type": "string"
- }
- }
- },
- "derived_from": "tosca.datatypes.Root"
- },
- "datatype-property": {
- "version": "1.0.0",
- "description": "This is Entry point Input Data Type, which is dynamic datatype, The parameter names will be populated during the Design time for each inputs",
- "properties": {
- "type": {
- "required": true,
- "type": "string"
- },
- "description": {
- "required": false,
- "type": "string"
- },
- "required": {
- "required": false,
- "type": "boolean"
- },
- "default": {
- "required": false,
- "type": "string"
- },
- "entry_schema": {
- "required": false,
- "type": "string"
- }
- },
- "derived_from": "tosca.datatypes.Root"
- }
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/resource_assignment/resource_assignment.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/resource_assignment/resource_assignment.json
deleted file mode 100644
index 4cbb8fa25..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/resource_assignment/resource_assignment.json
+++ /dev/null
@@ -1,417 +0,0 @@
-{
- "metadata": {
- "author": "ks220y@att.com",
- "service-template-name": "VRR-baseconfiguration",
- "service-template-version": "1.0.0",
- "release": "1802",
- "service-type": "AVPN",
- "vnf-type": "VRR"
- },
- "topology_template": {
- "inputs": {
- "request-id": {
- "required": true,
- "type": "string"
- },
- "service-instance-id": {
- "required": true,
- "type": "string"
- },
- "action-name": {
- "required": true,
- "type": "string"
- },
- "scope-type": {
- "required": true,
- "type": "string"
- },
- "hostname": {
- "required": true,
- "type": "string"
- }
- },
- "node_templates": {
- "base-config-template": {
- "type": "artifact-config-template",
- "properties": {
- "action-names": [
- "resource-assignment-action"
- ]
- },
- "capabilities": {
- "content": {
- "properties": {
- "content": "db://base-config-template"
- }
- },
- "mapping": {
- "properties": {
- "mapping": [
- {
- "name": "vnf-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "vnf-id",
- "dictionary-source": "input"
- },
- {
- "name": "group-name",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "group-name",
- "dictionary-source": "input"
- }
- ]
- }
- }
- }
- },
- "resource-assignment-action": {
- "type": "dg-resource-assignment",
- "interfaces": {
- "CONFIG": {
- "operations": {
- "ResourceAssignment": {
-
- }
- }
- }
- },
- "capabilities": {
- "dg-node": {
-
- }
- },
- "requirements": {
- "component-dependency": {
- "capability": "component-node",
- "node": "resource-assignment",
- "relationship": "tosca.relationships.DependsOn"
- }
- }
- },
- "licence-template": {
- "type": "artifact-config-template",
- "properties": {
- "action-names": [
- "resource-assignment-action"
- ]
- },
- "capabilities": {
- "content": {
- "properties": {
- "content": "db://licence-template"
- }
- },
- "mapping": {
- "properties": {
- "mapping": [
- {
- "name": "bundle-id",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "bundle-id",
- "dictionary-source": "input"
- },
- {
- "name": "bundle-mac",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "bundle-mac",
- "dictionary-source": "input"
- }
- ]
- }
- }
- }
- },
- "resource-assignment": {
- "type": "component-resource-assignment",
- "interfaces": {
- "org-onap-ccsdk-features-assignment-service-ConfigAssignmentNode": {
- "operations": {
- "process": {
- "inputs": {
- "service-template-name": "VRR-baseconfiguration",
- "service-template-version": "1.0.0",
- "action-name": "{ \"get_input\" : \"action-name\" }",
- "resource-type": "vnf-type",
- "template-names": [
- "base-config-template",
- "licence-template"
- ],
- "request-id": "{ \"get_input\" : \"request-id\" }",
- "resource-id": "{ \"get_input\" : \"vnf-id\" }"
- },
- "outputs": {
- "resource-assignment-params": "",
- "status": ""
- }
- }
- }
- }
- },
- "capabilities": {
- "component-node": {
-
- }
- }
- }
- }
- },
- "node_types": {
- "dg-resource-assignment": {
- "description": "This is Resource Assignment Directed Graph",
- "version": "1.0.0",
- "properties": {
- "mode": {
- "required": false,
- "type": "string",
- "default": "sync"
- },
- "version": {
- "required": false,
- "type": "string",
- "default": "LATEST"
- },
- "is-start-flow": {
- "required": false,
- "type": "boolean",
- "default": "false"
- }
- },
- "capabilities": {
- "dg-node": {
- "type": "tosca.capabilities.Node"
- },
- "content": {
- "type": "tosca.capabilities.Content",
- "properties": {
- "type": {
- "required": false,
- "type": "string",
- "default": "json"
- },
- "content": {
- "required": true,
- "type": "string"
- }
- }
- }
- },
- "requirements": {
- "component-dependency": {
- "capability": "component-node",
- "node": "component-resource-assignment",
- "relationship": "tosca.relationships.DependsOn"
- }
- },
- "interfaces": {
- "CONFIG": {
- "operations": {
- "ResourceAssignment": {
- "inputs": {
- "params": {
- "required": false,
- "type": "list",
- "entry_schema": {
- "type": "datatype-property"
- }
- }
- }
- }
- }
- }
- },
- "derived_from": "tosca.nodes.DG"
- },
- "component-resource-assignment": {
- "description": "This is Resource Assignment Component API",
- "version": "1.0.0",
- "capabilities": {
- "component-node": {
- "type": "tosca.capabilities.Node"
- }
- },
- "interfaces": {
- "org-onap-ccsdk-features-assignment-service-ConfigAssignmentNode": {
- "operations": {
- "process": {
- "inputs": {
- "action-name": {
- "description": "Action Name to get from Database, Either (message & mask-info ) or ( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority",
- "required": false,
- "type": "string"
- },
- "handler-name": {
- "description": "Name of the Artifact Node Template, to get the template Content. If template-content is present, then content wont be reterived from the Artifact Node Template.",
- "required": true,
- "type": "string"
- },
- "resource-type": {
- "required": false,
- "type": "string"
- },
- "service-template-name": {
- "required": true,
- "type": "string"
- },
- "service-template-version": {
- "required": true,
- "type": "string"
- },
- "template-names": {
- "description": "Name of the Artifact Node Templates, to get the template Content.",
- "required": true,
- "type": "list",
- "entry_schema": {
- "type": "string"
- }
- },
- "request-id": {
- "description": "Request Id used to store the generated configuration, in the database along with the template-name",
- "required": true,
- "type": "string"
- },
- "resource-id": {
- "description": "Id used to pull the data content from the data base. Either template-data or resource-id should be present",
- "required": true,
- "type": "string"
- }
- },
- "outputs": {
- "resource-assignment-params": {
- "required": true,
- "type": "string"
- },
- "status": {
- "required": true,
- "type": "string"
- }
- }
- }
- }
- }
- },
- "derived_from": "tosca.nodes.Component"
- },
- "artifact-config-template": {
- "description": "This is Configuration Velocity Template",
- "version": "1.0.0",
- "properties": {
- "action-names": {
- "required": true,
- "type": "list",
- "entry_schema": {
- "type": "string"
- }
- },
- "content": {
- "required": false,
- "type": "string"
- },
- "mapping": {
- "required": false,
- "type": "list",
- "entry_schema": {
- "type": "datatype-resource-assignment"
- }
- }
- },
- "capabilities": {
- "content": {
- "type": "tosca.capabilities.Content",
- "properties": {
- "content": {
- "required": true,
- "type": "string"
- }
- }
- },
- "mapping": {
- "type": "tosca.capabilities.Mapping",
- "properties": {
- "mapping": {
- "required": false,
- "type": "list",
- "entry_schema": {
- "type": "datatype-resource-assignment"
- }
- }
- }
- }
- },
- "derived_from": "tosca.nodes.Artifact"
- }
- },
- "data_types": {
- "datatype-resource-assignment": {
- "version": "1.0.0",
- "description": "This is Resource Assignment Data Type",
- "properties": {
- "property": {
- "required": true,
- "type": "datatype-property"
- },
- "input-param": {
- "required": true,
- "type": "boolean"
- },
- "dictionary-name": {
- "required": false,
- "type": "string"
- },
- "dictionary-source": {
- "required": false,
- "type": "string"
- },
- "dependencies": {
- "required": true,
- "type": "list",
- "entry_schema": {
- "type": "string"
- }
- }
- },
- "derived_from": "tosca.datatypes.Root"
- },
- "datatype-property": {
- "version": "1.0.0",
- "description": "This is Entry point Input Data Type, which is dynamic datatype, The parameter names will be populated during the Design time for each inputs",
- "properties": {
- "type": {
- "required": true,
- "type": "string"
- },
- "description": {
- "required": false,
- "type": "string"
- },
- "required": {
- "required": false,
- "type": "boolean"
- },
- "default": {
- "required": false,
- "type": "string"
- },
- "entry_schema": {
- "required": false,
- "type": "string"
- }
- },
- "derived_from": "tosca.datatypes.Root"
- }
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/resource_assignment/velocity/base-config-template.vtl b/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/resource_assignment/velocity/base-config-template.vtl
deleted file mode 100644
index 92dba1024..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/resource_assignment/velocity/base-config-template.vtl
+++ /dev/null
@@ -1,40 +0,0 @@
- <config>
- <configuration>
- <groups>
- <name>${group-name}</name>
- <routing-instances>
- <instance>
- <name>&lt;*&gt;</name>
- <protocols>
- <pim>
- <dense-groups>
- <dynamic-reject />
- <pim-dense-group-type>
- <name>224.0.1.40/32</name>
- </pim-dense-group-type>
- <pim-dense-group-type>
- <name>224.0.1.39/32</name>
- </pim-dense-group-type>
- <pim-dense-group-type>
- <name>224.0.0.0/4</name>
- <reject />
- </pim-dense-group-type>
- </dense-groups>
- <rp>
- <auto-rp>
- <discovery />
- </auto-rp>
- </rp>
- <interface>
- <name>&lt;*&gt;</name>
- <disable />
- <priority>1000</priority>
- </interface>
- <reset-tracking-bit />
- </pim>
- </protocols>
- </instance>
- </routing-instances>
- </groups>
- </configuration>
- </config> \ No newline at end of file
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/dict.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/dict.json
deleted file mode 100644
index f7b09d5af..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/dict.json
+++ /dev/null
@@ -1,172 +0,0 @@
-[
- {
- "name": "adiod-unicast-route-reflectors",
- "resourcePath": "vnf/protocol/adiod-unicast-route-reflectors",
- "resourceType": "ATT",
- "dataType": "list",
- "entrySchema": "dt-adiod-unicast-route-reflectors",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"adiod-unicast-route-reflectors\",\r\n \"description\" : \"dd\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"vnf/protocol/adiod-unicast-route-reflectors\",\r\n \"data-type\" : \"list\",\r\n \"entry-schema\" : \"dt-adiod-unicast-route-reflectors\",\r\n \"source\" : {\r\n \"input\" : { },\r\n \"network-resource-discovery\" : {\r\n \"input-key-mapping\" : {\r\n \"complex-code-char8\" : \"complex-code-char8\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"adiod-unicast-route-reflectors\" : \"adiod-unicast-route-reflectors\"\r\n }\r\n }\r\n },\r\n \"candidate-dependency\" : {\r\n \"network-resource-discovery\" : {\r\n \"names\" : [ \"complex-code-char8\" ]\r\n }\r\n }\r\n}",
- "description": "dd",
- "tags": "ADIOD3",
- "creationDate": "2017-11-16T17:31:38.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "adiod-vpnv4-route-reflectors",
- "resourcePath": "vnf/servers/adiod-vpnv4-route-reflectors",
- "resourceType": "ATT",
- "dataType": "list",
- "entrySchema": "dt-adiod-vpnv4-route-reflectors",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"adiod-vpnv4-route-reflectors\",\r\n \"description\" : \"To be provided\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"vnf/servers/adiod-vpnv4-route-reflectors\",\r\n \"data-type\" : \"list\",\r\n \"entry-schema\" : \"dt-adiod-vpnv4-route-reflectors\",\r\n \"source\" : {\r\n \"input\" : { }\r\n }\r\n}",
- "description": "To be provided",
- "tags": "ADIOD3",
- "creationDate": "2017-11-16T17:31:38.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "asn-region",
- "resourcePath": "vnf/protocols/asn-region",
- "resourceType": "ATT",
- "dataType": "string",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"asn-region\",\r\n \"description\" : \"To be provided\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"vnf/protocols/asn-region\",\r\n \"data-type\" : \"string\",\r\n \"source\" : {\r\n \"input\" : { },\r\n \"network-resource-discovery\" : {\r\n \"input-key-mapping\" : {\r\n \"hostname\" : \"hostname\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"asn-region\" : \"asn-region\"\r\n }\r\n }\r\n },\r\n \"candidate-dependency\" : {\r\n \"network-resource-discovery\" : {\r\n \"names\" : [ \"hostname\" ]\r\n }\r\n }\r\n}",
- "description": "To be provided",
- "tags": "ADIOD3",
- "creationDate": "2017-11-17T11:31:29.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "bundle-id",
- "resourcePath": "vnf/interface/bundle-id",
- "resourceType": "ATT",
- "dataType": "string",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"bundle-id\",\r\n \"description\" : \"To be provided\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"vnf/interface/bundle-id\",\r\n \"data-type\" : \"string\",\r\n \"source\" : {\r\n \"input\" : { },\r\n \"network-resource-discovery\" : {\r\n \"input-key-mapping\" : {\r\n \"hostname\" : \"hostname\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"bundle-id\" : \"bundle-id\"\r\n }\r\n }\r\n },\r\n \"candidate-dependency\" : {\r\n \"network-resource-discovery\" : {\r\n \"names\" : [ \"hostname\" ]\r\n }\r\n }\r\n}",
- "description": "To be provided",
- "tags": "ADIOD3",
- "creationDate": "2017-11-16T17:31:39.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "lo0-local-ipv4-address",
- "resourcePath": "vnf/interface/lo0-local-ipv4",
- "resourceType": "ATT",
- "dataType": "ipv4-address",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"lo0-local-ipv4-address\",\r\n \"description\" : \"To be provided\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"vnf/interface/lo0-local-ipv4\",\r\n \"data-type\" : \"string\",\r\n \"source\" : {\r\n \"input\" : { },\r\n \"network-resource-discovery\" : {\r\n \"input-key-mapping\" : {\r\n \"hostname\" : \"hostname\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"lo0-local-ipv4\" : \"lo0-local-ipv4\"\r\n }\r\n }\r\n },\r\n \"candidate-dependency\" : {\r\n \"network-resource-discovery\" : {\r\n \"names\" : [ \"hostname\" ]\r\n }\r\n }\r\n}",
- "description": "To be provided",
- "tags": "ADIOD3",
- "creationDate": "2017-11-16T17:31:40.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "lo10-local-ipv4-address",
- "resourcePath": "vnf/interface/lo10-local-ipv4",
- "resourceType": "ATT",
- "dataType": "ipv4-address",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"lo10-local-ipv4-address\",\r\n \"description\" : \"To be provided\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"vnf/interface/lo10-local-ipv4\",\r\n \"data-type\" : \"string\",\r\n \"source\" : {\r\n \"input\" : { },\r\n \"network-resource-discovery\" : {\r\n \"input-key-mapping\" : {\r\n \"hostname\" : \"hostname\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"lo10-local-ipv4\" : \"lo10-local-ipv4\"\r\n }\r\n }\r\n },\r\n \"candidate-dependency\" : {\r\n \"network-resource-discovery\" : {\r\n \"names\" : [ \"hostname\" ]\r\n }\r\n }\r\n}",
- "description": "To be provided",
- "tags": "ADIOD3",
- "creationDate": "2017-11-16T17:31:41.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "oam-remote-ipv4-address",
- "resourcePath": "vnf/oam-remote-ipv4-address",
- "resourceType": "ATT",
- "dataType": "string",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"oam-remote-ipv4-address\",\r\n \"description\" : \"To be provided\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"vnf/oam-remote-ipv4-address\",\r\n \"data-type\" : \"string\",\r\n \"source\" : {\r\n \"input\" : {\r\n \"key\" : \"oam-remote-ipv4-address\"\r\n },\r\n \"mdsal\" : {\r\n \"base\" : \"sdnc-gc\",\r\n \"type\" : \"JSON\",\r\n \"url-path\" : \"/restconf/config/L3VNF-API\",\r\n \"path\" : \"/${services/service-list/$service-instance-id/service-data/vnf-topology-information/vnf-assignments/vnf-vms/$oam-ipv4-ip-type/vm-networks/$oam-network-role/v4-assigned-ip-list/$oam-vm-type\",\r\n \"input-key-mapping\" : {\r\n \"service-instance-id\" : \"service-instance-id\",\r\n \"oam-network-role\" : \"oam-network-role\",\r\n \"oam-ipv4-ip-type\" : \"oam-ipv4-ip-type\",\r\n \"oam-vm-type\" : \"oam-vm-type\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"oam-remote-ipv4-address\" : \"ipv4-gateway-prefix\"\r\n }\r\n }\r\n },\r\n \"candidate-dependency\" : {\r\n \"mdsal\" : {\r\n \"names\" : [ \"service-instance-id\", \"oam-network-role\", \"oam-v4-ip-type \", \"oam-vm-type\" ]\r\n }\r\n }\r\n}",
- "description": "To be provided",
- "tags": "ADIOD3",
- "creationDate": "2017-11-16T10:52:24.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "ospf-area",
- "resourcePath": "/ospf-area",
- "resourceType": "ATT",
- "dataType": "string",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"ospf-area\",\r\n \"description\" : \"ospf-area\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"/ospf-area\",\r\n \"data-type\" : \"string\",\r\n \"source\" : {\r\n \"input\" : {\r\n \"key\" : \"ospf-area\"\r\n },\r\n \"network-resource-discovery\" : {\r\n \"input-key-mapping\" : {\r\n \"hostname\" : \"mainResource\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"ospf-area\" : \"ospf-area\"\r\n }\r\n }\r\n }\r\n}",
- "description": "ospf-area",
- "tags": "ADIOD3",
- "creationDate": "2017-11-16T10:52:24.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "ospf-cost",
- "resourcePath": "/ospf-cost",
- "resourceType": "ATT",
- "dataType": "string",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"ospf-cost\",\r\n \"description\" : \"ospf-cost\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"/ospf-cost\",\r\n \"data-type\" : \"string\",\r\n \"source\" : {\r\n \"input\" : {\r\n \"key\" : \"ospf-cost\"\r\n },\r\n \"network-resource-discovery\" : {\r\n \"input-key-mapping\" : {\r\n \"hostname\" : \"mainResource\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"ospf-cost\" : \"ospf-cost\"\r\n }\r\n }\r\n }\r\n}",
- "description": "ospf-cost",
- "tags": "ADIOD3",
- "creationDate": "2017-11-16T10:52:25.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "si-local-ipv4-address",
- "resourcePath": "vnf/interface/si-local-ipv4",
- "resourceType": "ATT",
- "dataType": "string",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"si-local-ipv4-address\",\r\n \"description\" : \"To be provided\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"vnf/interface/si-local-ipv4\",\r\n \"data-type\" : \"string\",\r\n \"source\" : {\r\n \"input\" : { },\r\n \"network-resource-discovery\" : {\r\n \"input-key-mapping\" : {\r\n \"hostname\" : \"hostname\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"si-local-ipv4\" : \"si-local-ipv4\"\r\n }\r\n }\r\n },\r\n \"candidate-dependency\" : {\r\n \"network-resource-discovery\" : {\r\n \"names\" : [ \"hostname\" ]\r\n }\r\n }\r\n}",
- "description": "To be provided",
- "tags": "ADIOD3",
- "creationDate": "2017-11-16T10:52:25.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "tacacs-server-ipv4-addresses",
- "resourcePath": "vnf/servers/tacacs-server-ipv4-addresses",
- "resourceType": "ATT",
- "dataType": "list",
- "entrySchema": "dt-tacacs-server-ipv4-addresses",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"tacacs-server-ipv4-addresses\",\r\n \"description\" : \"to be provided\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"vnf/servers/tacacs-server-ipv4-addresses\",\r\n \"data-type\" : \"list\",\r\n \"entry-schema\" : \"dt-tacacs-server-ipv4-addresses\",\r\n \"source\" : {\r\n \"input\" : { },\r\n \"network-resource-discovery\" : {\r\n \"input-key-mapping\" : {\r\n \"region\" : \"region\",\r\n \"complex-code-char8\" : \"complex-code-char8\",\r\n \"tacacs-domain-name\" : \"tacacs-domain-name\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"tacacs-server-ipv4-addresses\" : \"tacacs-server-ipv4-addresses\"\r\n }\r\n }\r\n },\r\n \"candidate-dependency\" : {\r\n \"network-resource-discovery\" : {\r\n \"names\" : [ \"region\", \"complex-code-char8\", \"tacacs-domain-name\" ]\r\n }\r\n }\r\n}",
- "description": "to be provided",
- "tags": "ADIOD3",
- "creationDate": "2017-11-16T17:31:43.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "uplink-1-unit",
- "resourcePath": "vnf/interface/uplink-1-unit",
- "resourceType": "ATT",
- "dataType": "string",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"uplink-1-unit\",\r\n \"description\" : \"To be provided\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"vnf/interface/uplink-1-unit\",\r\n \"data-type\" : \"string\",\r\n \"source\" : {\r\n \"input\" : { },\r\n \"network-resource-discovery\" : {\r\n \"input-key-mapping\" : {\r\n \"hostname\" : \"hostname\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"uplink-1-unit\" : \"uplink-1-unit\"\r\n }\r\n }\r\n },\r\n \"candidate-dependency\" : {\r\n \"network-resource-discovery\" : {\r\n \"names\" : [ \"hostname\" ]\r\n }\r\n }\r\n}",
- "description": "To be provided",
- "tags": "ADIOD3",
- "creationDate": "2017-11-16T17:31:44.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "uplink-2-unit",
- "resourcePath": "vnf/interface/uplink-2-unit",
- "resourceType": "ATT",
- "dataType": "string",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"uplink-2-unit\",\r\n \"description\" : \"To be provided\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"vnf/interface/uplink-2-unit\",\r\n \"data-type\" : \"string\",\r\n \"source\" : {\r\n \"input\" : { },\r\n \"network-resource-discovery\" : {\r\n \"input-key-mapping\" : {\r\n \"hostname\" : \"hostname\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"uplink-2-unit\" : \"uplink-2-unit\"\r\n }\r\n }\r\n },\r\n \"candidate-dependency\" : {\r\n \"network-resource-discovery\" : {\r\n \"names\" : [ \"hostname\" ]\r\n }\r\n }\r\n}",
- "description": "To be provided",
- "tags": "ADIOD3",
- "creationDate": "2017-11-16T17:31:45.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "wan-aggregate-ipv4-addresses",
- "resourcePath": "vnf/wan-aggregate-ipv4-addresses",
- "resourceType": "ATT",
- "dataType": "list",
- "entrySchema": "dt-v4-aggregate",
- "definition": "{\r\n \"tags\" : \"wan-aggregate-ipv4-addresses, tosca.datatypes.Root, data_type, ks220y@att.com\",\r\n \"name\" : \"wan-aggregate-ipv4-addresses\",\r\n \"description\" : \"To be provided\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"vnf/wan-aggregate-ipv4-addresses\",\r\n \"data-type\" : \"list\",\r\n \"entry-schema\" : \"dt-v4-aggregate\",\r\n \"source\" : {\r\n \"input\" : { },\r\n \"mdsal\" : {\r\n \"base\" : \"sdnc-gc\",\r\n \"type\" : \"JSON\",\r\n \"url-path\" : \"/restconf/config/L3VNF-API\",\r\n \"path\" : \"/${services/service-list/$service-instance-id/service-data/vnf-topology-information/vnf-assignments/vnf-vms/$oam-ipv4-ip-type/vm-networks/$oam-network-role/v4-assigned-ip-list/$oam-vm-type\",\r\n \"input-key-mapping\" : {\r\n \"service-instance-id\" : \"service-instance-id\",\r\n \"oam-network-role\" : \"oam-network-role\",\r\n \"oam-ipv4-ip-type\" : \"oam-ipv4-ip-type\",\r\n \"oam-vm-type\" : \"oam-vm-type\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"wan-aggregate-ipv4-addresses\" : \"v4-ip-prefix-length\"\r\n }\r\n }\r\n },\r\n \"candidate-dependency\" : {\r\n \"mdsal\" : {\r\n \"names\" : [ \"service-instance-id\", \"oam-network-role\", \"oam-v4-ip-type \", \"oam-vm-type\" ]\r\n }\r\n }\r\n}",
- "description": "To be provided",
- "tags": "wan-aggregate-ipv4-addresses, tosca.datatypes.Root, data_type, ks220y@att.com",
- "creationDate": "2017-11-16T17:31:45.000+0000",
- "updatedBy": "ks220y@att.com"
- },
- {
- "name": "wan-aggregate-ipv6-addresses",
- "resourcePath": "vnf/wan-aggregate-ipv6-addresses",
- "resourceType": "ATT",
- "dataType": "list",
- "entrySchema": "dt-v6-aggregate",
- "definition": "{\r\n \"tags\" : \"ADIOD3\",\r\n \"name\" : \"wan-aggregate-ipv6-addresses\",\r\n \"description\" : \"To be provided\",\r\n \"updated-by\" : \"ks220y@att.com\",\r\n \"resource-type\" : \"ATT\",\r\n \"resource-path\" : \"vnf/wan-aggregate-ipv6-addresses\",\r\n \"data-type\" : \"list\",\r\n \"entry-schema\" : \"dt-v6-aggregate\",\r\n \"source\" : {\r\n \"input\" : { },\r\n \"mdsal\" : {\r\n \"base\" : \"sdnc-gc\",\r\n \"type\" : \"JSON\",\r\n \"url-path\" : \"/restconf/config/L3VNF-API\",\r\n \"path\" : \"/${services/service-list/$service-instance-id/service-data/vnf-topology-information/vnf-assignments/vnf-vms/VCO\",\r\n \"input-key-mapping\" : {\r\n \"service-instance-id\" : \"service-instance-id\",\r\n \"oam-network-role\" : \"oam-network-role\",\r\n \"oam-ipv4-ip-type\" : \"oam-ipv4-ip-type\",\r\n \"oam-vm-type\" : \"oam-vm-type\"\r\n },\r\n \"output-key-mapping\" : {\r\n \"wan-aggregate-ipv6.addresses\" : \"v4-ip-prefix-length\"\r\n }\r\n }\r\n },\r\n \"candidate-dependency\" : {\r\n \"mdsal\" : {\r\n \"names\" : [ \"service-instance-id\", \"oam-network-role\", \"oam-v4-ip-type \", \"oam-vm-type\" ]\r\n }\r\n }\r\n}",
- "description": "To be provided",
- "tags": "ADIOD3",
- "creationDate": "2017-11-16T17:31:46.000+0000",
- "updatedBy": "ks220y@att.com"
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/input-complex.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/input-complex.json
deleted file mode 100644
index 70865015c..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/input-complex.json
+++ /dev/null
@@ -1,49 +0,0 @@
-{
- "request-id": "1234",
- "service-instance-id": "adsfdsf",
- "action-name": "resource-assignment-action",
- "scope-type": "vnf-type",
- "hostname": "sample-host",
- "resource-assignment-request": {
- "uplink-2-unit": "sample-uplink-2-unit",
- "bundle-mac": "sample-bundle-mac",
- "wan-aggregate-ipv6-addresses": [
- {
- "v6-address": "sample-v6-address",
- "v6-plen": "sample-v6-plen"
- }
- ],
- "ospf-area": "sample-ospf-area",
- "ospf-cost": 10.0,
- "bundle-id": "bundle-id",
- "adiod-unicast-route-reflectors": [
- {
- "v4-address": "sample-v4-address",
- "name": "sample-name"
- }
- ],
- "oam-remote-ipv4-address": "",
- "adiod-vpnv4-route-reflectors": [
- {
- "v4-address": "sample-v4-address",
- "name": "sample-name"
- }
- ],
- "lo10-local-ipv4-address": "sample-lo10-local-ipv4-address",
- "wan-aggregate-ipv4-addresses": [
- {
- "v4-address": "sample-v4-address",
- "v4-plen": 0
- }
- ],
- "lo0-local-ipv4-address": "sample-lo0-local-ipv4-address",
- "uplink-1-unit": "sample-uplink-1-unit",
- "tacacs-server-ipv4-addresses": [
- {
- "tacacs-server-ipv4-address": "sample-tacacs-server-ipv4-address"
- }
- ],
- "asn-region": "sample-asn-region",
- "si-local-ipv4-address": "sample-si-local-ipv4-address"
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/velocity/base-config-template.vtl b/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/velocity/base-config-template.vtl
deleted file mode 100644
index 92dba1024..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/velocity/base-config-template.vtl
+++ /dev/null
@@ -1,40 +0,0 @@
- <config>
- <configuration>
- <groups>
- <name>${group-name}</name>
- <routing-instances>
- <instance>
- <name>&lt;*&gt;</name>
- <protocols>
- <pim>
- <dense-groups>
- <dynamic-reject />
- <pim-dense-group-type>
- <name>224.0.1.40/32</name>
- </pim-dense-group-type>
- <pim-dense-group-type>
- <name>224.0.1.39/32</name>
- </pim-dense-group-type>
- <pim-dense-group-type>
- <name>224.0.0.0/4</name>
- <reject />
- </pim-dense-group-type>
- </dense-groups>
- <rp>
- <auto-rp>
- <discovery />
- </auto-rp>
- </rp>
- <interface>
- <name>&lt;*&gt;</name>
- <disable />
- <priority>1000</priority>
- </interface>
- <reset-tracking-bit />
- </pim>
- </protocols>
- </instance>
- </routing-instances>
- </groups>
- </configuration>
- </config> \ No newline at end of file
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/vpe-201802-baseconfig.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/vpe-201802-baseconfig.json
deleted file mode 100644
index 7113b70c2..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/service_templates/vpe-201802-baseconfig/vpe-201802-baseconfig.json
+++ /dev/null
@@ -1,639 +0,0 @@
-{
- "metadata": {
- "author": "ks220y@att.com",
- "service-template-name": "vpe-201802-baseconfig",
- "service-template-version": "1.0.0",
- "release": "1802",
- "service-type": "ADIOD",
- "vnf-type": "VPE"
- },
- "topology_template": {
- "inputs": {
- "request-id": {
- "required": true,
- "type": "string"
- },
- "service-instance-id": {
- "required": true,
- "type": "string"
- },
- "action-name": {
- "required": true,
- "type": "string"
- },
- "scope-type": {
- "required": true,
- "type": "string"
- },
- "hostname": {
- "required": true,
- "type": "string"
- },
- "resource-assignment-request": {
- "description": "This is Dynamic Data type for the receipe resource-assignment-action.",
- "required": false,
- "type": "dt-resource-assignment-request"
- }
- },
- "node_templates": {
- "base-config-template": {
- "type": "artifact-config-template",
- "properties": {
- "action-names": [
- "resource-assignment-action"
- ]
- },
- "capabilities": {
- "content": {
- "properties": {
- "content": "db://base-config-template"
- }
- },
- "mapping": {
- "properties": {
- "mapping": [
- {
- "name": "wan-aggregate-ipv6-addresses",
- "input-param": true,
- "property": {
- "type": "list",
- "entry_schema": {
- "type": "dt-v6-aggregate"
- }
- },
- "dictionary-name": "wan-aggregate-ipv6-addresses",
- "dictionary-source": "input"
- },
- {
- "name": "wan-aggregate-ipv4-addresses",
- "input-param": true,
- "property": {
- "type": "list",
- "entry_schema": {
- "type": "dt-v4-aggregate"
- }
- },
- "dictionary-name": "wan-aggregate-ipv4-addresses",
- "dictionary-source": "input"
- },
- {
- "name": "tacacs-server-ipv4-addresses",
- "input-param": true,
- "property": {
- "type": "list",
- "entry_schema": {
- "type": "dt-tacacs-server-ipv4"
- }
- },
- "dictionary-name": "tacacs-server-ipv4-addresses",
- "dictionary-source": "input"
- },
- {
- "name": "oam-remote-ipv4-address",
- "property": {
- "type": "string"
- },
- "dictionary-name": "oam-remote-ipv4-address",
- "dictionary-source": "input"
- },
- {
- "name": "si-local-ipv4-address",
- "property": {
- "type": "string"
- },
- "dictionary-name": "si-local-ipv4-address",
- "dictionary-source": "input"
- },
- {
- "name": "lo0-local-ipv4-address",
- "property": {
- "type": "string"
- },
- "dictionary-name": "lo0-local-ipv4-address",
- "dictionary-source": "input"
- },
- {
- "name": "asn-region",
- "property": {
- "type": "string"
- },
- "dictionary-name": "asn-region",
- "dictionary-source": "input"
- },
- {
- "name": "adiod-unicast-route-reflectors",
- "input-param": true,
- "property": {
- "type": "list",
- "entry_schema": {
- "type": "dt-adiod-unicast-route-reflector"
- }
- },
- "dictionary-name": "adiod-unicast-route-reflectors",
- "dictionary-source": "input"
- },
- {
- "name": "adiod-vpnv4-route-reflectors",
- "input-param": true,
- "property": {
- "type": "list",
- "entry_schema": {
- "type": "dt-adiod-vpnv4-route-reflector"
- }
- },
- "dictionary-name": "adiod-vpnv4-route-reflectors",
- "dictionary-source": "input"
- },
- {
- "name": "bundle-id",
- "property": {
- "type": "string"
- },
- "dictionary-name": "bundle-id",
- "dictionary-source": "input"
- },
- {
- "name": "uplink-1-unit",
- "property": {
- "type": "string"
- },
- "dictionary-name": "uplink-1-unit",
- "dictionary-source": "input"
- },
- {
- "name": "uplink-2-unit",
- "property": {
- "type": "string"
- },
- "dictionary-name": "uplink-2-unit",
- "dictionary-source": "input"
- },
- {
- "name": "ospf-area",
- "property": {
- "type": "string"
- },
- "dictionary-name": "ospf-area",
- "dictionary-source": "input"
- },
- {
- "name": "ospf-cost",
- "property": {
- "type": "string"
- },
- "dictionary-name": "ospf-cost",
- "dictionary-source": "input"
- },
- {
- "name": "lo10-local-ipv4-address",
- "property": {
- "type": "string"
- },
- "dictionary-name": "lo10-local-ipv4-address",
- "dictionary-source": "input"
- }
- ]
- }
- }
- }
- },
- "resource-assignment-action": {
- "type": "dg-resource-assignment",
- "interfaces": {
- "CONFIG": {
- "operations": {
- "ResourceAssignment": {
-
- }
- }
- }
- },
- "capabilities": {
- "dg-node": {
-
- }
- },
- "requirements": {
- "component-dependency": {
- "capability": "component-node",
- "node": "resource-assignment",
- "relationship": "tosca.relationships.DependsOn"
- }
- }
- },
- "resource-assignment": {
- "type": "component-resource-assignment",
- "interfaces": {
- "org-onap-ccsdk-features-assignment-service-ConfigAssignmentNode": {
- "operations": {
- "process": {
- "inputs": {
- "action-name": "{ \"get_input\" : \"action-name\" }",
- "resource-type": "vnf-type",
- "template-names": [
- "base-config-template",
- "licence-template"
- ],
- "request-id": "{ \"get_input\" : \"request-id\" }",
- "resource-id": "{ \"get_input\" : \"hostname\" }"
- },
- "outputs": {
- "resource-assignment-params": "",
- "status": ""
- }
- }
- }
- }
- },
- "capabilities": {
- "component-node": {
-
- }
- }
- }
- }
- },
- "node_types": {
- "dg-resource-assignment": {
- "description": "This is Resource Assignment Directed Graph",
- "version": "1.0.0",
- "properties": {
- "mode": {
- "required": false,
- "type": "string",
- "default": "sync"
- },
- "version": {
- "required": false,
- "type": "string",
- "default": "LATEST"
- },
- "is-start-flow": {
- "required": false,
- "type": "boolean",
- "default": "false"
- }
- },
- "capabilities": {
- "dg-node": {
- "type": "tosca.capabilities.Node"
- },
- "content": {
- "type": "tosca.capabilities.Content",
- "properties": {
- "type": {
- "required": false,
- "type": "string",
- "default": "json"
- },
- "content": {
- "required": true,
- "type": "string"
- }
- }
- }
- },
- "requirements": {
- "component-dependency": {
- "capability": "component-node",
- "node": "component-resource-assignment",
- "relationship": "tosca.relationships.DependsOn"
- }
- },
- "interfaces": {
- "CONFIG": {
- "operations": {
- "ResourceAssignment": {
- "inputs": {
- "params": {
- "required": false,
- "type": "list",
- "entry_schema": {
- "type": "datatype-property"
- }
- }
- }
- }
- }
- }
- },
- "derived_from": "tosca.nodes.DG"
- },
- "component-resource-assignment": {
- "description": "This is Resource Assignment Component API",
- "version": "1.0.0",
- "capabilities": {
- "component-node": {
- "type": "tosca.capabilities.Node"
- }
- },
- "interfaces": {
- "org-onap-ccsdk-features-assignment-service-ConfigAssignmentNode": {
- "operations": {
- "process": {
- "inputs": {
- "action-name": {
- "description": "Action Name to get from Database, Either (message & mask-info ) or ( resource-id & resource-type & action-name & template-name ) should be present. Message will be given higest priority",
- "required": false,
- "type": "string"
- },
- "handler-name": {
- "description": "Name of the Artifact Node Template, to get the template Content. If template-content is present, then content wont be reterived from the Artifact Node Template.",
- "required": true,
- "type": "string"
- },
- "resource-type": {
- "required": false,
- "type": "string"
- },
- "template-names": {
- "description": "Name of the Artifact Node Templates, to get the template Content.",
- "required": true,
- "type": "list",
- "entry_schema": {
- "type": "string"
- }
- },
- "request-id": {
- "description": "Request Id used to store the generated configuration, in the database along with the template-name",
- "required": true,
- "type": "string"
- },
- "resource-id": {
- "description": "Id used to pull the data content from the data base. Either template-data or resource-id should be present",
- "required": true,
- "type": "string"
- }
- },
- "outputs": {
- "resource-assignment-params": {
- "required": true,
- "type": "string"
- },
- "status": {
- "required": true,
- "type": "string"
- }
- }
- }
- }
- }
- },
- "derived_from": "tosca.nodes.Component"
- },
- "artifact-config-template": {
- "description": "This is Configuration Velocity Template",
- "version": "1.0.0",
- "properties": {
- "action-names": {
- "required": true,
- "type": "list",
- "entry_schema": {
- "type": "string"
- }
- }
- },
- "capabilities": {
- "content": {
- "type": "tosca.capabilities.Content",
- "properties": {
- "content": {
- "required": true,
- "type": "string"
- }
- }
- },
- "mapping": {
- "type": "tosca.capabilities.Mapping",
- "properties": {
- "mapping": {
- "required": false,
- "type": "list",
- "entry_schema": {
- "type": "datatype-resource-assignment"
- }
- }
- }
- }
- },
- "derived_from": "tosca.nodes.Artifact"
- }
- },
- "data_types": {
- "dt-v4-aggregate": {
- "version": "1.0.0",
- "description": "This is dt-v4-aggregate Data Type",
- "properties": {
- "v4-address": {
- "required": true,
- "type": "string"
- },
- "v4-plen": {
- "required": false,
- "type": "integer"
- }
- },
- "derived_from": "tosca.datatypes.Root"
- },
- "dt-tacacs-server-ipv4": {
- "version": "1.0.0",
- "description": "This is dt-tacacs-server-ipv4 Data Type",
- "properties": {
- "tacacs-server-ipv4-address": {
- "required": true,
- "type": "string"
- }
- },
- "derived_from": "tosca.datatypes.Root"
- },
- "dt-adiod-vpnv4-route-reflector": {
- "version": "1.0.0",
- "description": "This is dt-adiod-unicast-route-reflector Data Type",
- "properties": {
- "v4-address": {
- "required": true,
- "type": "string"
- },
- "name": {
- "required": false,
- "type": "string"
- }
- },
- "derived_from": "tosca.datatypes.Root"
- },
- "datatype-resource-assignment": {
- "version": "1.0.0",
- "description": "This is Resource Assignment Data Type",
- "properties": {
- "property": {
- "required": true,
- "type": "datatype-property"
- },
- "input-param": {
- "required": true,
- "type": "boolean"
- },
- "dictionary-name": {
- "required": false,
- "type": "string"
- },
- "dictionary-source": {
- "required": false,
- "type": "string"
- },
- "dependencies": {
- "required": true,
- "type": "list",
- "entry_schema": {
- "type": "string"
- }
- },
- "status": {
- "required": false,
- "type": "string"
- },
- "message": {
- "required": false,
- "type": "string"
- },
- "updated-date": {
- "required": false,
- "type": "string"
- },
- "updated-by": {
- "required": false,
- "type": "string"
- }
- },
- "derived_from": "tosca.datatypes.Root"
- },
- "dt-adiod-unicast-route-reflector": {
- "version": "1.0.0",
- "description": "This is dt-adiod-unicast-route-reflector Data Type",
- "properties": {
- "v4-address": {
- "required": true,
- "type": "string"
- },
- "name": {
- "required": false,
- "type": "string"
- }
- },
- "derived_from": "tosca.datatypes.Root"
- },
- "datatype-property": {
- "version": "1.0.0",
- "description": "This is Entry point Input Data Type, which is dynamic datatype, The parameter names will be populated during the Design time for each inputs",
- "properties": {
- "type": {
- "required": true,
- "type": "string"
- },
- "description": {
- "required": false,
- "type": "string"
- },
- "required": {
- "required": false,
- "type": "boolean"
- },
- "default": {
- "required": false,
- "type": "string"
- },
- "entry_schema": {
- "required": false,
- "type": "string"
- }
- },
- "derived_from": "tosca.datatypes.Root"
- },
- "dt-v6-aggregate": {
- "version": "1.0.0",
- "description": "This is dt-v6-aggregate Data Type",
- "properties": {
- "v6-address": {
- "required": true,
- "type": "string"
- },
- "v6-plen": {
- "required": false,
- "type": "string"
- }
- },
- "derived_from": "tosca.datatypes.Root"
- },
- "dt-resource-assignment-request": {
- "version": "1.0.0",
- "description": "This is Dynamic Data type definition generated from resource mapping for the config template name base-config-template.",
- "properties": {
- "uplink-2-unit": {
- "type": "string"
- },
- "bundle-mac": {
- "required": true,
- "type": "string"
- },
- "wan-aggregate-ipv6-addresses": {
- "type": "list",
- "entry_schema": {
- "type": "dt-v6-aggregate"
- }
- },
- "ospf-area": {
- "type": "string"
- },
- "ospf-cost": {
- "type": "string"
- },
- "bundle-id": {
- "type": "string"
- },
- "adiod-unicast-route-reflectors": {
- "type": "list",
- "entry_schema": {
- "type": "dt-adiod-unicast-route-reflector"
- }
- },
- "oam-remote-ipv4-address": {
- "type": "string"
- },
- "adiod-vpnv4-route-reflectors": {
- "type": "list",
- "entry_schema": {
- "type": "dt-adiod-vpnv4-route-reflector"
- }
- },
- "lo10-local-ipv4-address": {
- "type": "string"
- },
- "wan-aggregate-ipv4-addresses": {
- "type": "list",
- "entry_schema": {
- "type": "dt-v4-aggregate"
- }
- },
- "lo0-local-ipv4-address": {
- "type": "string"
- },
- "uplink-1-unit": {
- "type": "string"
- },
- "tacacs-server-ipv4-addresses": {
- "type": "list",
- "entry_schema": {
- "type": "dt-tacacs-server-ipv4"
- }
- },
- "asn-region": {
- "type": "string"
- },
- "si-local-ipv4-address": {
- "type": "string"
- }
- },
- "derived_from": "tosca.datatypes.Dynamic"
- }
- }
-}
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/validation/cyclic.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/validation/cyclic.json
deleted file mode 100644
index fc6357f2d..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/validation/cyclic.json
+++ /dev/null
@@ -1,111 +0,0 @@
-[
- {
- "name": "vnf-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "vnf-id",
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "service-instance-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "service-instance-id",
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "bundle-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "bundle-id",
- "dictionary-source": "mdsal",
- "dependencies": [
- "vnf-id"
- ]
- },
- {
- "name": "bundle-ip",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "bundle-ip",
- "dictionary-source": "mdsal",
- "dependencies": [
- "vnf-id"
- ]
- },
- {
- "name": "bundle-mac",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "bundle-mac",
- "dictionary-source": "mdsal",
- "dependencies": [
- "vnf-id",
- "bundle-id"
- ]
- },
- {
- "name": "managed-ip",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "managed-ip",
- "dictionary-source": "mdsal",
- "dependencies": [
- "loopback-ip"
- ]
- },
- {
- "name": "vnf-name",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "vnf-name",
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "managed-ip1",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "managed-ip1",
- "dictionary-source": "mdsal",
- "dependencies": [
- "loopback-ip"
- ]
- },
- {
- "name": "loopback-ip",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "loopback-ip",
- "dictionary-source": "db",
- "dependencies": [
- "bundle-mac",
- "managed-ip1"
- ]
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/validation/duplicate.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/validation/duplicate.json
deleted file mode 100644
index 86909a6a4..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/validation/duplicate.json
+++ /dev/null
@@ -1,110 +0,0 @@
-[
- {
- "name": "vnf-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "vnf-id",
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "service-instance-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "service-instance-id",
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "bundle-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "bundle-id",
- "dictionary-source": "mdsal",
- "dependencies": [
- "vnf-id"
- ]
- },
- {
- "name": "bundle-ip",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "bundle-ip",
- "dictionary-source": "mdsal",
- "dependencies": [
- "vnf-id"
- ]
- },
- {
- "name": "bundle-mac",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "bundle-mac",
- "dictionary-source": "mdsal",
- "dependencies": [
- "vnf-id",
- "bundle-id"
- ]
- },
- {
- "name": "bundle-mac",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "bundle-mac",
- "dictionary-source": "mdsal",
- "dependencies": [
- "loopback-ip"
- ]
- },
- {
- "name": "vnf-name",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "vnf-name",
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "managed-ip1",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "managed-ip1",
- "dictionary-source": "mdsal",
- "dependencies": [
- "loopback-ip"
- ]
- },
- {
- "name": "loopback-ip",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "loopback-ip",
- "dictionary-source": "db",
- "dependencies": [
- "bundle-mac"
- ]
- }
-]
diff --git a/blueprints-processor/plugin/assignment-provider/src/test/resources/validation/success.json b/blueprints-processor/plugin/assignment-provider/src/test/resources/validation/success.json
deleted file mode 100644
index e08539c0d..000000000
--- a/blueprints-processor/plugin/assignment-provider/src/test/resources/validation/success.json
+++ /dev/null
@@ -1,110 +0,0 @@
-[
- {
- "name": "vnf-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "vnf-id",
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "service-instance-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "service-instance-id",
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "bundle-id",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "bundle-id",
- "dictionary-source": "mdsal",
- "dependencies": [
- "vnf-id"
- ]
- },
- {
- "name": "bundle-ip",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "bundle-ip",
- "dictionary-source": "mdsal",
- "dependencies": [
- "vnf-id"
- ]
- },
- {
- "name": "bundle-mac",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "bundle-mac",
- "dictionary-source": "mdsal",
- "dependencies": [
- "vnf-id",
- "bundle-id"
- ]
- },
- {
- "name": "managed-ip",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "managed-ip",
- "dictionary-source": "mdsal",
- "dependencies": [
- "loopback-ip"
- ]
- },
- {
- "name": "vnf-name",
- "input-param": true,
- "property": {
- "type": "string",
- "required": true
- },
- "dictionary-name": "vnf-name",
- "dictionary-source": "input",
- "dependencies": []
- },
- {
- "name": "managed-ip1",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "managed-ip1",
- "dictionary-source": "mdsal",
- "dependencies": [
- "loopback-ip"
- ]
- },
- {
- "name": "loopback-ip",
- "input-param": true,
- "property": {
- "type": "string"
- },
- "dictionary-name": "loopback-ip",
- "dictionary-source": "db",
- "dependencies": [
- "bundle-mac"
- ]
- }
-]