summaryrefslogtreecommitdiffstats
path: root/mod/bpgenerator/src/main/java/org/onap/blueprintgenerator/models/blueprint/Properties.java
diff options
context:
space:
mode:
Diffstat (limited to 'mod/bpgenerator/src/main/java/org/onap/blueprintgenerator/models/blueprint/Properties.java')
-rw-r--r--mod/bpgenerator/src/main/java/org/onap/blueprintgenerator/models/blueprint/Properties.java96
1 files changed, 54 insertions, 42 deletions
diff --git a/mod/bpgenerator/src/main/java/org/onap/blueprintgenerator/models/blueprint/Properties.java b/mod/bpgenerator/src/main/java/org/onap/blueprintgenerator/models/blueprint/Properties.java
index 382964b..d7947f8 100644
--- a/mod/bpgenerator/src/main/java/org/onap/blueprintgenerator/models/blueprint/Properties.java
+++ b/mod/bpgenerator/src/main/java/org/onap/blueprintgenerator/models/blueprint/Properties.java
@@ -1,8 +1,10 @@
-/**============LICENSE_START=======================================================
- org.onap.dcae
- ================================================================================
+/**============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
@@ -15,13 +17,13 @@
See the License for the specific language governing permissions and
limitations under the License.
============LICENSE_END=========================================================
-
*/
package org.onap.blueprintgenerator.models.blueprint;
import java.util.ArrayList;
import java.util.LinkedHashMap;
+import java.util.Map;
import java.util.TreeMap;
import org.onap.blueprintgenerator.models.componentspec.Auxilary;
@@ -33,10 +35,12 @@ import org.onap.blueprintgenerator.models.dmaapbp.DmaapStreams;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import lombok.Getter; import lombok.Setter;
+import lombok.Getter;
+import lombok.Setter;
-@Getter @Setter
-@JsonInclude(value=Include.NON_NULL)
+@Getter
+@Setter
+@JsonInclude(value = Include.NON_NULL)
public class Properties {
private Appconfig application_config;
private Auxilary docker_config;
@@ -52,6 +56,7 @@ public class Properties {
ArrayList<DmaapStreams> streams_publishes;
ArrayList<DmaapStreams> streams_subscribes;
private TlsInfo tls_info;
+ private ExternalTlsInfo external_cert;
private ResourceConfig resource_config;
private GetInput always_pull_image;
//private boolean useExisting;
@@ -85,10 +90,7 @@ public class Properties {
GetInput replica = new GetInput();
replica.setGet_input("replicas");
this.setReplicas(replica);
- LinkedHashMap<String, Object> rep = new LinkedHashMap<String, Object>();
- rep.put("type", "integer");
- rep.put("description", "number of instances");
- rep.put("default", 1);
+ LinkedHashMap<String, Object> rep = makeInput("integer", "number of instances", 1);
retInputs.put("replicas", rep);
//set the dns name
@@ -112,10 +114,9 @@ public class Properties {
// set always_pull_image
this.always_pull_image = new GetInput();
this.always_pull_image.setGet_input("always_pull_image");
- LinkedHashMap<String, Object> inputAlwaysPullImage = new LinkedHashMap<String, Object>();
- inputAlwaysPullImage.put("type", "boolean");
- inputAlwaysPullImage.put("description", "Set to true if the image should always be pulled");
- inputAlwaysPullImage.put("default", true);
+ LinkedHashMap<String, Object> inputAlwaysPullImage = makeInput("boolean",
+ "Set to true if the image should always be pulled",
+ true);
retInputs.put("always_pull_image", inputAlwaysPullImage);
@@ -124,9 +125,10 @@ public class Properties {
sType = sType.replace('.', '-');
this.setService_component_type(sType);
- //set the tls info
- if(cs.getAuxilary().getTls_info() != null){
- addTlsInfo(cs,retInputs);
+ //set the tls info for internal and external communication
+ if (cs.getAuxilary().getTls_info() != null) {
+ addTlsInfo(cs, retInputs);
+ addExternalTlsInfo(cs, retInputs);
}
//set the reource config
@@ -168,19 +170,17 @@ public class Properties {
sType = sType.replace('.', '-');
this.setService_component_type(sType);
- //set the tls info
- if(cs.getAuxilary().getTls_info() != null){
- addTlsInfo(cs,retInputs);
+ //set the tls info for internal and external communication
+ if (cs.getAuxilary().getTls_info() != null) {
+ addTlsInfo(cs, retInputs);
+ addExternalTlsInfo(cs, retInputs);
}
//set the replicas
GetInput replica = new GetInput();
replica.setGet_input("replicas");
this.setReplicas(replica);
- LinkedHashMap<String, Object> rep = new LinkedHashMap<String, Object>();
- rep.put("type", "integer");
- rep.put("description", "number of instances");
- rep.put("default", 1);
+ LinkedHashMap<String, Object> rep = makeInput("integer", "number of instances", 1);
retInputs.put("replicas", rep);
// //set the dns name
@@ -203,15 +203,14 @@ public class Properties {
//set the stream publishes
ArrayList<DmaapStreams> pubStreams = new ArrayList();
- if(cs.getStreams().getPublishes() != null) {
- for(Publishes p: cs.getStreams().getPublishes()) {
- if(p.getType().equals("message_router") || p.getType().equals("message router")) {
+ if (cs.getStreams().getPublishes() != null) {
+ for (Publishes p : cs.getStreams().getPublishes()) {
+ if (p.getType().equals("message_router") || p.getType().equals("message router")) {
String topic = p.getConfig_key() + "_topic";
DmaapStreams mrStreams = new DmaapStreams();
retInputs = mrStreams.createStreams(inps, cs, topic, p.getType(), p.getConfig_key(), p.getRoute(), 'p');
pubStreams.add(mrStreams);
- }
- else if(p.getType().equals("data_router") || p.getType().equals("data router")){
+ } else if (p.getType().equals("data_router") || p.getType().equals("data router")) {
String feed = p.getConfig_key() + "_feed";
DmaapStreams drStreams = new DmaapStreams();
retInputs = drStreams.createStreams(inps, cs, feed, p.getType(), p.getConfig_key(), p.getRoute(), 'p');
@@ -222,15 +221,14 @@ public class Properties {
//set the stream subscribes
ArrayList<DmaapStreams> subStreams = new ArrayList();
- if(cs.getStreams().getSubscribes() != null) {
- for(Subscribes s: cs.getStreams().getSubscribes()) {
- if(s.getType().equals("message_router") || s.getType().equals("message router")) {
+ if (cs.getStreams().getSubscribes() != null) {
+ for (Subscribes s : cs.getStreams().getSubscribes()) {
+ if (s.getType().equals("message_router") || s.getType().equals("message router")) {
String topic = s.getConfig_key() + "_topic";
DmaapStreams mrStreams = new DmaapStreams();
retInputs = mrStreams.createStreams(inps, cs, topic, s.getType(), s.getConfig_key(), s.getRoute(), 's');
subStreams.add(mrStreams);
- }
- else if(s.getType().equals("data_router") || s.getType().equals("data router")){
+ } else if (s.getType().equals("data_router") || s.getType().equals("data router")) {
String feed = s.getConfig_key() + "_feed";
DmaapStreams drStreams = new DmaapStreams();
retInputs = drStreams.createStreams(inps, cs, feed, s.getType(), s.getConfig_key(), s.getRoute(), 's');
@@ -239,10 +237,10 @@ public class Properties {
}
}
- if(pubStreams.size() != 0) {
+ if (pubStreams.size() != 0) {
this.setStreams_publishes(pubStreams);
}
- if(subStreams.size() != 0) {
+ if (subStreams.size() != 0) {
this.setStreams_subscribes(subStreams);
}
@@ -262,10 +260,24 @@ public class Properties {
useTLSFlag.setGet_input("use_tls");
tlsInfo.setUseTls(useTLSFlag);
this.setTls_info(tlsInfo);
- LinkedHashMap<String, Object> useTlsFlagInput = new LinkedHashMap<String, Object>();
- useTlsFlagInput.put("type", "boolean");
- useTlsFlagInput.put("description", "flag to indicate tls enable/disable");
- useTlsFlagInput.put("default", cs.getAuxilary().getTls_info().get("use_tls"));
+ LinkedHashMap<String, Object> useTlsFlagInput = makeInput("boolean",
+ "flag to indicate tls enable/disable",
+ cs.getAuxilary().getTls_info().get("use_tls"));
retInputs.put("use_tls", useTlsFlagInput);
}
+
+ private void addExternalTlsInfo(ComponentSpec cs, Map<String, LinkedHashMap<String, Object>> retInputs) {
+ if(cs.getAuxilary().getTls_info().get(ExternalTlsInfo.USE_EXTERNAL_TLS_FIELD) == null)
+ return;
+ this.setExternal_cert(ExternalTlsInfo.createFromComponentSpec(cs));
+ retInputs.putAll(ExternalTlsInfo.createInputMapFromComponentSpec(cs));
+ }
+
+ static LinkedHashMap<String, Object> makeInput(String type, String description, Object defaultValue) {
+ LinkedHashMap<String, Object> inputMap = new LinkedHashMap<>();
+ inputMap.put("type", type);
+ inputMap.put("description", description);
+ inputMap.put("default", defaultValue);
+ return inputMap;
+ }
}