* * org.onap.dcae
* * ================================================================================
* * Copyright (c) 2020 AT&T Intellectual Property. All rights reserved.
+ * * Copyright (c) 2021 Nokia. All rights reserved.
* * ================================================================================
* * Modifications Copyright (c) 2021 Nokia
* * ================================================================================
package org.onap.blueprintgenerator.service.common;
-import org.onap.blueprintgenerator.constants.Constants;
import org.onap.blueprintgenerator.model.common.Appconfig;
-import org.onap.blueprintgenerator.model.common.Dmaap;
+import org.onap.blueprintgenerator.model.common.BaseStream;
import org.onap.blueprintgenerator.model.common.GetInput;
import org.onap.blueprintgenerator.model.componentspec.OnapComponentSpec;
import org.onap.blueprintgenerator.model.componentspec.common.Calls;
import org.onap.blueprintgenerator.model.componentspec.common.Parameters;
-import org.onap.blueprintgenerator.model.componentspec.common.Publishes;
-import org.onap.blueprintgenerator.model.componentspec.common.Subscribes;
import org.onap.blueprintgenerator.service.base.BlueprintHelperService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @author : Ravi Mantena
- * @date 10/16/2020 Application: ONAP - Blueprint Generator Common ONAP Service used to create App
- * Config
+ * @date 10/16/2020 Application: ONAP - Blueprint Generator Common ONAP Service used to create App Config
*/
@Service("onapAppConfigService")
public class AppConfigService {
@Autowired
private StreamService streamService;
+
/**
- * Creates Inputs section under App Config with Publishes, Subscribes, Parameters sections by
- * checking Datarouter/MessageRouter/override/Dmaap values
+ * Creates Inputs section under App Config with Publishes, Subscribes, Parameters sections by checking
+ * Datarouter/MessageRouter/override/Dmaap values
*
- * @param inputs Inputs
+ * @param inputs Inputs
* @param onapComponentSpec Onap Component Specification
- * @param override Parameter to Service Component Override
- * @param isDmaap Dmaap Argument
+ * @param isDmaap Dmaap Argument
* @return
*/
public Map<String, Object> createAppconfig(
- Map<String, LinkedHashMap<String, Object>> inputs,
+ Map<String, Map<String, Object>> inputs,
OnapComponentSpec onapComponentSpec,
- String override,
boolean isDmaap) {
Map<String, Object> response = new HashMap<>();
Calls[] call = new Calls[0];
appconfig.setService_calls(call);
- Map<String, Dmaap> streamPublishes = streamService.createStreamPublishes(
+ Map<String, BaseStream> streamPublishes = streamService.createStreamPublishes(
onapComponentSpec, blueprintHelperService, dmaapService, inputs, isDmaap);
- Map<String, Dmaap> streamSubscribes = streamService.createStreamSubscribes(
+ Map<String, BaseStream> streamSubscribes = streamService.createStreamSubscribes(
onapComponentSpec, blueprintHelperService, dmaapService, inputs, isDmaap);
appconfig.setStreams_publishes(streamPublishes);
paramInput.setBpInputName(pName);
parameters.put(pName, paramInput);
if (!"".equals(p.getValue())) {
- LinkedHashMap<String, Object> pInputs =
- blueprintHelperService.createStringInput(p.getValue());
+ Map<String, Object> pInputs = createInputFromParameter(p);
inputs.put(pName, pInputs);
} else {
LinkedHashMap<String, Object> pInputs = new LinkedHashMap<>();
}
}
}
- if (override != null) {
- GetInput ov = new GetInput();
- ov.setBpInputName(Constants.SERVICE_COMPONENT_NAME_OVERRIDE);
- parameters.put(Constants.SERVICE_COMPONENT_NAME_OVERRIDE, ov);
- LinkedHashMap<String, Object> over = blueprintHelperService.createStringInput(override);
- inputs.put(Constants.SERVICE_COMPONENT_NAME_OVERRIDE, over);
- }
+
appconfig.setParams(parameters);
response.put("appconfig", appconfig);
response.put("inputs", inputs);
return response;
}
+
+ private Map<String, Object> createInputFromParameter(Parameters parameter) {
+ String inputType = parameter.getType() == null ? "string" : parameter.getType();
+
+ return blueprintHelperService.createInputByType(inputType, parameter.getValue());
+ }
}