\r
import static org.junit.Assert.assertEquals;\r
import static org.junit.Assert.fail;\r
+import static org.openecomp.mso.bpmn.core.json.JsonUtils.getJsonValue;\r
+import static org.openecomp.mso.bpmn.core.json.JsonUtils.updJsonValue;\r
\r
import java.io.IOException;\r
import java.io.StringReader;\r
import java.lang.reflect.Field;\r
import java.lang.reflect.Modifier;\r
import java.util.ArrayList;\r
-import java.util.Collections;\r
-import java.util.Comparator;\r
import java.util.HashMap;\r
import java.util.Iterator;\r
import java.util.List;\r
import org.custommonkey.xmlunit.XMLUnit;\r
import org.jboss.resteasy.spi.AsynchronousResponse;\r
import org.json.JSONArray;\r
+import org.json.JSONObject;\r
import org.junit.Before;\r
import org.junit.Rule;\r
import org.openecomp.mso.bpmn.common.adapter.sdnc.CallbackHeader;\r
import org.openecomp.mso.bpmn.common.workflow.service.WorkflowAsyncResource;\r
import org.openecomp.mso.bpmn.common.workflow.service.WorkflowMessageResource;\r
import org.openecomp.mso.bpmn.common.workflow.service.WorkflowResponse;\r
-import org.openecomp.mso.bpmn.core.utils.CamundaDBSetup;\r
import org.openecomp.mso.bpmn.core.PropertyConfigurationSetup;\r
import org.openecomp.mso.bpmn.core.domain.Resource;\r
import org.openecomp.mso.bpmn.core.domain.ServiceDecomposition;\r
-\r
-import static org.openecomp.mso.bpmn.core.json.JsonUtils.*;\r
+import org.openecomp.mso.bpmn.core.utils.CamundaDBSetup;\r
import org.w3c.dom.Document;\r
import org.w3c.dom.Element;\r
import org.w3c.dom.Node;\r
List<ResponseTransformer> transformerList = new ArrayList<ResponseTransformer>();\r
\r
for (Field field : getClass().getFields()) {\r
- WorkflowTestTransformer annotation = (WorkflowTestTransformer)\r
- field.getAnnotation(WorkflowTestTransformer.class);\r
+ WorkflowTestTransformer annotation = field.getAnnotation(WorkflowTestTransformer.class);\r
\r
if (annotation == null) {\r
continue;\r
String businessKey, String request, Map<String, Object> injectedVariables,\r
boolean serviceInstantiationModel) {\r
\r
- Map<String, Object> variables = new HashMap<String, Object>();\r
+ Map<String, Object> variables = new HashMap<>();\r
\r
// These variables may be overridded by injected variables.\r
variables.put("mso-service-request-timeout", "180");\r
* @return a VariableMap\r
*/\r
private VariableMapImpl createVariableMapImpl(Map<String, Object> variables) {\r
- Map<String, Object> wrappedVariables = new HashMap<String, Object>();\r
+ Map<String, Object> wrappedVariables = new HashMap<>();\r
\r
for (String key : variables.keySet()) {\r
Object value = variables.get(key);\r
* @return the wrapped variable\r
*/\r
private Map<String, Object> wrapVariableValue(Object value) {\r
- HashMap<String, Object> valueMap = new HashMap<String, Object>();\r
+ HashMap<String, Object> valueMap = new HashMap<>();\r
valueMap.put("value", value);\r
return valueMap;\r
}\r
for(Resource resource:resourceList){\r
resourceId = resource.getResourceId();\r
}\r
+ //TODO.. most other locations refer to solutionInfo.placementInfo \r
String homingList = getJsonValue(content, "solutionInfo.placement");\r
- JSONArray placementArr = new JSONArray(homingList);\r
+ JSONArray placementArr = null;\r
+ try {\r
+ placementArr = new JSONArray(homingList);\r
+ }\r
+ catch (Exception e) {\r
+ return false;\r
+ }\r
if(placementArr.length() == 1){\r
content = content.replace("((SERVICE_RESOURCE_ID))", resourceId);\r
}\r
String licenseInfoList = getJsonValue(content, "solutionInfo.licenseInfo");\r
- JSONArray licenseArr = new JSONArray(licenseInfoList);\r
+ JSONArray licenseArr = null;\r
+ try {\r
+ licenseArr = new JSONArray(licenseInfoList);\r
+ }\r
+ catch (Exception e) {\r
+ return false;\r
+ }\r
if(licenseArr.length() == 1){\r
content = content.replace("((SERVICE_RESOURCE_ID))", resourceId);\r
}\r
}\r
+ else {\r
+ try {\r
+ String homingList = getJsonValue(content, "solutionInfo.placementInfo");\r
+ String licenseInfoList = getJsonValue(content, "solutionInfo.licenseInfo");\r
+ JSONArray placementArr = new JSONArray(homingList);\r
+ JSONArray licenseArr = new JSONArray(licenseInfoList);\r
+ for (Resource resource: resourceList) {\r
+ String resourceModuleName = resource.getModelInfo().getModelInstanceName();\r
+ String resourceId = resource.getResourceId();\r
+\r
+ for (int i=0; i<placementArr.length(); i++) {\r
+ JSONObject placementObj = placementArr.getJSONObject(i);\r
+ String placementModuleName = placementObj.getString("resourceModuleName");\r
+ if (placementModuleName.equalsIgnoreCase(resourceModuleName)) {\r
+ String placementString = placementObj.toString();\r
+ placementString = placementString.replace("((SERVICE_RESOURCE_ID))", resourceId);\r
+ JSONObject newPlacementObj = new JSONObject(placementString);\r
+ placementArr.put(i, newPlacementObj);\r
+ }\r
+ }\r
+ \r
+ for (int i=0; i<licenseArr.length(); i++) {\r
+ JSONObject licenseObj = licenseArr.getJSONObject(i);\r
+ String licenseModuleName = licenseObj.getString("resourceModuleName");\r
+ if (licenseModuleName.equalsIgnoreCase(resourceModuleName)) {\r
+ String licenseString = licenseObj.toString();\r
+ licenseString = licenseString.replace("((SERVICE_RESOURCE_ID))", resourceId);\r
+ JSONObject newLicenseObj = new JSONObject(licenseString);\r
+ licenseArr.put(i, newLicenseObj);\r
+ }\r
+ }\r
+ }\r
+ String newPlacementInfos = placementArr.toString();\r
+ String newLicenseInfos = licenseArr.toString();\r
+ content = updJsonValue(content, "solutionInfo.placementInfo", newPlacementInfos);\r
+ content = updJsonValue(content, "solutionInfo.licenseInfo", newLicenseInfos);\r
+ }\r
+ catch(Exception e) {\r
+ return false;\r
+ }\r
+ \r
+ }\r
}\r
}\r
System.out.println("Injecting " + messageType + " message");\r
return null;\r
}\r
\r
- processInstanceList.sort(new Comparator<HistoricProcessInstance>() {\r
- public int compare(HistoricProcessInstance m1, HistoricProcessInstance m2) {\r
- return m1.getStartTime().compareTo(m2.getStartTime());\r
- }\r
- });\r
+ processInstanceList.sort((m1, m2) -> m1.getStartTime().compareTo(m2.getStartTime()));\r
\r
HistoricProcessInstance processInstance = processInstanceList.get(0);\r
\r
return null;\r
}\r
\r
- processInstanceList.sort(new Comparator<HistoricProcessInstance>() {\r
- public int compare(HistoricProcessInstance m1, HistoricProcessInstance m2) {\r
- return m1.getStartTime().compareTo(m2.getStartTime());\r
- }\r
- });\r
+ processInstanceList.sort((m1, m2) -> m1.getStartTime().compareTo(m2.getStartTime()));\r
\r
HistoricProcessInstance processInstance = processInstanceList.get(subflowInstanceIndex);\r
\r
* An object that contains callback data for a "program".\r
*/\r
public class CallbackSet {\r
- private final Map<String, CallbackData> map = new HashMap<String, CallbackData>();\r
+ private final Map<String, CallbackData> map = new HashMap<>();\r
\r
/**\r
* Add untyped callback data to the set.\r
/**\r
* Constructor\r
* @param contentType the HTTP content type (optional)\r
- * @param type the callback message type (optional)\r
+ * @param messageType the callback message type (optional)\r
* @param content the content\r
*/\r
public CallbackData(String contentType, String messageType, String content) {\r
* A NamespaceContext class based on a Map.\r
*/\r
private class SimpleNamespaceContext implements NamespaceContext {\r
- private Map<String, String> prefixMap = new HashMap<String, String>();\r
- private Map<String, String> uriMap = new HashMap<String, String>();\r
+ private Map<String, String> prefixMap = new HashMap<>();\r
+ private Map<String, String> uriMap = new HashMap<>();\r
\r
public synchronized void add(String prefix, String uri) {\r
prefixMap.put(prefix, uri);\r
\r
@Override\r
public Iterator<String> getPrefixes(String uri) {\r
- List<String> list = new ArrayList<String>();\r
+ List<String> list = new ArrayList<>();\r
String prefix = uriMap.get(uri);\r
if (prefix != null) {\r
list.add(prefix);\r