X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=mod%2Fbpgenerator%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fblueprintgenerator%2Fmodels%2Fpolicymodel%2FPolicyModelNode.java;h=89321ded45dc2dae1c4a9393b7ac88678df5576f;hb=04f13ef80c6e79d8c0b7b3fa1faeeaa0def1584e;hp=56d1d136da41695d20795602f3d2e1e8e0b3fd39;hpb=f51b3e1a957ede6c263d0c3634f36c7fcfbb95ff;p=dcaegen2%2Fplatform.git diff --git a/mod/bpgenerator/src/main/java/org/onap/blueprintgenerator/models/policymodel/PolicyModelNode.java b/mod/bpgenerator/src/main/java/org/onap/blueprintgenerator/models/policymodel/PolicyModelNode.java index 56d1d13..89321de 100644 --- a/mod/bpgenerator/src/main/java/org/onap/blueprintgenerator/models/policymodel/PolicyModelNode.java +++ b/mod/bpgenerator/src/main/java/org/onap/blueprintgenerator/models/policymodel/PolicyModelNode.java @@ -1,8 +1,10 @@ -/**============LICENSE_START======================================================= +/*============LICENSE_START======================================================= org.onap.dcae ================================================================================ Copyright (c) 2019 AT&T Intellectual Property. All rights reserved. - ================================================================================ + ================================================================================ + Modifications Copyright (c) 2020 Nokia. All rights reserved. + ================================================================================ 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 @@ -20,128 +22,126 @@ package org.onap.blueprintgenerator.models.policymodel; +import static org.onap.blueprintgenerator.models.blueprint.BpConstants.TOSCA_DATATYPES_ROOT; +import static org.onap.blueprintgenerator.models.blueprint.BpConstants.TOSCA_NODES_ROOT; + +import com.fasterxml.jackson.annotation.JsonInclude; import java.util.ArrayList; import java.util.HashMap; -import java.util.LinkedHashMap; import java.util.TreeMap; - -import org.onap.blueprintgenerator.models.blueprint.Node; +import lombok.Getter; +import lombok.Setter; import org.onap.blueprintgenerator.models.componentspec.EntrySchemaObj; import org.onap.blueprintgenerator.models.componentspec.Parameters; import org.onap.blueprintgenerator.models.componentspec.PolicySchemaObj; -import com.fasterxml.jackson.annotation.JsonInclude; - -import lombok.Getter; -import lombok.Setter; - -@Getter @Setter +@Getter +@Setter @JsonInclude(JsonInclude.Include.NON_NULL) public class PolicyModelNode { - - private String derived_from; - private TreeMap properties; - - public String createNodeType(String policyName, Parameters[] params) { - String hasEntrySchema = ""; - - TreeMap props = new TreeMap(); - for(Parameters p: params) { - if(p.getPolicy_group() != null) { - if(p.getPolicy_group().equals(policyName)) { - String name = p.getName(); - String type = p.getType(); - PolicyProperties polProps = new PolicyProperties(); - if(p.getPolicy_schema() != null) { - polProps.setType("map"); - HashMap entrySchema = new HashMap(); - entrySchema.put("type", "onap.datatypes." + name); - //ArrayList entrySchema = new ArrayList(); - //entrySchema.add("type: onap.data." + name); - polProps.setEntry_schema(entrySchema); - hasEntrySchema = name; - props.put(name, polProps); - } - else { - polProps.setType(type); - props.put(name, polProps); - } - } - } - } - - this.setDerived_from("tosca.datatypes.Root"); - this.setProperties(props); - return hasEntrySchema; - } - - public TreeMap createDataTypes(String param, Parameters[] parameters) { - TreeMap dataType = new TreeMap(); - - PolicyModelNode node = new PolicyModelNode(); - node.setDerived_from("tosca.datatypes.Root"); - - TreeMap properties = new TreeMap(); - - Parameters par = new Parameters(); - for(Parameters p: parameters) { - if(p.getName().equals(param)) { - par = p; - break; - } - } - - for(PolicySchemaObj pol: par.getPolicy_schema()) { - if(pol.getEntry_schema() != null) { - PolicyProperties prop = new PolicyProperties(); - prop.setType("map"); - HashMap schema = new HashMap(); - schema.put("type", "onap.datatypes." + pol.getName()); + + private String derived_from; + private TreeMap properties; + + public String createNodeType(String policyName, Parameters[] params) { + String hasEntrySchema = ""; + + TreeMap props = new TreeMap(); + for (Parameters p : params) { + if (p.getPolicy_group() != null) { + if (p.getPolicy_group().equals(policyName)) { + String name = p.getName(); + String type = p.getType(); + PolicyProperties polProps = new PolicyProperties(); + if (p.getPolicy_schema() != null) { + polProps.setType("map"); + HashMap entrySchema = new HashMap(); + entrySchema.put("type", "onap.datatypes." + name); + //ArrayList entrySchema = new ArrayList(); + //entrySchema.add("type: onap.data." + name); + polProps.setEntry_schema(entrySchema); + hasEntrySchema = name; + props.put(name, polProps); + } else { + polProps.setType(type); + props.put(name, polProps); + } + } + } + } + + this.setDerived_from(TOSCA_DATATYPES_ROOT); + this.setProperties(props); + return hasEntrySchema; + } + + public TreeMap createDataTypes(String param, Parameters[] parameters) { + TreeMap dataType = new TreeMap(); + + PolicyModelNode node = new PolicyModelNode(); + node.setDerived_from(TOSCA_DATATYPES_ROOT); + + TreeMap properties = new TreeMap(); + + Parameters par = new Parameters(); + for (Parameters p : parameters) { + if (p.getName().equals(param)) { + par = p; + break; + } + } + + for (PolicySchemaObj pol : par.getPolicy_schema()) { + if (pol.getEntry_schema() != null) { + PolicyProperties prop = new PolicyProperties(); + prop.setType("map"); + HashMap schema = new HashMap(); + schema.put("type", "onap.datatypes." + pol.getName()); // prop.setType("list"); // ArrayList schema = new ArrayList(); // schema.add("type: onap.data." + pol.getName()); - prop.setEntry_schema(schema); - properties.put(pol.getName(), prop); - dataType = translateEntrySchema(dataType, pol.getEntry_schema(), pol.getName()); - } - else { - PolicyProperties prop = new PolicyProperties(); - prop.setType(pol.getType()); - properties.put(pol.getName(), prop); - } - } - - node.setProperties(properties); - dataType.put("onap.datatypes." + param, node); - return dataType; - } - - private TreeMap translateEntrySchema(TreeMap dataType, EntrySchemaObj[] entry, String name){ - TreeMap data = dataType; - PolicyModelNode node = new PolicyModelNode(); - node.setDerived_from("tosca.nodes.Root"); - TreeMap properties = new TreeMap(); - - for(EntrySchemaObj e: entry) { - if(e.getEntry_schema() != null) { - PolicyProperties prop = new PolicyProperties(); - prop.setType("list"); - ArrayList schema = new ArrayList(); - schema.add("type: onap.datatypes." + e.getName()); - prop.setEntry_schema(schema); - properties.put(e.getName(), prop); - data = translateEntrySchema(data, e.getEntry_schema(), e.getName()); - node.setProperties(properties); - } else { - PolicyProperties prop = new PolicyProperties(); - prop.setType(e.getType()); - properties.put(e.getName(), prop); - node.setProperties(properties); - } - } - - dataType.put("onap.datatypes." + name, node); - return data; - } + prop.setEntry_schema(schema); + properties.put(pol.getName(), prop); + dataType = translateEntrySchema(dataType, pol.getEntry_schema(), pol.getName()); + } else { + PolicyProperties prop = new PolicyProperties(); + prop.setType(pol.getType()); + properties.put(pol.getName(), prop); + } + } + + node.setProperties(properties); + dataType.put("onap.datatypes." + param, node); + return dataType; + } + + private TreeMap translateEntrySchema(TreeMap dataType, + EntrySchemaObj[] entry, String name) { + TreeMap data = dataType; + PolicyModelNode node = new PolicyModelNode(); + node.setDerived_from(TOSCA_NODES_ROOT); + TreeMap properties = new TreeMap(); + + for (EntrySchemaObj e : entry) { + if (e.getEntry_schema() != null) { + PolicyProperties prop = new PolicyProperties(); + prop.setType("list"); + ArrayList schema = new ArrayList(); + schema.add("type: onap.datatypes." + e.getName()); + prop.setEntry_schema(schema); + properties.put(e.getName(), prop); + data = translateEntrySchema(data, e.getEntry_schema(), e.getName()); + node.setProperties(properties); + } else { + PolicyProperties prop = new PolicyProperties(); + prop.setType(e.getType()); + properties.put(e.getName(), prop); + node.setProperties(properties); + } + } + + dataType.put("onap.datatypes." + name, node); + return data; + } }