serviceResource.getNodeInstance().getNodeTemplate().setRequirements(Maps.newLinkedHashMap());
instance.setCapabilities(tempObject.getCapabilities()); instance.setProperties(tempObject.getProperties()); instance.setRequirements(tempObject.getRequirements()); instance.setArtifacts(tempObject.getArtifacts()); instance.setInterfaces(tempObject.getInterfaces());
/** * Build a node template. Note that a Tosca Context is required. * * @param nodeType the type of the node * @param templateToMerge the template that can be used to merge into the new node template * @param adaptToType This flag allow to know if we should adapt the templateToMerge node to the type. * @return new constructed node template. */ public static NodeTemplate buildNodeTemplate(NodeType nodeType, NodeTemplate templateToMerge, boolean adaptToType) { // clone the type of the node to avoid impacts, this should be improved in the future nodeType = CloneUtil.clone(nodeType); NodeTemplate nodeTemplate = new NodeTemplate(); fillAbstractInstantiableTemplate(nodeTemplate, nodeType, templateToMerge, !adaptToType); nodeTemplate.setCapabilities(Maps.newLinkedHashMap()); nodeTemplate.setRequirements(Maps.newLinkedHashMap()); fillCapabilitiesMap(nodeTemplate.getCapabilities(), nodeType.getCapabilities(), templateToMerge != null ? templateToMerge.getCapabilities() : null, adaptToType); fillRequirementsMap(nodeTemplate.getRequirements(), nodeType.getRequirements(), templateToMerge != null ? templateToMerge.getRequirements() : null, adaptToType); if (templateToMerge != null && templateToMerge.getRelationships() != null) { nodeTemplate.setRelationships(templateToMerge.getRelationships()); } if (templateToMerge != null && templateToMerge.getTags() != null) { nodeTemplate.setTags(templateToMerge.getTags()); } return nodeTemplate; }