Fix Technical Debt, add Unit tests for SO 19/28519/2
authorvdmeer <sven.van.der.meer@ericsson.com>
Thu, 18 Jan 2018 12:50:32 +0000 (12:50 +0000)
committervdmeer <sven.van.der.meer@ericsson.com>
Thu, 18 Jan 2018 13:44:16 +0000 (13:44 +0000)
Converted to POJOs, fixed sona lint errors, added JUnit tests
POJOs now have only private members and getters/setters
This implicated actors, simulators, and existing tests

Issue-ID: POLICY-455
Change-Id: I4b80f729565e8675822a890892b15676908f73b4
Signed-off-by: vdmeer.sven <sven.van.der.meer@ericsson.com>
42 files changed:
controlloop/common/actors/actor.so/src/main/java/org/onap/policy/controlloop/actor/so/SOActorServiceProvider.java
controlloop/common/eventmanager/src/main/java/org/onap/policy/controlloop/eventmanager/ControlLoopOperationManager.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SOAsyncRequestStatus.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SOCloudConfiguration.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SOInstanceReferences.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SOManager.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SOModelInfo.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SOPolicyException.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SORelatedInstance.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SORelatedInstanceListElement.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SORequest.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SORequestDetails.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SORequestError.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SORequestInfo.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SORequestParameters.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SORequestReferences.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SORequestStatus.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SOResponse.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SOResponseWrapper.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SOServiceException.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/SOSubscriberInfo.java
controlloop/common/model-impl/so/src/main/java/org/onap/policy/so/util/Serialization.java
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestDemo.java
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoAsyncRequestStatus.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoCloudConfiguration.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoInstanceReferences.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoModelInfo.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoPolicyException.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRelatedInstance.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRelatedInstanceListElement.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequest.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestDetails.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestError.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestInfo.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestParameters.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestReferences.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestStatus.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoResponse.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoResponseWrapper.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoServiceException.java [new file with mode: 0755]
controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoSubscriberInfo.java [new file with mode: 0755]
controlloop/common/simulators/src/test/java/org/onap/policy/simulators/SoSimulatorTest.java

index ad27a02..64008e7 100644 (file)
@@ -334,59 +334,59 @@ public class SOActorServiceProvider implements Actor {
                        // Construct SO Request
                        SORequest request = new SORequest();
 //                     request.requestId = onset.requestID;
-                       request.requestDetails = new SORequestDetails();
-                       request.requestDetails.modelInfo = new SOModelInfo();
-                       request.requestDetails.cloudConfiguration = new SOCloudConfiguration();
-                       request.requestDetails.requestInfo = new SORequestInfo();
-                       request.requestDetails.requestParameters = new SORequestParameters();
-                       request.requestDetails.requestParameters.userParams = null;
+                       request.setRequestDetails(new SORequestDetails());
+                       request.getRequestDetails().setModelInfo(new SOModelInfo());
+                       request.getRequestDetails().setCloudConfiguration(new SOCloudConfiguration());
+                       request.getRequestDetails().setRequestInfo(new SORequestInfo());
+                       request.getRequestDetails().setRequestParameters(new SORequestParameters());
+                       request.getRequestDetails().getRequestParameters().setUserParams(null);
                        //
                        // cloudConfiguration
                        //
-                       request.requestDetails.cloudConfiguration.lcpCloudRegionId = getCloudRegionItemCloudRegionId();
-                       request.requestDetails.cloudConfiguration.tenantId = getTenantItemTenantId();
+                       request.getRequestDetails().getCloudConfiguration().setLcpCloudRegionId(getCloudRegionItemCloudRegionId());
+                       request.getRequestDetails().getCloudConfiguration().setTenantId(getTenantItemTenantId());
                        //
                        // modelInfo
                        //
-                       request.requestDetails.modelInfo.modelType = "vfModule";
-                       request.requestDetails.modelInfo.modelInvariantId = getVfModuleItemModelInvariantId();
-                       request.requestDetails.modelInfo.modelVersionId = getVfModuleItemModelNameVersionId();
-                       request.requestDetails.modelInfo.modelName = getVfModuleItemModelName();
-                       request.requestDetails.modelInfo.modelVersion = getVfModuleItemModelVersionId();
+                       request.getRequestDetails().getModelInfo().setModelType("vfModule");
+                       request.getRequestDetails().getModelInfo().setModelInvariantId(getVfModuleItemModelInvariantId());
+                       request.getRequestDetails().getModelInfo().setModelVersionId(getVfModuleItemModelNameVersionId());
+                       request.getRequestDetails().getModelInfo().setModelName(getVfModuleItemModelName());
+                       request.getRequestDetails().getModelInfo().setModelVersion(getVfModuleItemModelVersionId());
                        //
                        // requestInfo
                        //
-                       request.requestDetails.requestInfo.instanceName = getVfModuleItemVfModuleName();
-                       request.requestDetails.requestInfo.source = "POLICY";
-                       request.requestDetails.requestInfo.suppressRollback = false;
-                       request.requestDetails.requestInfo.requestorId = "policy";
+                       request.getRequestDetails().getRequestInfo().setInstanceName(getVfModuleItemVfModuleName());
+                       request.getRequestDetails().getRequestInfo().setSource("POLICY");
+                       request.getRequestDetails().getRequestInfo().setSuppressRollback(false);
+                       request.getRequestDetails().getRequestInfo().setRequestorId("policy");
                        //
                        // relatedInstanceList
                        //
                        SORelatedInstanceListElement relatedInstanceListElement1 = new SORelatedInstanceListElement();
                        SORelatedInstanceListElement relatedInstanceListElement2 = new SORelatedInstanceListElement();
-                       relatedInstanceListElement1.relatedInstance = new SORelatedInstance();
-                       relatedInstanceListElement2.relatedInstance = new SORelatedInstance();
+                       relatedInstanceListElement1.setRelatedInstance(new SORelatedInstance());
+                       relatedInstanceListElement2.setRelatedInstance(new SORelatedInstance());
                        //
-                       relatedInstanceListElement1.relatedInstance.instanceId = getServiceItemServiceInstanceId();
-                       relatedInstanceListElement1.relatedInstance.modelInfo = new SOModelInfo();
-                       relatedInstanceListElement1.relatedInstance.modelInfo.modelType = "service";
-                       relatedInstanceListElement1.relatedInstance.modelInfo.modelInvariantId = getServiceItemModelInvariantId();
-                       relatedInstanceListElement1.relatedInstance.modelInfo.modelVersionId = getServiceItemModelNameVersionId();
-                       relatedInstanceListElement1.relatedInstance.modelInfo.modelName = getServiceItemModelName();
-                       relatedInstanceListElement1.relatedInstance.modelInfo.modelVersion = getServiceItemModelVersion();
+                       relatedInstanceListElement1.getRelatedInstance().setInstanceId(getServiceItemServiceInstanceId());
+                       relatedInstanceListElement1.getRelatedInstance().setModelInfo(new SOModelInfo());
+                       relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelType("service");
+                       relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelInvariantId(getServiceItemModelInvariantId());
+                       relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelVersionId(getServiceItemModelNameVersionId());
+                       relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelName(getServiceItemModelName());
+                       relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelVersion(getServiceItemModelVersion());
                        //
-                       relatedInstanceListElement2.relatedInstance.instanceId = getVnfItemVnfId();
-                       relatedInstanceListElement2.relatedInstance.modelInfo = new SOModelInfo();
-                       relatedInstanceListElement2.relatedInstance.modelInfo.modelType = "vnf";
-                       relatedInstanceListElement2.relatedInstance.modelInfo.modelInvariantId = getVnfItemModelInvariantId();
-                       relatedInstanceListElement2.relatedInstance.modelInfo.modelVersionId = getVnfItemModelNameVersionId();
-                       relatedInstanceListElement2.relatedInstance.modelInfo.modelName = getVnfItemModelName();
-                       relatedInstanceListElement2.relatedInstance.modelInfo.modelVersion = getVnfItemModelVersion();
-                       relatedInstanceListElement2.relatedInstance.modelInfo.modelCustomizationName = getVnfItemVnfType();
+                       relatedInstanceListElement2.getRelatedInstance().setInstanceId(getVnfItemVnfId());
+                       relatedInstanceListElement2.getRelatedInstance().setModelInfo(new SOModelInfo());
+                       relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelType("vnf");
+                       relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelInvariantId(getVnfItemModelInvariantId());
+                       relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelVersionId(getVnfItemModelNameVersionId());
+                       relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelName(getVnfItemModelName());
+                       relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelVersion(getVnfItemModelVersion());
+                       relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelCustomizationName(getVnfItemVnfType());
                        //      
-                       request.requestDetails.relatedInstanceList.add(relatedInstanceListElement1);
-                       request.requestDetails.relatedInstanceList.add(relatedInstanceListElement2);
+                       request.getRequestDetails().getRelatedInstanceList().add(relatedInstanceListElement1);
+                       request.getRequestDetails().getRelatedInstanceList().add(relatedInstanceListElement2);
                        //
                        // print SO request for debug
                        //
index 0ce3bc5..8edb7ef 100644 (file)
@@ -423,13 +423,13 @@ public class ControlLoopOperationManager implements Serializable {
                } else if (response instanceof SOResponseWrapper) {
                        SOResponseWrapper msoResponse = (SOResponseWrapper) response;
 
-                       switch (msoResponse.SOResponse.httpResponseCode) {
+                       switch (msoResponse.getSoResponse().getHttpResponseCode()) {
                        case 200:
                        case 202:
                                //
                                // Consider it as success
                                //
-                               this.completeOperation(this.attempts, msoResponse.SOResponse.httpResponseCode + " Success", PolicyResult.SUCCESS);
+                               this.completeOperation(this.attempts, msoResponse.getSoResponse().getHttpResponseCode() + " Success", PolicyResult.SUCCESS);
                                if (this.policyResult != null && this.policyResult.equals(PolicyResult.FAILURE_TIMEOUT)) {
                                        return null;
                                }
@@ -438,7 +438,7 @@ public class ControlLoopOperationManager implements Serializable {
                                //
                                // Consider it as failure
                                //
-                               this.completeOperation(this.attempts, msoResponse.SOResponse.httpResponseCode + " Failed", PolicyResult.FAILURE);
+                               this.completeOperation(this.attempts, msoResponse.getSoResponse().getHttpResponseCode() + " Failed", PolicyResult.FAILURE);
                                if (this.policyResult != null && this.policyResult.equals(PolicyResult.FAILURE_TIMEOUT)) {
                                        return null;
                                }
index 97978c7..2cc22f3 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -27,37 +27,99 @@ import com.google.gson.annotations.SerializedName;
 \r
 public class SOAsyncRequestStatus implements Serializable {\r
 \r
-       /**\r
-        * \r
-        */\r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       @SerializedName("correlator")\r
-       public String correlator;\r
-       \r
-       @SerializedName("requestId")\r
-       public String requestId;\r
-       \r
-       @SerializedName("instanceReferences")\r
-       public SOInstanceReferences instanceReferences;\r
-\r
-       @SerializedName("startTime")\r
-       public LocalDateTime startTime;\r
-       \r
-       @SerializedName("finishTime")\r
-       public LocalDateTime finishTime;\r
-       \r
-       @SerializedName("requestScope")\r
-       public String requestScope;\r
-       \r
-       @SerializedName("requestType")\r
-       public String requestType;\r
-       \r
-       @SerializedName("requestStatus")\r
-       public SORequestStatus requestStatus;\r
-       \r
-\r
-       public SOAsyncRequestStatus() {\r
-       }\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("correlator")\r
+    private String correlator;\r
+\r
+    @SerializedName("requestId")\r
+    private String requestId;\r
+\r
+    @SerializedName("instanceReferences")\r
+    private SOInstanceReferences instanceReferences;\r
+\r
+    @SerializedName("startTime")\r
+    private LocalDateTime startTime;\r
+\r
+    @SerializedName("finishTime")\r
+    private LocalDateTime finishTime;\r
+\r
+    @SerializedName("requestScope")\r
+    private String requestScope;\r
+\r
+    @SerializedName("requestType")\r
+    private String requestType;\r
+\r
+    @SerializedName("requestStatus")\r
+    private SORequestStatus requestStatus;\r
+\r
+    public SOAsyncRequestStatus() {\r
+        // required by author\r
+    }\r
+\r
+    public String getCorrelator() {\r
+        return correlator;\r
+    }\r
+\r
+\r
+    public LocalDateTime getFinishTime() {\r
+        return finishTime;\r
+    }\r
+\r
+    public SOInstanceReferences getInstanceReferences() {\r
+        return instanceReferences;\r
+    }\r
+\r
+    public String getRequestId() {\r
+        return requestId;\r
+    }\r
+\r
+    public String getRequestScope() {\r
+        return requestScope;\r
+    }\r
+\r
+    public SORequestStatus getRequestStatus() {\r
+        return requestStatus;\r
+    }\r
+\r
+    public String getRequestType() {\r
+        return requestType;\r
+    }\r
+\r
+    public LocalDateTime getStartTime() {\r
+        return startTime;\r
+    }\r
+\r
+    public void setCorrelator(String correlator) {\r
+        this.correlator = correlator;\r
+    }\r
+\r
+    public void setFinishTime(LocalDateTime finishTime) {\r
+        this.finishTime = finishTime;\r
+    }\r
+\r
+    public void setInstanceReferences(SOInstanceReferences instanceReferences) {\r
+        this.instanceReferences = instanceReferences;\r
+    }\r
+\r
+    public void setRequestId(String requestId) {\r
+        this.requestId = requestId;\r
+    }\r
+\r
+    public void setRequestScope(String requestScope) {\r
+        this.requestScope = requestScope;\r
+    }\r
+\r
+    public void setRequestStatus(SORequestStatus requestStatus) {\r
+        this.requestStatus = requestStatus;\r
+    }\r
+\r
+    public void setRequestType(String requestType) {\r
+        this.requestType = requestType;\r
+    }\r
+\r
+    public void setStartTime(LocalDateTime startTime) {\r
+        this.startTime = startTime;\r
+    }\r
 \r
 }\r
index 6b81707..a1233bf 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -22,23 +22,36 @@ package org.onap.policy.so;
 \r
 import java.io.Serializable;\r
 \r
-\r
 import com.google.gson.annotations.SerializedName;\r
 \r
 public class SOCloudConfiguration implements Serializable {\r
 \r
-       /**\r
-        * \r
-        */\r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       @SerializedName("lcpCloudRegionId")\r
-       public String lcpCloudRegionId;\r
-       \r
-       @SerializedName("tenantId")\r
-       public String tenantId;\r
-\r
-       public SOCloudConfiguration() {\r
-       }\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("lcpCloudRegionId")\r
+    private String lcpCloudRegionId;\r
+\r
+    @SerializedName("tenantId")\r
+    private String tenantId;\r
+\r
+    public SOCloudConfiguration() {\r
+        //required by author\r
+    }\r
+\r
+    public String getLcpCloudRegionId() {\r
+        return lcpCloudRegionId;\r
+    }\r
+\r
+    public String getTenantId() {\r
+        return tenantId;\r
+    }\r
+\r
+    public void setLcpCloudRegionId(String lcpCloudRegionId) {\r
+        this.lcpCloudRegionId = lcpCloudRegionId;\r
+    }\r
+\r
+    public void setTenantId(String tenantId) {\r
+        this.tenantId = tenantId;\r
+    }\r
 \r
 }\r
index 97abd39..f215508 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -22,23 +22,36 @@ package org.onap.policy.so;
 \r
 import java.io.Serializable;\r
 \r
-\r
 import com.google.gson.annotations.SerializedName;\r
 \r
 public class SOInstanceReferences implements Serializable {\r
 \r
-       /**\r
-        * \r
-        */\r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       @SerializedName("requestId")\r
-       public String requestId;\r
-       \r
-       @SerializedName("instanceId")\r
-       public String instanceId;\r
-       \r
-       public SOInstanceReferences() {\r
-       }\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("requestId")\r
+    private String requestId;\r
+\r
+    @SerializedName("instanceId")\r
+    private String instanceId;\r
+\r
+    public SOInstanceReferences() {\r
+        //requried by author\r
+    }\r
+\r
+    public String getInstanceId() {\r
+        return instanceId;\r
+    }\r
+\r
+    public String getRequestId() {\r
+        return requestId;\r
+    }\r
+\r
+    public void setInstanceId(String instanceId) {\r
+        this.instanceId = instanceId;\r
+    }\r
+\r
+    public void setRequestId(String requestId) {\r
+        this.requestId = requestId;\r
+    }\r
 \r
 }\r
index e4d8af8..4b1d1d6 100644 (file)
@@ -1,6 +1,6 @@
 /*-
  * ============LICENSE_START=======================================================
- * mso
+ * so
  * ================================================================================
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
@@ -42,159 +42,176 @@ import com.google.gson.JsonSyntaxException;
 
 public final class SOManager {
 
-       private static final Logger logger = LoggerFactory.getLogger(SOManager.class);
-       private static final Logger netLogger = LoggerFactory.getLogger(org.onap.policy.drools.event.comm.Topic.NETWORK_LOGGER);
-       private static ExecutorService executors = Executors.newCachedThreadPool();
-               
-       public static SOResponse createModuleInstance(String url, String urlBase, String username, String password, SORequest request) {
-               
-               //
-               // Call REST
-               //
-               Map<String, String> headers = new HashMap<String, String>();
-               //headers.put("X-FromAppId", "POLICY");
-               //headers.put("X-TransactionId", requestID.toString());
-               headers.put("Accept", "application/json");
-               
-               //
-               // 201 - CREATED - you are done just return 
-               //
-               String requestJson = Serialization.gsonPretty.toJson(request);
-               netLogger.info("[OUT|{}|{}|]{}{}", "SO", url, System.lineSeparator(), requestJson);
-               Pair<Integer, String> httpDetails = new RESTManager().post(url, username, password, headers, "application/json", requestJson);
-               
-               if (httpDetails == null) {
-                       return null;
-               }
-               
-               if (httpDetails.a == 202) {
-                       try {
-                               SOResponse response = Serialization.gsonPretty.fromJson(httpDetails.b, SOResponse.class);
-                               
-                               String body = Serialization.gsonPretty.toJson(response);
-                               logger.debug("***** Response to post:");
-                               logger.debug(body);
-                               
-                               String requestId = response.requestReferences.requestId;
-                               int attemptsLeft = 20;
-                               
-                               //String getUrl = "/orchestrationRequests/v2/"+requestId;
-                               String urlGet = urlBase + "/orchestrationRequests/v2/"+requestId;
-                               SOResponse responseGet = null;
-                               
-                               while(attemptsLeft-- > 0){
-                                       
-                                       Pair<Integer, String> httpDetailsGet = new RESTManager().get(urlGet, username, password, headers);
-                                       responseGet = Serialization.gsonPretty.fromJson(httpDetailsGet.b, SOResponse.class);
-                                       netLogger.info("[IN|{}|{}|]{}{}", "SO", urlGet, System.lineSeparator(), httpDetailsGet.b);
-                    
-                                       body = Serialization.gsonPretty.toJson(responseGet);
-                                       logger.debug("***** Response to get:");
-                                       logger.debug(body);
-                                       
-                                       if(httpDetailsGet.a == 200){
-                                               if(responseGet.request.requestStatus.requestState.equalsIgnoreCase("COMPLETE") || 
-                                                               responseGet.request.requestStatus.requestState.equalsIgnoreCase("FAILED")){
-                                                       logger.debug("***** ########  VF Module Creation "+responseGet.request.requestStatus.requestState);
-                                                       return responseGet;
-                                               }
-                                       }
-                                       Thread.sleep(20000);
-                               }
-
-                               if (responseGet != null
-                                && responseGet.request != null
-                                &&     responseGet.request.requestStatus != null
-                                && responseGet.request.requestStatus.requestState != null) {
-                                       logger.warn("***** ########  VF Module Creation timeout. Status: ( {})", responseGet.request.requestStatus.requestState);
-                               }
-
-                               return responseGet;
-                       } catch (JsonSyntaxException e) {
-                               logger.error("Failed to deserialize into SOResponse: ", e);
-                       } catch (InterruptedException e) {
-                               logger.error("Interrupted exception: ", e);
-                               Thread.currentThread().interrupt();
-                       }
-               }
-               
-               
-               
-               
-               return null;
-       }
-
-       /**
-        * 
-        * @param wm
-        * @param url
-        * @param urlBase
-        * @param username
-        * @param password
-        * @param request
-        * 
-        * This method makes an asynchronous Rest call to MSO and inserts the response into the Drools working memory
-        */
-         public void asyncSORestCall(String requestID, WorkingMemory wm, String serviceInstanceId, String vnfInstanceId, SORequest request) {
-                 executors.submit(new Runnable()
-                       {
-                         @Override
-                               public void run()
-                         {
-                                 try {
-                                         String serverRoot = PolicyEngine.manager.getEnvironmentProperty("so.url");
-                                         String username = PolicyEngine.manager.getEnvironmentProperty("so.username");
-                                         String password = PolicyEngine.manager.getEnvironmentProperty("so.password");
-                                         
-                                         String url = serverRoot + "/serviceInstances/v5/" + serviceInstanceId + "/vnfs/" + vnfInstanceId + "/vfModules";
-                                         
-                                         String auth = username + ":" + password;
-                                         
-                                         Map<String, String> headers = new HashMap<String, String>();
-                                         byte[] encodedBytes = Base64.getEncoder().encode(auth.getBytes());
-                                         headers.put("Accept", "application/json");
-                                         headers.put("Authorization", "Basic " + new String(encodedBytes));
-                                         
-                                         Gson gsonPretty = new GsonBuilder().disableHtmlEscaping()
-                                                         .setPrettyPrinting()
-                                                         .create();
-                                         
-                                         String soJson = gsonPretty.toJson(request);
-                                         
-                                         SOResponse so = new SOResponse();
-                                         netLogger.info("[OUT|{}|{}|]{}{}", "SO", url, System.lineSeparator(), soJson);
-                                         Pair<Integer, String> httpResponse = new RESTManager().post(url, "policy", "policy", headers, "application/json", soJson);
-                                         
-                                         if (httpResponse != null ) {
-                                                 if (httpResponse.b != null && httpResponse.a != null) {
-                                                         netLogger.info("[IN|{}|{}|]{}{}", url, "SO", System.lineSeparator(), httpResponse.b);
-                                                         
-                                                         Gson gson = new Gson();
-                                                         so = gson.fromJson(httpResponse.b, SOResponse.class);
-                                                         so.httpResponseCode = httpResponse.a;
-                                                 } else {
-                                                         logger.error("SO Response status/code is null.");
-                                                         so.httpResponseCode = 999;
-                                                 }
-                                                 
-                                         } else {
-                                                 logger.error("SO Response returned null.");
-                                                 so.httpResponseCode = 999;
-                                         }
-                                         
-                                         SOResponseWrapper SoWrapper = new SOResponseWrapper(so, requestID);
-                                         wm.insert(SoWrapper);
-                                         logger.info("SOResponse inserted " + gsonPretty.toJson(SoWrapper));
-                                 } catch (Exception e) {
-                                         logger.error("Error while performing asyncSORestCall: "+ e.getMessage(),e);
-                                         
-                                         // create dummy SO object to trigger cleanup
-                                         SOResponse so = new SOResponse();
-                                         so.httpResponseCode = 999;
-                                         wm.insert(so);
-                                 }
-                         }
-                       });
-         }
+    private static final Logger logger = LoggerFactory.getLogger(SOManager.class);
+    private static final Logger netLogger =
+            LoggerFactory.getLogger(org.onap.policy.drools.event.comm.Topic.NETWORK_LOGGER);
+    private static ExecutorService executors = Executors.newCachedThreadPool();
+
+    static final String MEDIA_TYPE = "application/json";
+
+    static final String LINE_SEPARATOR = System.lineSeparator();
+
+    public static SOResponse createModuleInstance(String url, String urlBase, String username,
+            String password, SORequest request) {
+
+        //
+        // Call REST
+        //
+        Map<String, String> headers = new HashMap<>();
+        headers.put("Accept", MEDIA_TYPE);
+
+        //
+        // 201 - CREATED - you are done just return
+        //
+        String requestJson = Serialization.gsonPretty.toJson(request);
+        netLogger.info("[OUT|{}|{}|]{}{}", "SO", url, LINE_SEPARATOR, requestJson);
+        Pair<Integer, String> httpDetails =
+                new RESTManager().post(url, username, password, headers, MEDIA_TYPE, requestJson);
+
+        if (httpDetails == null) {
+            return null;
+        }
+
+        if (httpDetails.a == 202) {
+            try {
+                SOResponse response =
+                        Serialization.gsonPretty.fromJson(httpDetails.b, SOResponse.class);
+
+                String body = Serialization.gsonPretty.toJson(response);
+                logger.debug("***** Response to post:");
+                logger.debug(body);
+
+                String requestId = response.getRequestReferences().getRequestId();
+                int attemptsLeft = 20;
+
+                String urlGet = urlBase + "/orchestrationRequests/v2/" + requestId;
+                SOResponse responseGet = null;
+
+                while (attemptsLeft-- > 0) {
+
+                    Pair<Integer, String> httpDetailsGet =
+                            new RESTManager().get(urlGet, username, password, headers);
+                    responseGet =
+                            Serialization.gsonPretty.fromJson(httpDetailsGet.b, SOResponse.class);
+                    netLogger.info("[IN|{}|{}|]{}{}", "SO", urlGet, LINE_SEPARATOR,
+                            httpDetailsGet.b);
+
+                    body = Serialization.gsonPretty.toJson(responseGet);
+                    logger.debug("***** Response to get:");
+                    logger.debug(body);
+
+                    if (httpDetailsGet.a == 200) {
+                        if (responseGet.getRequest().getRequestStatus().getRequestState()
+                                .equalsIgnoreCase("COMPLETE")
+                                || responseGet.getRequest().getRequestStatus().getRequestState()
+                                        .equalsIgnoreCase("FAILED")) {
+                            logger.debug("***** ########  VF Module Creation {}",
+                                    responseGet.getRequest().getRequestStatus().getRequestState());
+                            return responseGet;
+                        }
+                    }
+                    Thread.sleep(20000);
+                }
+
+                if (responseGet != null && responseGet.getRequest() != null
+                        && responseGet.getRequest().getRequestStatus() != null
+                        && responseGet.getRequest().getRequestStatus().getRequestState() != null) {
+                    logger.warn("***** ########  VF Module Creation timeout. Status: ( {})",
+                            responseGet.getRequest().getRequestStatus().getRequestState());
+                }
+
+                return responseGet;
+            }
+            catch (JsonSyntaxException e) {
+                logger.error("Failed to deserialize into SOResponse: ", e);
+            }
+            catch (InterruptedException e) {
+                logger.error("Interrupted exception: ", e);
+                Thread.currentThread().interrupt();
+            }
+        }
+
+
+
+        return null;
+    }
+
+    /**
+     * 
+     * @param wm
+     * @param url
+     * @param urlBase
+     * @param username
+     * @param password
+     * @param request
+     * 
+     *        This method makes an asynchronous Rest call to MSO and inserts the response into the
+     *        Drools working memory
+     */
+    public void asyncSORestCall(String requestID, WorkingMemory wm, String serviceInstanceId,
+            String vnfInstanceId, SORequest request) {
+        executors.submit(new Runnable() {
+            @Override
+            public void run() {
+                try {
+                    String serverRoot = PolicyEngine.manager.getEnvironmentProperty("so.url");
+                    String username = PolicyEngine.manager.getEnvironmentProperty("so.username");
+                    String password = PolicyEngine.manager.getEnvironmentProperty("so.password");
+
+                    String url = serverRoot + "/serviceInstances/v5/" + serviceInstanceId + "/vnfs/"
+                            + vnfInstanceId + "/vfModules";
+
+                    String auth = username + ":" + password;
+
+                    Map<String, String> headers = new HashMap<>();
+                    byte[] encodedBytes = Base64.getEncoder().encode(auth.getBytes());
+                    headers.put("Accept", MEDIA_TYPE);
+                    headers.put("Authorization", "Basic " + new String(encodedBytes));
+
+                    Gson gsonPretty =
+                            new GsonBuilder().disableHtmlEscaping().setPrettyPrinting().create();
+
+                    String soJson = gsonPretty.toJson(request);
+
+                    SOResponse so = new SOResponse();
+                    netLogger.info("[OUT|{}|{}|]{}{}", "SO", url, LINE_SEPARATOR, soJson);
+                    Pair<Integer, String> httpResponse = new RESTManager().post(url, "policy",
+                            "policy", headers, MEDIA_TYPE, soJson);
+
+                    if (httpResponse != null) {
+                        if (httpResponse.b != null && httpResponse.a != null) {
+                            netLogger.info("[IN|{}|{}|]{}{}", url, "SO", LINE_SEPARATOR,
+                                    httpResponse.b);
+
+                            Gson gson = new Gson();
+                            so = gson.fromJson(httpResponse.b, SOResponse.class);
+                            so.setHttpResponseCode(httpResponse.a);
+                        }
+                        else {
+                            logger.error("SO Response status/code is null.");
+                            so.setHttpResponseCode(999);
+                        }
+
+                    }
+                    else {
+                        logger.error("SO Response returned null.");
+                        so.setHttpResponseCode(999);
+                    }
+
+                    SOResponseWrapper soWrapper = new SOResponseWrapper(so, requestID);
+                    wm.insert(soWrapper);
+                    logger.info("SOResponse inserted " + gsonPretty.toJson(soWrapper));
+                }
+                catch (Exception e) {
+                    logger.error("Error while performing asyncSORestCall: " + e.getMessage(), e);
+
+                    // create dummy SO object to trigger cleanup
+                    SOResponse so = new SOResponse();
+                    so.setHttpResponseCode(999);
+                    wm.insert(so);
+                }
+            }
+        });
+    }
 
 }
index c6e138a..eb257a7 100644 (file)
@@ -1,6 +1,6 @@
 /*-
  * ============LICENSE_START=======================================================
- * mso
+ * so
  * ================================================================================
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
@@ -22,38 +22,91 @@ package org.onap.policy.so;
 
 import java.io.Serializable;
 
-
 import com.google.gson.annotations.SerializedName;
 
 public class SOModelInfo implements Serializable {
 
-       /**
-        * 
-        */
-       private static final long serialVersionUID = -3283942659786236032L;
-       
-       @SerializedName("modelType")
-       public String modelType;
-       
-       @SerializedName("modelInvariantId")
-       public String modelInvariantId;
-       
-       @SerializedName("modelVersionId")
-       public String modelVersionId;
-       
-       @SerializedName("modelName")
-       public String modelName;
-       
-       @SerializedName("modelVersion")
-       public String modelVersion;
-
-       @SerializedName("modelCustomizationName")
-       public String modelCustomizationName;
-
-       @SerializedName("modelCustomizationId")
-       public String modelCustomizationId;
-
-       public SOModelInfo() {
-       }
+    private static final long serialVersionUID = -3283942659786236032L;
+
+    @SerializedName("modelType")
+    private String modelType;
+
+    @SerializedName("modelInvariantId")
+    private String modelInvariantId;
+
+    @SerializedName("modelVersionId")
+    private String modelVersionId;
+
+    @SerializedName("modelName")
+    private String modelName;
+
+    @SerializedName("modelVersion")
+    private String modelVersion;
+
+    @SerializedName("modelCustomizationName")
+    private String modelCustomizationName;
+
+    @SerializedName("modelCustomizationId")
+    private String modelCustomizationId;
+
+    public SOModelInfo() {
+      //required by author
+    }
+
+    public String getModelCustomizationId() {
+        return modelCustomizationId;
+    }
+
+    public String getModelCustomizationName() {
+        return modelCustomizationName;
+    }
+
+    public String getModelInvariantId() {
+        return modelInvariantId;
+    }
+
+    public String getModelName() {
+        return modelName;
+    }
+
+    public String getModelType() {
+        return modelType;
+    }
+
+    public String getModelVersion() {
+        return modelVersion;
+    }
+
+    public String getModelVersionId() {
+        return modelVersionId;
+    }
+
+    public void setModelCustomizationId(String modelCustomizationId) {
+        this.modelCustomizationId = modelCustomizationId;
+    }
+
+    public void setModelCustomizationName(String modelCustomizationName) {
+        this.modelCustomizationName = modelCustomizationName;
+    }
+
+    public void setModelInvariantId(String modelInvariantId) {
+        this.modelInvariantId = modelInvariantId;
+    }
+
+    public void setModelName(String modelName) {
+        this.modelName = modelName;
+    }
+
+    public void setModelType(String modelType) {
+        this.modelType = modelType;
+    }
+
+    public void setModelVersion(String modelVersion) {
+        this.modelVersion = modelVersion;
+    }
+
+    public void setModelVersionId(String modelVersionId) {
+        this.modelVersionId = modelVersionId;
+    }
 
 }
index 1507339..7065fea 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -26,18 +26,32 @@ import com.google.gson.annotations.SerializedName;
 \r
 public class SOPolicyException implements Serializable {\r
 \r
-       /**\r
-        * \r
-        */\r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       @SerializedName("messageId")\r
-       public String messageId;        \r
-       \r
-       @SerializedName("text")\r
-       public String text;\r
-       \r
-       public SOPolicyException() {\r
-       }\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("messageId")\r
+    private String messageId;\r
+\r
+    @SerializedName("text")\r
+    private String text;\r
+\r
+    public SOPolicyException() {\r
+      //required by author\r
+    }\r
+\r
+    public String getMessageId() {\r
+        return messageId;\r
+    }\r
+\r
+    public String getText() {\r
+        return text;\r
+    }\r
+\r
+    public void setMessageId(String messageId) {\r
+        this.messageId = messageId;\r
+    }\r
+\r
+    public void setText(String text) {\r
+        this.text = text;\r
+    }\r
 \r
 }\r
index ac73730..2bd46e0 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -22,28 +22,49 @@ package org.onap.policy.so;
 \r
 import java.io.Serializable;\r
 \r
-\r
-\r
 import com.google.gson.annotations.SerializedName;\r
 \r
 public class SORelatedInstance implements Serializable {\r
 \r
-       /**\r
-        * \r
-        */\r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       @SerializedName("instanceId")\r
-       public String instanceId;\r
-       \r
-       @SerializedName("instanceName")\r
-       public String instanceName;\r
-       \r
-       @SerializedName("modelInfo")\r
-       public SOModelInfo modelInfo;\r
-       \r
-       \r
-       public SORelatedInstance() {\r
-       }\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("instanceId")\r
+    private String instanceId;\r
+\r
+    @SerializedName("instanceName")\r
+    private String instanceName;\r
+\r
+    @SerializedName("modelInfo")\r
+    private SOModelInfo modelInfo;\r
+\r
+    public SORelatedInstance() {\r
+      //required by author\r
+    }\r
+\r
+    public String getInstanceId() {\r
+        return instanceId;\r
+    }\r
+\r
+\r
+    public String getInstanceName() {\r
+        return instanceName;\r
+    }\r
+\r
+    public SOModelInfo getModelInfo() {\r
+        return modelInfo;\r
+    }\r
+\r
+    public void setInstanceId(String instanceId) {\r
+        this.instanceId = instanceId;\r
+    }\r
+\r
+    public void setInstanceName(String instanceName) {\r
+        this.instanceName = instanceName;\r
+    }\r
+\r
+\r
+    public void setModelInfo(SOModelInfo modelInfo) {\r
+        this.modelInfo = modelInfo;\r
+    }\r
 \r
 }\r
index c4b85ab..71fb119 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -22,21 +22,25 @@ package org.onap.policy.so;
 \r
 import java.io.Serializable;\r
 \r
-\r
 import com.google.gson.annotations.SerializedName;\r
 \r
 public class SORelatedInstanceListElement implements Serializable {\r
\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("relatedInstance")\r
+    private SORelatedInstance relatedInstance;\r
+\r
+    public SORelatedInstanceListElement() {\r
+      //required by author\r
+    }\r
+\r
+    public SORelatedInstance getRelatedInstance() {\r
+        return relatedInstance;\r
+    }\r
 \r
-       /**\r
-        * \r
-        */\r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       @SerializedName("relatedInstance")\r
-       public SORelatedInstance relatedInstance;\r
-       \r
-       \r
-       public SORelatedInstanceListElement() {\r
-       }\r
+    public void setRelatedInstance(SORelatedInstance relatedInstance) {\r
+        this.relatedInstance = relatedInstance;\r
+    }\r
 \r
 }\r
index 3e90ff3..be5ef13 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -28,34 +28,87 @@ import com.google.gson.annotations.SerializedName;
 \r
 public class SORequest implements Serializable {\r
 \r
-       /**\r
-        * \r
-        */\r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       @SerializedName("requestId")\r
-       public UUID requestId;\r
-       \r
-       @SerializedName("startTime")\r
-       //public LocalDateTime startTime;\r
-       public String startTime;\r
-       \r
-       @SerializedName("finishTime")\r
-       public LocalDateTime finishTime;\r
-       \r
-       @SerializedName("requestScope")\r
-       public String requestScope;\r
-       \r
-       @SerializedName("requestType")\r
-       public String requestType;\r
-       \r
-       @SerializedName("requestDetails")\r
-       public SORequestDetails requestDetails;\r
-       \r
-       @SerializedName("requestStatus")\r
-       public SORequestStatus requestStatus;\r
-\r
-       public SORequest() {\r
-       }\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("requestId")\r
+    private UUID requestId;\r
+\r
+    @SerializedName("startTime")\r
+    private String startTime;\r
+\r
+    @SerializedName("finishTime")\r
+    private LocalDateTime finishTime;\r
+\r
+    @SerializedName("requestScope")\r
+    private String requestScope;\r
+\r
+    @SerializedName("requestType")\r
+    private String requestType;\r
+\r
+    @SerializedName("requestDetails")\r
+    private SORequestDetails requestDetails;\r
+\r
+    @SerializedName("requestStatus")\r
+    private SORequestStatus requestStatus;\r
+\r
+    public SORequest() {\r
+        // required by author\r
+    }\r
+\r
+    public LocalDateTime getFinishTime() {\r
+        return finishTime;\r
+    }\r
+\r
+    public SORequestDetails getRequestDetails() {\r
+        return requestDetails;\r
+    }\r
+\r
+    public UUID getRequestId() {\r
+        return requestId;\r
+    }\r
+\r
+    public String getRequestScope() {\r
+        return requestScope;\r
+    }\r
+\r
+    public SORequestStatus getRequestStatus() {\r
+        return requestStatus;\r
+    }\r
+\r
+    public String getRequestType() {\r
+        return requestType;\r
+    }\r
+\r
+    public String getStartTime() {\r
+        return startTime;\r
+    }\r
+\r
+    public void setFinishTime(LocalDateTime finishTime) {\r
+        this.finishTime = finishTime;\r
+    }\r
+\r
+    public void setRequestDetails(SORequestDetails requestDetails) {\r
+        this.requestDetails = requestDetails;\r
+    }\r
+\r
+    public void setRequestId(UUID requestId) {\r
+        this.requestId = requestId;\r
+    }\r
+\r
+    public void setRequestScope(String requestScope) {\r
+        this.requestScope = requestScope;\r
+    }\r
+\r
+    public void setRequestStatus(SORequestStatus requestStatus) {\r
+        this.requestStatus = requestStatus;\r
+    }\r
+\r
+    public void setRequestType(String requestType) {\r
+        this.requestType = requestType;\r
+    }\r
+\r
+    public void setStartTime(String startTime) {\r
+        this.startTime = startTime;\r
+    }\r
 \r
 }\r
index ab4afc1..a864181 100644 (file)
@@ -1,6 +1,6 @@
 /*-
  * ============LICENSE_START=======================================================
- * mso
+ * so
  * ================================================================================
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
@@ -28,97 +28,143 @@ import com.google.gson.annotations.SerializedName;
 
 public class SORequestDetails implements Serializable {
 
-       /**
-        * 
-        */
-       private static final long serialVersionUID = -3283942659786236032L;
-       
-       @SerializedName("modelInfo")
-       public SOModelInfo modelInfo;
-       
-       @SerializedName("cloudConfiguration")
-       public SOCloudConfiguration cloudConfiguration;
-       
-       @SerializedName("requestInfo")
-       public SORequestInfo requestInfo;
-       
-       @SerializedName("subscriberInfo")
-       public SOSubscriberInfo subscriberInfo;
-       
-       @SerializedName("relatedInstanceList")
-       public List<SORelatedInstanceListElement> relatedInstanceList= new LinkedList<SORelatedInstanceListElement>();  
-       
-       @SerializedName("requestParameters")
-       public SORequestParameters requestParameters;
-
-       public SORequestDetails() {
-               
-       }
-
-       public SORequestDetails(SORequestDetails soRequestDetails) {
-               this.modelInfo = soRequestDetails.modelInfo;
-               this.cloudConfiguration = soRequestDetails.cloudConfiguration;
-               this.requestInfo = soRequestDetails.requestInfo;
-               this.relatedInstanceList = soRequestDetails.relatedInstanceList;
-               this.requestParameters = soRequestDetails.requestParameters;
-       }
-
-       @Override
-       public String toString() {
-               return "SORequestDetails [modelInfo=" + modelInfo
-                               + ", cloudConfiguration=" + cloudConfiguration
-                               + ", requestInfo=" + requestInfo + ", relatedInstanceList="
-                               + relatedInstanceList + ", requestParameters="
-                               + requestParameters + "]";
-       }
-
-       @Override
-       public int hashCode() {
-               final int prime = 31;
-               int result = 1;
-               result = prime * result + ((cloudConfiguration == null) ? 0 : cloudConfiguration.hashCode());
-               result = prime * result + ((modelInfo == null) ? 0 : modelInfo.hashCode());
-               result = prime * result + ((relatedInstanceList == null) ? 0 : relatedInstanceList.hashCode());
-               result = prime * result + ((requestInfo == null) ? 0 : requestInfo.hashCode());
-               result = prime * result + ((requestParameters == null) ? 0 : requestParameters.hashCode());
-               return result;
-       }
-
-       @Override
-       public boolean equals(Object obj) {
-               if (this == obj)
-                       return true;
-               if (obj == null)
-                       return false;
-               if (getClass() != obj.getClass())
-                       return false;
-               SORequestDetails other = (SORequestDetails) obj;
-               if (cloudConfiguration == null) {
-                       if (other.cloudConfiguration != null)
-                               return false;
-               } else if (!cloudConfiguration.equals(other.cloudConfiguration))
-                       return false;
-               if (modelInfo == null) {
-                       if (other.modelInfo != null)
-                               return false;
-               } else if (!modelInfo.equals(other.modelInfo))
-                       return false;
-               if (relatedInstanceList == null) {
-                       if (other.relatedInstanceList != null)
-                               return false;
-               } else if (!relatedInstanceList.equals(other.relatedInstanceList))
-                       return false;
-               if (requestInfo == null) {
-                       if (other.requestInfo != null)
-                               return false;
-               } else if (!requestInfo.equals(other.requestInfo))
-                       return false;
-               if (requestParameters == null) {
-                       if (other.requestParameters != null)
-                               return false;
-               } else if (!requestParameters.equals(other.requestParameters))
-                       return false;
-               return true;
-       }
-       
+    private static final long serialVersionUID = -3283942659786236032L;
+
+    @SerializedName("modelInfo")
+    private SOModelInfo modelInfo;
+
+    @SerializedName("cloudConfiguration")
+    private SOCloudConfiguration cloudConfiguration;
+
+    @SerializedName("requestInfo")
+    private SORequestInfo requestInfo;
+
+    @SerializedName("subscriberInfo")
+    private SOSubscriberInfo subscriberInfo;
+
+    @SerializedName("relatedInstanceList")
+    private List<SORelatedInstanceListElement> relatedInstanceList = new LinkedList<>();
+
+    @SerializedName("requestParameters")
+    private SORequestParameters requestParameters;
+
+    public SORequestDetails() {
+
+    }
+
+    public SORequestDetails(SORequestDetails soRequestDetails) {
+        this.modelInfo = soRequestDetails.modelInfo;
+        this.cloudConfiguration = soRequestDetails.cloudConfiguration;
+        this.requestInfo = soRequestDetails.requestInfo;
+        this.relatedInstanceList = soRequestDetails.relatedInstanceList;
+        this.requestParameters = soRequestDetails.requestParameters;
+    }
+
+    @Override
+    public boolean equals(Object obj) {
+        if (this == obj)
+            return true;
+        if (obj == null)
+            return false;
+        if (getClass() != obj.getClass())
+            return false;
+        SORequestDetails other = (SORequestDetails) obj;
+        if (cloudConfiguration == null) {
+            if (other.cloudConfiguration != null)
+                return false;
+        }
+        else if (!cloudConfiguration.equals(other.cloudConfiguration))
+            return false;
+        if (modelInfo == null) {
+            if (other.modelInfo != null)
+                return false;
+        }
+        else if (!modelInfo.equals(other.modelInfo))
+            return false;
+        if (relatedInstanceList == null) {
+            if (other.relatedInstanceList != null)
+                return false;
+        }
+        else if (!relatedInstanceList.equals(other.relatedInstanceList))
+            return false;
+        if (requestInfo == null) {
+            if (other.requestInfo != null)
+                return false;
+        }
+        else if (!requestInfo.equals(other.requestInfo))
+            return false;
+        if (requestParameters == null) {
+            if (other.requestParameters != null)
+                return false;
+        }
+        else if (!requestParameters.equals(other.requestParameters))
+            return false;
+        return true;
+    }
+
+    public SOCloudConfiguration getCloudConfiguration() {
+        return cloudConfiguration;
+    }
+
+    public SOModelInfo getModelInfo() {
+        return modelInfo;
+    }
+
+    public List<SORelatedInstanceListElement> getRelatedInstanceList() {
+        return relatedInstanceList;
+    }
+
+    public SORequestInfo getRequestInfo() {
+        return requestInfo;
+    }
+
+    public SORequestParameters getRequestParameters() {
+        return requestParameters;
+    }
+
+    public SOSubscriberInfo getSubscriberInfo() {
+        return subscriberInfo;
+    }
+
+    @Override
+    public int hashCode() {
+        final int prime = 31;
+        int result = 1;
+        result = prime * result
+                + ((cloudConfiguration == null) ? 0 : cloudConfiguration.hashCode());
+        result = prime * result + ((modelInfo == null) ? 0 : modelInfo.hashCode());
+        result = prime * result
+                + ((relatedInstanceList == null) ? 0 : relatedInstanceList.hashCode());
+        result = prime * result + ((requestInfo == null) ? 0 : requestInfo.hashCode());
+        result = prime * result + ((requestParameters == null) ? 0 : requestParameters.hashCode());
+        return result;
+    }
+
+    public void setCloudConfiguration(SOCloudConfiguration cloudConfiguration) {
+        this.cloudConfiguration = cloudConfiguration;
+    }
+
+    public void setModelInfo(SOModelInfo modelInfo) {
+        this.modelInfo = modelInfo;
+    }
+
+    public void setRequestInfo(SORequestInfo requestInfo) {
+        this.requestInfo = requestInfo;
+    }
+
+    public void setRequestParameters(SORequestParameters requestParameters) {
+        this.requestParameters = requestParameters;
+    }
+
+    public void setSubscriberInfo(SOSubscriberInfo subscriberInfo) {
+        this.subscriberInfo = subscriberInfo;
+    }
+
+    @Override
+    public String toString() {
+        return "SORequestDetails [modelInfo=" + modelInfo + ", cloudConfiguration="
+                + cloudConfiguration + ", requestInfo=" + requestInfo + ", relatedInstanceList="
+                + relatedInstanceList + ", requestParameters=" + requestParameters + "]";
+    }
+
 }
index d49897c..c9dad03 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -26,34 +26,32 @@ import com.google.gson.annotations.SerializedName;
 \r
 public class SORequestError implements Serializable {\r
 \r
-       /**\r
-        * \r
-        */\r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       \r
-       @SerializedName("policyException")\r
-       public SOPolicyException policyException;\r
-       \r
-       \r
-       @SerializedName("serviceException")\r
-       public SOServiceException serviceException;\r
-       \r
-       /*\r
-       @SerializedName("messageId")\r
-       public String messageId;\r
-       \r
-       @SerializedName("text")\r
-       public String text;\r
-       \r
-       @SerializedName("url")\r
-       public String url;\r
-\r
-       @SerializedName("variables")\r
-       public String variables;\r
-       */\r
-\r
-       public SORequestError() {\r
-       }\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("policyException")\r
+    private SOPolicyException policyException;\r
+\r
+    @SerializedName("serviceException")\r
+    private SOServiceException serviceException;\r
+\r
+    public SORequestError() {\r
+        // required by author\r
+    }\r
+\r
+    public SOPolicyException getPolicyException() {\r
+        return policyException;\r
+    }\r
+\r
+    public SOServiceException getServiceException() {\r
+        return serviceException;\r
+    }\r
+\r
+    public void setPolicyException(SOPolicyException policyException) {\r
+        this.policyException = policyException;\r
+    }\r
+\r
+    public void setServiceException(SOServiceException serviceException) {\r
+        this.serviceException = serviceException;\r
+    }\r
 \r
 }\r
index 2e7beab..28bc0b8 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -22,47 +22,124 @@ package org.onap.policy.so;
 \r
 import java.io.Serializable;\r
 \r
-\r
 import com.google.gson.annotations.SerializedName;\r
 \r
 public class SORequestInfo implements Serializable {\r
 \r
-       /**\r
-        * \r
-        */\r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       @SerializedName("instanceName")\r
-       public String instanceName;\r
-       \r
-       @SerializedName("source")\r
-       public String source;\r
-       \r
-       @SerializedName("productFamilyId")\r
-       public String productFamilyId;\r
-       \r
-       @SerializedName("suppressRollback")\r
-       public boolean suppressRollback;\r
-       \r
-       @SerializedName("billingAccountNumber")\r
-       public String billingAccountNumber;\r
-       \r
-       @SerializedName("callbackUrl")\r
-       public String callbackUrl;\r
-       \r
-       @SerializedName("correlator")\r
-       public String correlator;\r
-       \r
-       @SerializedName("orderNumber")\r
-       public String orderNumber;\r
-       \r
-       @SerializedName("orderVersion")\r
-       public Integer orderVersion;\r
-       \r
-       @SerializedName("requestorId")\r
-       public String requestorId;\r
-\r
-       public SORequestInfo() {\r
-       }\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("instanceName")\r
+    private String instanceName;\r
+\r
+    @SerializedName("source")\r
+    private String source;\r
+\r
+    @SerializedName("productFamilyId")\r
+    private String productFamilyId;\r
+\r
+    @SerializedName("suppressRollback")\r
+    private boolean suppressRollback;\r
+\r
+    @SerializedName("billingAccountNumber")\r
+    private String billingAccountNumber;\r
+\r
+    @SerializedName("callbackUrl")\r
+    private String callbackUrl;\r
+\r
+    @SerializedName("correlator")\r
+    private String correlator;\r
+\r
+    @SerializedName("orderNumber")\r
+    private String orderNumber;\r
+\r
+    @SerializedName("orderVersion")\r
+    private Integer orderVersion;\r
+\r
+    @SerializedName("requestorId")\r
+    private String requestorId;\r
+\r
+    public SORequestInfo() {\r
+        // required by author\r
+    }\r
+\r
+    public String getBillingAccountNumber() {\r
+        return billingAccountNumber;\r
+    }\r
+\r
+    public String getCallbackUrl() {\r
+        return callbackUrl;\r
+    }\r
+\r
+    public String getCorrelator() {\r
+        return correlator;\r
+    }\r
+\r
+    public String getInstanceName() {\r
+        return instanceName;\r
+    }\r
+\r
+    public String getOrderNumber() {\r
+        return orderNumber;\r
+    }\r
+\r
+    public Integer getOrderVersion() {\r
+        return orderVersion;\r
+    }\r
+\r
+    public String getProductFamilyId() {\r
+        return productFamilyId;\r
+    }\r
+\r
+    public String getRequestorId() {\r
+        return requestorId;\r
+    }\r
+\r
+    public String getSource() {\r
+        return source;\r
+    }\r
+\r
+    public boolean isSuppressRollback() {\r
+        return suppressRollback;\r
+    }\r
+\r
+    public void setBillingAccountNumber(String billingAccountNumber) {\r
+        this.billingAccountNumber = billingAccountNumber;\r
+    }\r
+\r
+    public void setCallbackUrl(String callbackUrl) {\r
+        this.callbackUrl = callbackUrl;\r
+    }\r
+\r
+    public void setCorrelator(String correlator) {\r
+        this.correlator = correlator;\r
+    }\r
+\r
+    public void setInstanceName(String instanceName) {\r
+        this.instanceName = instanceName;\r
+    }\r
+\r
+    public void setOrderNumber(String orderNumber) {\r
+        this.orderNumber = orderNumber;\r
+    }\r
+\r
+    public void setOrderVersion(Integer orderVersion) {\r
+        this.orderVersion = orderVersion;\r
+    }\r
+\r
+    public void setProductFamilyId(String productFamilyId) {\r
+        this.productFamilyId = productFamilyId;\r
+    }\r
+\r
+    public void setRequestorId(String requestorId) {\r
+        this.requestorId = requestorId;\r
+    }\r
+\r
+    public void setSource(String source) {\r
+        this.source = source;\r
+    }\r
+\r
+    public void setSuppressRollback(boolean suppressRollback) {\r
+        this.suppressRollback = suppressRollback;\r
+    }\r
 \r
 }\r
index c66f097..c1a6c7d 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -25,23 +25,36 @@ import java.util.LinkedList;
 import java.util.List;\r
 import java.util.Map;\r
 \r
-\r
 import com.google.gson.annotations.SerializedName;\r
 \r
 public class SORequestParameters implements Serializable {\r
 \r
-       /**\r
-        * \r
-        */\r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       @SerializedName("subscriptionServiceType")\r
-       public String subscriptionServiceType;\r
-       \r
-       @SerializedName("userParams")\r
-       public List<Map<String, String>> userParams = new LinkedList<Map<String, String>>();\r
-\r
-       public SORequestParameters() {\r
-       }\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("subscriptionServiceType")\r
+    private String subscriptionServiceType;\r
+\r
+    @SerializedName("userParams")\r
+    private List<Map<String, String>> userParams = new LinkedList<>();\r
+\r
+    public SORequestParameters() {\r
+        // required by author\r
+    }\r
+\r
+    public String getSubscriptionServiceType() {\r
+        return subscriptionServiceType;\r
+    }\r
+\r
+    public List<Map<String, String>> getUserParams() {\r
+        return userParams;\r
+    }\r
+\r
+    public void setSubscriptionServiceType(String subscriptionServiceType) {\r
+        this.subscriptionServiceType = subscriptionServiceType;\r
+    }\r
+\r
+    public void setUserParams(List<Map<String, String>> userParams) {\r
+        this.userParams = userParams;\r
+    }\r
 \r
 }\r
index f3e15e1..913402d 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -22,17 +22,32 @@ package org.onap.policy.so;
 \r
 import java.io.Serializable;\r
 \r
-\r
 import com.google.gson.annotations.SerializedName;\r
 \r
 public class SORequestReferences implements Serializable {\r
 \r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       @SerializedName("instanceId")\r
-       public String instanceId;\r
-       \r
-       @SerializedName("requestId")\r
-       public String requestId;\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("instanceId")\r
+    private String instanceId;\r
+\r
+    @SerializedName("requestId")\r
+    private String requestId;\r
+\r
+    public String getInstanceId() {\r
+        return instanceId;\r
+    }\r
+\r
+    public String getRequestId() {\r
+        return requestId;\r
+    }\r
+\r
+    public void setInstanceId(String instanceId) {\r
+        this.instanceId = instanceId;\r
+    }\r
+\r
+    public void setRequestId(String requestId) {\r
+        this.requestId = requestId;\r
+    }\r
 \r
 }\r
index 4b57fc7..8c5e784 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -26,26 +26,57 @@ import com.google.gson.annotations.SerializedName;
 \r
 public class SORequestStatus implements Serializable {\r
 \r
-       /**\r
-        * \r
-        */\r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       @SerializedName("percentProgress")\r
-       public int percentProgress;\r
-       \r
-       @SerializedName("requestState")\r
-       public String requestState;\r
-       \r
-       @SerializedName("timestamp")\r
-       //public LocalDateTime timestamp;\r
-       public String timestamp;\r
-\r
-       @SerializedName("wasRolledBack")\r
-       public boolean wasRolledBack;\r
-       \r
-\r
-       public SORequestStatus() {\r
-       }\r
+    /**\r
+     * \r
+     */\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("percentProgress")\r
+    private int percentProgress;\r
+\r
+    @SerializedName("requestState")\r
+    private String requestState;\r
+\r
+    @SerializedName("timestamp")\r
+    private String timestamp;\r
+\r
+    @SerializedName("wasRolledBack")\r
+    private boolean wasRolledBack;\r
+\r
+    public SORequestStatus() {\r
+      //required by author\r
+    }\r
+\r
+    public int getPercentProgress() {\r
+        return percentProgress;\r
+    }\r
+\r
+    public String getRequestState() {\r
+        return requestState;\r
+    }\r
+\r
+    public String getTimestamp() {\r
+        return timestamp;\r
+    }\r
+\r
+    public boolean isWasRolledBack() {\r
+        return wasRolledBack;\r
+    }\r
+\r
+    public void setPercentProgress(int percentProgress) {\r
+        this.percentProgress = percentProgress;\r
+    }\r
+\r
+    public void setRequestState(String requestState) {\r
+        this.requestState = requestState;\r
+    }\r
+\r
+    public void setTimestamp(String timestamp) {\r
+        this.timestamp = timestamp;\r
+    }\r
+\r
+    public void setWasRolledBack(boolean wasRolledBack) {\r
+        this.wasRolledBack = wasRolledBack;\r
+    }\r
 \r
 }\r
index c5c3737..20e0c41 100644 (file)
@@ -1,6 +1,6 @@
 /*-
  * ============LICENSE_START=======================================================
- * mso
+ * so
  * ================================================================================
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
@@ -26,24 +26,53 @@ import com.google.gson.annotations.SerializedName;
 
 public class SOResponse implements Serializable {
 
-       /**
-        * 
-        */
-       private static final long serialVersionUID = -3283942659786236032L;
-       
-       @SerializedName("requestReferences")
-       public SORequestReferences requestReferences;
-       
-       @SerializedName("requestError")
-       public SORequestError requestError;
-       
-       @SerializedName("request")
-       public SORequest request;
-
-       public int httpResponseCode;
-       
-
-       public SOResponse() {
-       }
+    private static final long serialVersionUID = -3283942659786236032L;
+
+    @SerializedName("requestReferences")
+    private SORequestReferences requestReferences;
+
+    @SerializedName("requestError")
+    private SORequestError requestError;
+
+    @SerializedName("request")
+    private SORequest request;
+
+    private int httpResponseCode;
+
+    public SOResponse() {
+        // required by author
+    }
+
+    public int getHttpResponseCode() {
+        return httpResponseCode;
+    }
+
+    public SORequest getRequest() {
+        return request;
+    }
+
+    public SORequestError getRequestError() {
+        return requestError;
+    }
+
+    public SORequestReferences getRequestReferences() {
+        return requestReferences;
+    }
+
+    public void setHttpResponseCode(int httpResponseCode) {
+        this.httpResponseCode = httpResponseCode;
+    }
+
+    public void setRequest(SORequest request) {
+        this.request = request;
+    }
+
+    public void setRequestError(SORequestError requestError) {
+        this.requestError = requestError;
+    }
+
+    public void setRequestReferences(SORequestReferences requestReferences) {
+        this.requestReferences = requestReferences;
+    }
 
 }
index 3b82edf..184ae5e 100644 (file)
@@ -1,6 +1,6 @@
 /*-
  * ============LICENSE_START=======================================================
- * mso
+ * so
  * ================================================================================
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
@@ -26,30 +26,16 @@ import com.google.gson.annotations.SerializedName;
 
 public class SOResponseWrapper implements Serializable {
 
-       private static final long serialVersionUID = 7673023687132889069L;
-       
-       @SerializedName("SOResponse")
-    public SOResponse SOResponse;
-    public transient String requestID;
-       
+    private static final long serialVersionUID = 7673023687132889069L;
+
+    @SerializedName("SoResponse")
+    private SOResponse SoResponse;
+
+    private transient String requestID;
 
     public SOResponseWrapper(SOResponse response, String reqID) {
-       this.SOResponse = response;
-       this.requestID = reqID;
-    }
-    
-    @Override
-    public String toString() {
-               return "SOResponseWrapper [SOResponse=" + SOResponse + ", RequestID=" + requestID + "]";
-    }
-    
-    @Override
-    public int hashCode() {
-        final int prime = 31;
-        int result = super.hashCode();
-        result = prime * result + ((SOResponse == null) ? 0 : SOResponse.hashCode());
-        result = prime * result + ((requestID == null) ? 0 : requestID.hashCode());
-        return result;
+        this.SoResponse = response;
+        this.requestID = reqID;
     }
 
     @Override
@@ -58,27 +44,59 @@ public class SOResponseWrapper implements Serializable {
             return true;
         }
         if (obj == null) {
-               return false;
+            return false;
         }
         if (getClass() != obj.getClass()) {
             return false;
         }
         SOResponseWrapper other = (SOResponseWrapper) obj;
-        if (SOResponse == null) {
-            if (other.SOResponse != null) {
+        if (SoResponse == null) {
+            if (other.SoResponse != null) {
                 return false;
             }
-        } else if (!SOResponse.equals(other.SOResponse)) {
+        }
+        else if (!SoResponse.equals(other.SoResponse)) {
             return false;
         }
         if (requestID == null) {
             if (other.requestID != null) {
                 return false;
             }
-        } else if (!requestID.equals(other.requestID)) {
+        }
+        else if (!requestID.equals(other.requestID)) {
             return false;
         }
         return true;
     }
 
+    public String getRequestID() {
+        return requestID;
+    }
+
+    public SOResponse getSoResponse() {
+        return SoResponse;
+    }
+
+    @Override
+    public int hashCode() {
+        final int prime = 31;
+        int result = super.hashCode();
+        result = prime * result + ((SoResponse == null) ? 0 : SoResponse.hashCode());
+        result = prime * result + ((requestID == null) ? 0 : requestID.hashCode());
+        return result;
+    }
+
+    public void setRequestID(String requestID) {
+        this.requestID = requestID;
+    }
+
+    public void setSoResponse(SOResponse sOResponse) {
+        SoResponse = sOResponse;
+    }
+
+    @Override
+    public String toString() {
+        return "SOResponseWrapper [SOResponse=" + SoResponse + ", RequestID=" + requestID + "]";
+    }
+
 }
index 58999fd..3290f2e 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -28,21 +28,39 @@ import com.google.gson.annotations.SerializedName;
 \r
 public class SOServiceException implements Serializable {\r
 \r
-       /**\r
-        * \r
-        */\r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       @SerializedName("messageId")\r
-       public String messageId;        \r
-       \r
-       @SerializedName("text")\r
-       public String text;\r
-       \r
-       @SerializedName("variables")\r
-       public List<String> variables = new LinkedList<String>();\r
-       \r
-       public SOServiceException() {\r
-       }\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("messageId")\r
+    private String messageId;\r
+\r
+    @SerializedName("text")\r
+    private String text;\r
+\r
+    @SerializedName("variables")\r
+    private List<String> variables = new LinkedList<>();\r
+\r
+    public SOServiceException() {\r
+        // required by author\r
+    }\r
+\r
+    public String getMessageId() {\r
+        return messageId;\r
+    }\r
+\r
+    public String getText() {\r
+        return text;\r
+    }\r
+\r
+    public List<String> getVariables() {\r
+        return variables;\r
+    }\r
+\r
+    public void setMessageId(String messageId) {\r
+        this.messageId = messageId;\r
+    }\r
+\r
+    public void setText(String text) {\r
+        this.text = text;\r
+    }\r
 \r
 }\r
index 745e237..14c46b0 100644 (file)
@@ -1,6 +1,6 @@
 /*-\r
  * ============LICENSE_START=======================================================\r
- * mso\r
+ * so\r
  * ================================================================================\r
  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
  * ================================================================================\r
@@ -22,26 +22,47 @@ package org.onap.policy.so;
 \r
 import java.io.Serializable;\r
 \r
-\r
 import com.google.gson.annotations.SerializedName;\r
 \r
 public class SOSubscriberInfo implements Serializable {\r
 \r
-       /**\r
-        * \r
-        */\r
-       private static final long serialVersionUID = -3283942659786236032L;\r
-       \r
-       @SerializedName("globalSubscriberId")\r
-       public String globalSubscriberId;\r
-       \r
-       @SerializedName("subscriberCommonSiteId")\r
-       public String subscriberCommonSiteId;\r
-       \r
-       @SerializedName("subscriberName")\r
-       public String subscriberName;\r
-\r
-       public SOSubscriberInfo() {\r
-       }\r
+    private static final long serialVersionUID = -3283942659786236032L;\r
+\r
+    @SerializedName("globalSubscriberId")\r
+    private String globalSubscriberId;\r
+\r
+    @SerializedName("subscriberCommonSiteId")\r
+    private String subscriberCommonSiteId;\r
+\r
+    @SerializedName("subscriberName")\r
+    private String subscriberName;\r
+\r
+    public SOSubscriberInfo() {\r
+        //required by author\r
+    }\r
+\r
+    public String getGlobalSubscriberId() {\r
+        return globalSubscriberId;\r
+    }\r
+\r
+    public String getSubscriberCommonSiteId() {\r
+        return subscriberCommonSiteId;\r
+    }\r
+\r
+    public String getSubscriberName() {\r
+        return subscriberName;\r
+    }\r
+\r
+    public void setGlobalSubscriberId(String globalSubscriberId) {\r
+        this.globalSubscriberId = globalSubscriberId;\r
+    }\r
+\r
+    public void setSubscriberCommonSiteId(String subscriberCommonSiteId) {\r
+        this.subscriberCommonSiteId = subscriberCommonSiteId;\r
+    }\r
+\r
+    public void setSubscriberName(String subscriberName) {\r
+        this.subscriberName = subscriberName;\r
+    }\r
 \r
 }\r
index c9d013e..9bcd5e5 100644 (file)
@@ -24,9 +24,12 @@ import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 
 public final class Serialization {
-       
-       final static public Gson gsonPretty = new GsonBuilder().disableHtmlEscaping()
-                       .setPrettyPrinting()
-                       .create();
 
+    public static final Gson gsonPretty =
+            new GsonBuilder().disableHtmlEscaping().setPrettyPrinting().create();
+
+    private Serialization() {
+        // utility class with explicit private constructor
+        // change if class is more than utility
+    }
 }
index 79f8d93..1b2cb69 100644 (file)
@@ -37,131 +37,150 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 public class TestDemo {
-       private static final Logger logger = LoggerFactory.getLogger(TestDemo.class);
-       @Test
-       public void test() {
-               
-               SORequest request = new SORequest();
-               request.requestDetails = new SORequestDetails();
-               request.requestDetails.modelInfo = new SOModelInfo();
-               request.requestDetails.cloudConfiguration = new SOCloudConfiguration();
-               request.requestDetails.requestInfo = new SORequestInfo();
-               request.requestDetails.requestParameters = new SORequestParameters();
-               
-               request.requestDetails.modelInfo.modelType = "vfModule";
-               request.requestDetails.modelInfo.modelInvariantId = "ff5256d2-5a33-55df-13ab-12abad84e7ff";
-               request.requestDetails.modelInfo.modelVersionId = "fe6478e5-ea33-3346-ac12-ab121484a3fe";
-               request.requestDetails.modelInfo.modelName = "vSAMP12..base..module-0";
-               request.requestDetails.modelInfo.modelVersion = "1";
-               
-               request.requestDetails.cloudConfiguration.lcpCloudRegionId = "mdt1";
-               request.requestDetails.cloudConfiguration.tenantId = "88a6ca3ee0394ade9403f075db23167e";
-               
-               request.requestDetails.requestInfo.instanceName = "SOTEST103a-vSAMP12_base_module-0";
-               request.requestDetails.requestInfo.source = "VID";
-               request.requestDetails.requestInfo.suppressRollback = true;
-               
-               SORelatedInstanceListElement relatedInstanceListElement1 = new SORelatedInstanceListElement();
-               SORelatedInstanceListElement relatedInstanceListElement2 = new SORelatedInstanceListElement();
-               SORelatedInstanceListElement relatedInstanceListElement3 = new SORelatedInstanceListElement();
-               relatedInstanceListElement1.relatedInstance = new SORelatedInstance();
-               relatedInstanceListElement2.relatedInstance = new SORelatedInstance();
-               relatedInstanceListElement3.relatedInstance = new SORelatedInstance();
-               
-               relatedInstanceListElement1.relatedInstance.instanceId = "17ef4658-bd1f-4ef0-9ca0-ea76e2bf122c";
-               relatedInstanceListElement1.relatedInstance.instanceName = "SOTESTVOL103a-vSAMP12_base_module-0_vol";
-               relatedInstanceListElement1.relatedInstance.modelInfo = new SOModelInfo();
-               relatedInstanceListElement1.relatedInstance.modelInfo.modelType = "volumeGroup";
-               
-               relatedInstanceListElement2.relatedInstance.instanceId = "serviceInstanceId";
-               relatedInstanceListElement2.relatedInstance.modelInfo = new SOModelInfo();
-               relatedInstanceListElement2.relatedInstance.modelInfo.modelType = "service";
-               relatedInstanceListElement2.relatedInstance.modelInfo.modelInvariantId = "ff3514e3-5a33-55df-13ab-12abad84e7ff";
-               relatedInstanceListElement2.relatedInstance.modelInfo.modelVersionId = "fe6985cd-ea33-3346-ac12-ab121484a3fe";
-               relatedInstanceListElement2.relatedInstance.modelInfo.modelName = "parent service model name";
-               relatedInstanceListElement2.relatedInstance.modelInfo.modelVersion = "1.0";
-               
-               relatedInstanceListElement3.relatedInstance.instanceId = "vnfInstanceId";
-               relatedInstanceListElement3.relatedInstance.modelInfo = new SOModelInfo();
-               relatedInstanceListElement3.relatedInstance.modelInfo.modelType = "vnf";
-               relatedInstanceListElement3.relatedInstance.modelInfo.modelInvariantId = "ff5256d1-5a33-55df-13ab-12abad84e7ff";
-               relatedInstanceListElement3.relatedInstance.modelInfo.modelVersionId = "fe6478e4-ea33-3346-ac12-ab121484a3fe";
-               relatedInstanceListElement3.relatedInstance.modelInfo.modelName = "vSAMP12";
-               relatedInstanceListElement3.relatedInstance.modelInfo.modelVersion = "1.0";
-               relatedInstanceListElement3.relatedInstance.modelInfo.modelCustomizationName = "vSAMP12 1";
-                       
-               request.requestDetails.relatedInstanceList.add(relatedInstanceListElement1);
-               request.requestDetails.relatedInstanceList.add(relatedInstanceListElement2);
-               request.requestDetails.relatedInstanceList.add(relatedInstanceListElement3);
-               
-               Map<String, String> userParam1 = new HashMap<>();
-               userParam1.put("name1", "value1");
-               
-               Map<String, String> userParam2 = new HashMap<>();
-               userParam2.put("name2", "value2");
-               
-               request.requestDetails.requestParameters.userParams.add(userParam1);
-               request.requestDetails.requestParameters.userParams.add(userParam2);
-               
-               logger.debug(Serialization.gsonPretty.toJson(request));
-                               
-       }
-       
-       @Test
-       public void testHack() {
-               
-               logger.debug("**  HACK  **");
-               
-               SORequest request = new SORequest();
-               //
-               request.requestDetails = new SORequestDetails();
-               request.requestDetails.modelInfo = new SOModelInfo();
-               request.requestDetails.cloudConfiguration = new SOCloudConfiguration();
-               request.requestDetails.requestInfo = new SORequestInfo();
-               request.requestDetails.requestParameters = new SORequestParameters();
-               request.requestDetails.requestParameters.userParams = null;
-               
-               request.requestDetails.modelInfo.modelType = "vfModule";
-               request.requestDetails.modelInfo.modelInvariantId = "a9c4a35a-de48-451a-9e4e-343f2ac52928";
-               request.requestDetails.modelInfo.modelVersionId = "e0d98ad1-238d-4555-b439-023d3f9079f6";
-               request.requestDetails.modelInfo.modelName = "0d9e0d9d352749f4B3cb..dnsscaling..module-0";
-               request.requestDetails.modelInfo.modelVersion = "2.0";
-               
-               request.requestDetails.cloudConfiguration.lcpCloudRegionId = "DFW";
-               request.requestDetails.cloudConfiguration.tenantId = "1015548";
-               
-               request.requestDetails.requestInfo.instanceName = "Vfmodule_Ete_Name1eScaling63928f-ccdc-4b34-bdef-9bf64109026e";
-               request.requestDetails.requestInfo.source = "POLICY";
-               request.requestDetails.requestInfo.suppressRollback = false;
-               
-               SORelatedInstanceListElement relatedInstanceListElement1 = new SORelatedInstanceListElement();
-               SORelatedInstanceListElement relatedInstanceListElement2 = new SORelatedInstanceListElement();
-               relatedInstanceListElement1.relatedInstance = new SORelatedInstance();
-               relatedInstanceListElement2.relatedInstance = new SORelatedInstance();
-               
-               String serviceInstanceId = "98af39ce-6408-466b-921f-c2c7a8f59ed6";
-               relatedInstanceListElement1.relatedInstance.instanceId = serviceInstanceId;
-               relatedInstanceListElement1.relatedInstance.modelInfo = new SOModelInfo();
-               relatedInstanceListElement1.relatedInstance.modelInfo.modelType = "service";
-               relatedInstanceListElement1.relatedInstance.modelInfo.modelInvariantId = "24329a0c-1d57-4210-b1af-a65df64e9d59";
-               relatedInstanceListElement1.relatedInstance.modelInfo.modelVersionId = "ac642881-8e7e-4217-bd64-16ad41c42e30";
-               relatedInstanceListElement1.relatedInstance.modelInfo.modelName = "5116d67e-0b4f-46bf-a46f";
-               relatedInstanceListElement1.relatedInstance.modelInfo.modelVersion = "2.0";
-               
-               String vnfInstanceId = "8eb411b8-a936-412f-b01f-9a9a435c0e93";
-               relatedInstanceListElement2.relatedInstance.instanceId = vnfInstanceId;
-               relatedInstanceListElement2.relatedInstance.modelInfo = new SOModelInfo();
-               relatedInstanceListElement2.relatedInstance.modelInfo.modelType = "vnf";
-               relatedInstanceListElement2.relatedInstance.modelInfo.modelInvariantId = "09fd971e-db5f-475d-997c-cf6704b6b8fe";
-               relatedInstanceListElement2.relatedInstance.modelInfo.modelVersionId = "152ed917-6dcc-46ee-bf8a-a775c5aa5a74";
-               relatedInstanceListElement2.relatedInstance.modelInfo.modelName = "9e4c31d2-4b25-4d9e-9fb4";
-               relatedInstanceListElement2.relatedInstance.modelInfo.modelVersion = "2.0";
-               relatedInstanceListElement2.relatedInstance.modelInfo.modelCustomizationName = "0d9e0d9d-3527-49f4-b3cb 2";
-                       
-               request.requestDetails.relatedInstanceList.add(relatedInstanceListElement1);
-               request.requestDetails.relatedInstanceList.add(relatedInstanceListElement2);
-               
-               logger.debug(Serialization.gsonPretty.toJson(request));
-       }
+    private static final Logger logger = LoggerFactory.getLogger(TestDemo.class);
+
+    @Test
+    public void test() {
+
+        SORequest request = new SORequest();
+        request.setRequestDetails(new SORequestDetails());
+        request.getRequestDetails().setModelInfo(new SOModelInfo());
+        request.getRequestDetails().setCloudConfiguration(new SOCloudConfiguration());
+        request.getRequestDetails().setRequestInfo(new SORequestInfo());
+        request.getRequestDetails().setRequestParameters(new SORequestParameters());
+
+        request.getRequestDetails().getModelInfo().setModelType("vfModule");
+        request.getRequestDetails().getModelInfo().setModelInvariantId("ff5256d2-5a33-55df-13ab-12abad84e7ff");
+        request.getRequestDetails().getModelInfo().setModelVersionId("fe6478e5-ea33-3346-ac12-ab121484a3fe");
+        request.getRequestDetails().getModelInfo().setModelName("vSAMP12..base..module-0");
+        request.getRequestDetails().getModelInfo().setModelVersion("1");
+
+        request.getRequestDetails().getCloudConfiguration().setLcpCloudRegionId("mdt1");
+        request.getRequestDetails().getCloudConfiguration().setTenantId("88a6ca3ee0394ade9403f075db23167e");
+
+        request.getRequestDetails().getRequestInfo().setInstanceName("SOTEST103a-vSAMP12_base_module-0");
+        request.getRequestDetails().getRequestInfo().setSource("VID");
+        request.getRequestDetails().getRequestInfo().setSuppressRollback(true);
+
+        SORelatedInstanceListElement relatedInstanceListElement1 =
+                new SORelatedInstanceListElement();
+        SORelatedInstanceListElement relatedInstanceListElement2 =
+                new SORelatedInstanceListElement();
+        SORelatedInstanceListElement relatedInstanceListElement3 =
+                new SORelatedInstanceListElement();
+        relatedInstanceListElement1.setRelatedInstance(new SORelatedInstance());
+        relatedInstanceListElement2.setRelatedInstance(new SORelatedInstance());
+        relatedInstanceListElement3.setRelatedInstance(new SORelatedInstance());
+
+        relatedInstanceListElement1.getRelatedInstance().setInstanceId(
+                "17ef4658-bd1f-4ef0-9ca0-ea76e2bf122c");
+        relatedInstanceListElement1.getRelatedInstance().setInstanceName(
+                "SOTESTVOL103a-vSAMP12_base_module-0_vol");
+        relatedInstanceListElement1.getRelatedInstance().setModelInfo(new SOModelInfo());
+        relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelType("volumeGroup");
+
+        relatedInstanceListElement2.getRelatedInstance().setInstanceId("serviceInstanceId");
+        relatedInstanceListElement2.getRelatedInstance().setModelInfo(new SOModelInfo());
+        relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelType("service");
+        relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelInvariantId(
+                "ff3514e3-5a33-55df-13ab-12abad84e7ff");
+        relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelVersionId(
+                "fe6985cd-ea33-3346-ac12-ab121484a3fe");
+        relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelName(
+                "parent service model name");
+        relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelVersion("1.0");
+
+        relatedInstanceListElement3.getRelatedInstance().setInstanceId("vnfInstanceId");
+        relatedInstanceListElement3.getRelatedInstance().setModelInfo(new SOModelInfo());
+        relatedInstanceListElement3.getRelatedInstance().getModelInfo().setModelType("vnf");
+        relatedInstanceListElement3.getRelatedInstance().getModelInfo().setModelInvariantId(
+                "ff5256d1-5a33-55df-13ab-12abad84e7ff");
+        relatedInstanceListElement3.getRelatedInstance().getModelInfo().setModelVersionId(
+                "fe6478e4-ea33-3346-ac12-ab121484a3fe");
+        relatedInstanceListElement3.getRelatedInstance().getModelInfo().setModelName("vSAMP12");
+        relatedInstanceListElement3.getRelatedInstance().getModelInfo().setModelVersion("1.0");
+        relatedInstanceListElement3.getRelatedInstance().getModelInfo().setModelCustomizationName("vSAMP12 1");
+
+        request.getRequestDetails().getRelatedInstanceList().add(relatedInstanceListElement1);
+        request.getRequestDetails().getRelatedInstanceList().add(relatedInstanceListElement2);
+        request.getRequestDetails().getRelatedInstanceList().add(relatedInstanceListElement3);
+
+        Map<String, String> userParam1 = new HashMap<>();
+        userParam1.put("name1", "value1");
+
+        Map<String, String> userParam2 = new HashMap<>();
+        userParam2.put("name2", "value2");
+
+        request.getRequestDetails().getRequestParameters().getUserParams().add(userParam1);
+        request.getRequestDetails().getRequestParameters().getUserParams().add(userParam2);
+
+        logger.debug(Serialization.gsonPretty.toJson(request));
+
+    }
+
+    @Test
+    public void testHack() {
+
+        logger.debug("**  HACK  **");
+
+        SORequest request = new SORequest();
+
+        request.setRequestDetails(new SORequestDetails());
+        request.getRequestDetails().setModelInfo(new SOModelInfo());
+        request.getRequestDetails().setCloudConfiguration(new SOCloudConfiguration());
+        request.getRequestDetails().setRequestInfo(new SORequestInfo());
+        request.getRequestDetails().setRequestParameters(new SORequestParameters());
+        request.getRequestDetails().getRequestParameters().setUserParams(null);
+
+        request.getRequestDetails().getModelInfo().setModelType("vfModule");
+        request.getRequestDetails().getModelInfo().setModelInvariantId("a9c4a35a-de48-451a-9e4e-343f2ac52928");
+        request.getRequestDetails().getModelInfo().setModelVersionId("e0d98ad1-238d-4555-b439-023d3f9079f6");
+        request.getRequestDetails().getModelInfo().setModelName("0d9e0d9d352749f4B3cb..dnsscaling..module-0");
+        request.getRequestDetails().getModelInfo().setModelVersion("2.0");
+
+        request.getRequestDetails().getCloudConfiguration().setLcpCloudRegionId("DFW");
+        request.getRequestDetails().getCloudConfiguration().setTenantId("1015548");
+
+        request.getRequestDetails().getRequestInfo().setInstanceName(
+                "Vfmodule_Ete_Name1eScaling63928f-ccdc-4b34-bdef-9bf64109026e");
+        request.getRequestDetails().getRequestInfo().setSource("POLICY");
+        request.getRequestDetails().getRequestInfo().setSuppressRollback(false);
+
+        SORelatedInstanceListElement relatedInstanceListElement1 =
+                new SORelatedInstanceListElement();
+        SORelatedInstanceListElement relatedInstanceListElement2 =
+                new SORelatedInstanceListElement();
+        relatedInstanceListElement1.setRelatedInstance(new SORelatedInstance());
+        relatedInstanceListElement2.setRelatedInstance(new SORelatedInstance());
+
+        String serviceInstanceId = "98af39ce-6408-466b-921f-c2c7a8f59ed6";
+        relatedInstanceListElement1.getRelatedInstance().setInstanceId(serviceInstanceId);
+        relatedInstanceListElement1.getRelatedInstance().setModelInfo(new SOModelInfo());
+        relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelType("service");
+        relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelInvariantId(
+                "24329a0c-1d57-4210-b1af-a65df64e9d59");
+        relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelVersionId(
+                "ac642881-8e7e-4217-bd64-16ad41c42e30");
+        relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelName("5116d67e-0b4f-46bf-a46f");
+        relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelVersion("2.0");
+
+        String vnfInstanceId = "8eb411b8-a936-412f-b01f-9a9a435c0e93";
+        relatedInstanceListElement2.getRelatedInstance().setInstanceId(vnfInstanceId);
+        relatedInstanceListElement2.getRelatedInstance().setModelInfo(new SOModelInfo());
+        relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelType("vnf");
+        relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelInvariantId(
+                "09fd971e-db5f-475d-997c-cf6704b6b8fe");
+        relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelVersionId(
+                "152ed917-6dcc-46ee-bf8a-a775c5aa5a74");
+        relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelName("9e4c31d2-4b25-4d9e-9fb4");
+        relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelVersion("2.0");
+        relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelCustomizationName(
+                "0d9e0d9d-3527-49f4-b3cb 2");
+
+        request.getRequestDetails().getRelatedInstanceList().add(relatedInstanceListElement1);
+        request.getRequestDetails().getRelatedInstanceList().add(relatedInstanceListElement2);
+
+        logger.debug(Serialization.gsonPretty.toJson(request));
+    }
 
 }
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoAsyncRequestStatus.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoAsyncRequestStatus.java
new file mode 100755 (executable)
index 0000000..119c291
--- /dev/null
@@ -0,0 +1,78 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import java.time.LocalDateTime;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoAsyncRequestStatus {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SOAsyncRequestStatus obj = new SOAsyncRequestStatus();\r
+\r
+        assertTrue(obj.getCorrelator() == null);\r
+        assertTrue(obj.getFinishTime() == null);\r
+        assertTrue(obj.getInstanceReferences() == null);\r
+        assertTrue(obj.getRequestId() == null);\r
+        assertTrue(obj.getRequestScope() == null);\r
+        assertTrue(obj.getRequestStatus() == null);\r
+        assertTrue(obj.getStartTime() == null);\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SOAsyncRequestStatus obj = new SOAsyncRequestStatus();\r
+\r
+        obj.setCorrelator("correlator");\r
+        assertEquals("correlator", obj.getCorrelator());\r
+\r
+        LocalDateTime finishTime = LocalDateTime.now();\r
+        obj.setFinishTime(finishTime);\r
+        assertEquals(finishTime, obj.getFinishTime());\r
+\r
+        SOInstanceReferences instanceReferences = new SOInstanceReferences();\r
+        obj.setInstanceReferences(instanceReferences);\r
+        assertEquals(instanceReferences, obj.getInstanceReferences());\r
+\r
+        obj.setRequestId("requestId");\r
+        assertEquals("requestId", obj.getRequestId());\r
+\r
+        obj.setRequestScope("requestScope");\r
+        assertEquals("requestScope", obj.getRequestScope());\r
+\r
+        SORequestStatus requestStatus = new SORequestStatus();\r
+        obj.setRequestStatus(requestStatus);\r
+        assertEquals(requestStatus, obj.getRequestStatus());\r
+\r
+        obj.setRequestType("requestType");\r
+        assertEquals("requestType", obj.getRequestType());\r
+\r
+        LocalDateTime startTime = LocalDateTime.now();\r
+        obj.setStartTime(startTime);\r
+        assertEquals(startTime, obj.getStartTime());\r
+\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoCloudConfiguration.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoCloudConfiguration.java
new file mode 100755 (executable)
index 0000000..f059129
--- /dev/null
@@ -0,0 +1,48 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoCloudConfiguration {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SOCloudConfiguration obj = new SOCloudConfiguration();\r
+\r
+        assertTrue(obj.getLcpCloudRegionId() == null);\r
+        assertTrue(obj.getTenantId() == null);\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SOCloudConfiguration obj = new SOCloudConfiguration();\r
+\r
+        obj.setLcpCloudRegionId("lcpCloudRegionId");\r
+        assertEquals("lcpCloudRegionId", obj.getLcpCloudRegionId());\r
+\r
+        obj.setTenantId("tenantId");\r
+        assertEquals("tenantId", obj.getTenantId());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoInstanceReferences.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoInstanceReferences.java
new file mode 100755 (executable)
index 0000000..8c63e9c
--- /dev/null
@@ -0,0 +1,48 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoInstanceReferences {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SOInstanceReferences obj = new SOInstanceReferences();\r
+\r
+        assertTrue(obj.getInstanceId() == null);\r
+        assertTrue(obj.getRequestId() == null);\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SOInstanceReferences obj = new SOInstanceReferences();\r
+\r
+        obj.setInstanceId("instanceId");\r
+        assertEquals("instanceId", obj.getInstanceId());\r
+\r
+        obj.setRequestId("requestId");\r
+        assertEquals("requestId", obj.getRequestId());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoModelInfo.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoModelInfo.java
new file mode 100755 (executable)
index 0000000..99f829f
--- /dev/null
@@ -0,0 +1,69 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoModelInfo {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SOModelInfo obj = new SOModelInfo();\r
+\r
+        assertTrue(obj.getModelCustomizationId() == null);\r
+        assertTrue(obj.getModelCustomizationName() == null);\r
+        assertTrue(obj.getModelInvariantId() == null);\r
+        assertTrue(obj.getModelName() == null);\r
+        assertTrue(obj.getModelType() == null);\r
+        assertTrue(obj.getModelVersion() == null);\r
+        assertTrue(obj.getModelVersionId() == null);\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SOModelInfo obj = new SOModelInfo();\r
+\r
+        obj.setModelCustomizationId("modelCustomizationId");\r
+        assertEquals("modelCustomizationId", obj.getModelCustomizationId());\r
+\r
+        obj.setModelCustomizationName("modelCustomizationName");\r
+        assertEquals("modelCustomizationName", obj.getModelCustomizationName());\r
+\r
+        obj.setModelInvariantId("modelInvariantId");\r
+        assertEquals("modelInvariantId", obj.getModelInvariantId());\r
+\r
+        obj.setModelName("modelName");\r
+        assertEquals("modelName", obj.getModelName());\r
+\r
+        obj.setModelType("modelType");\r
+        assertEquals("modelType", obj.getModelType());\r
+\r
+        obj.setModelVersion("modelVersion");\r
+        assertEquals("modelVersion", obj.getModelVersion());\r
+\r
+        obj.setModelVersionId("modelVersionId");\r
+        assertEquals("modelVersionId", obj.getModelVersionId());\r
+\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoPolicyException.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoPolicyException.java
new file mode 100755 (executable)
index 0000000..b2ba7f4
--- /dev/null
@@ -0,0 +1,48 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoPolicyException {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SOPolicyException obj = new SOPolicyException();\r
+\r
+        assertTrue(obj.getMessageId() == null);\r
+        assertTrue(obj.getText() == null);\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SOPolicyException obj = new SOPolicyException();\r
+\r
+        obj.setMessageId("messageId");\r
+        assertEquals("messageId", obj.getMessageId());\r
+\r
+        obj.setText("text");\r
+        assertEquals("text", obj.getText());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRelatedInstance.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRelatedInstance.java
new file mode 100755 (executable)
index 0000000..a8e94b8
--- /dev/null
@@ -0,0 +1,53 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoRelatedInstance {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SORelatedInstance obj = new SORelatedInstance();\r
+\r
+        assertTrue(obj.getInstanceId() == null);\r
+        assertTrue(obj.getInstanceName() == null);\r
+        assertTrue(obj.getModelInfo() == null);\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SORelatedInstance obj = new SORelatedInstance();\r
+\r
+        obj.setInstanceId("instanceId");\r
+        assertEquals("instanceId", obj.getInstanceId());\r
+\r
+        obj.setInstanceName("instanceName");\r
+        assertEquals("instanceName", obj.getInstanceName());\r
+\r
+        SOModelInfo modelInfo = new SOModelInfo();\r
+        obj.setModelInfo(modelInfo);\r
+        assertEquals(modelInfo, obj.getModelInfo());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRelatedInstanceListElement.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRelatedInstanceListElement.java
new file mode 100755 (executable)
index 0000000..17abd06
--- /dev/null
@@ -0,0 +1,45 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoRelatedInstanceListElement {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SORelatedInstanceListElement obj = new SORelatedInstanceListElement();\r
+\r
+        assertTrue(obj.getRelatedInstance() == null);\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SORelatedInstanceListElement obj = new SORelatedInstanceListElement();\r
+\r
+        SORelatedInstance relatedInstance = new SORelatedInstance();\r
+        obj.setRelatedInstance(relatedInstance);\r
+        assertEquals(relatedInstance, obj.getRelatedInstance());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequest.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequest.java
new file mode 100755 (executable)
index 0000000..229765a
--- /dev/null
@@ -0,0 +1,72 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import java.time.LocalDateTime;\r
+import java.util.UUID;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoRequest {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SORequest obj = new SORequest();\r
+\r
+        assertTrue(obj.getFinishTime() == null);\r
+        assertTrue(obj.getRequestDetails() == null);\r
+        assertTrue(obj.getRequestId() == null);\r
+        assertTrue(obj.getRequestScope() == null);\r
+        assertTrue(obj.getRequestStatus() == null);\r
+        assertTrue(obj.getRequestType() == null);\r
+        assertTrue(obj.getStartTime() == null);\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SORequest obj = new SORequest();\r
+\r
+        LocalDateTime finishTime = LocalDateTime.now();\r
+        obj.setFinishTime(finishTime);\r
+        assertEquals(finishTime, obj.getFinishTime());\r
+\r
+        UUID uuid = UUID.randomUUID();\r
+        obj.setRequestId(uuid);\r
+        assertEquals(uuid, obj.getRequestId());\r
+\r
+        obj.setRequestScope("requestScope");\r
+        assertEquals("requestScope", obj.getRequestScope());\r
+\r
+        SORequestStatus requestStatus = new SORequestStatus();\r
+        obj.setRequestStatus(requestStatus);\r
+        assertEquals(requestStatus, obj.getRequestStatus());\r
+\r
+        obj.setRequestType("requestType");\r
+        assertEquals("requestType", obj.getRequestType());\r
+\r
+        LocalDateTime startTime = LocalDateTime.now();\r
+        obj.setStartTime(startTime.toString());\r
+        assertEquals(startTime.toString(), obj.getStartTime());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestDetails.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestDetails.java
new file mode 100755 (executable)
index 0000000..5c3c1a4
--- /dev/null
@@ -0,0 +1,68 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoRequestDetails {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SORequestDetails obj = new SORequestDetails();\r
+\r
+        assertTrue(obj.getCloudConfiguration() == null);\r
+        assertTrue(obj.getModelInfo() == null);\r
+        assertTrue(obj.getRequestInfo() == null);\r
+        assertTrue(obj.getRequestParameters() == null);\r
+        assertTrue(obj.getSubscriberInfo() == null);\r
+\r
+        assertTrue(obj.getRelatedInstanceList() != null);\r
+        assertEquals(0, obj.getRelatedInstanceList().size());\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SORequestDetails obj = new SORequestDetails();\r
+\r
+        SOCloudConfiguration cloudConfiguration = new SOCloudConfiguration();\r
+        obj.setCloudConfiguration(cloudConfiguration);\r
+        assertEquals(cloudConfiguration, obj.getCloudConfiguration());\r
+\r
+        SOModelInfo modelInfo = new SOModelInfo();\r
+        obj.setModelInfo(modelInfo);\r
+        assertEquals(modelInfo, obj.getModelInfo());\r
+\r
+        SORequestInfo requestInfo = new SORequestInfo();\r
+        obj.setRequestInfo(requestInfo);\r
+        assertEquals(requestInfo, obj.getRequestInfo());\r
+\r
+        SORequestParameters requestParameters = new SORequestParameters();\r
+        obj.setRequestParameters(requestParameters);\r
+        assertEquals(requestParameters, obj.getRequestParameters());\r
+\r
+        SOSubscriberInfo subscriberInfo = new SOSubscriberInfo();\r
+        obj.setSubscriberInfo(subscriberInfo);\r
+        assertEquals(subscriberInfo, obj.getSubscriberInfo());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestError.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestError.java
new file mode 100755 (executable)
index 0000000..31f3b6c
--- /dev/null
@@ -0,0 +1,50 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoRequestError {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SORequestError obj = new SORequestError();\r
+\r
+        assertTrue(obj.getPolicyException() == null);\r
+        assertTrue(obj.getServiceException() == null);\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SORequestError obj = new SORequestError();\r
+\r
+        SOPolicyException policyException = new SOPolicyException();\r
+        obj.setPolicyException(policyException);\r
+        assertEquals(policyException, obj.getPolicyException());\r
+\r
+        SOServiceException serviceException = new SOServiceException();\r
+        obj.setServiceException(serviceException);\r
+        assertEquals(serviceException, obj.getServiceException());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestInfo.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestInfo.java
new file mode 100755 (executable)
index 0000000..d1b7f24
--- /dev/null
@@ -0,0 +1,81 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoRequestInfo {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SORequestInfo obj = new SORequestInfo();\r
+\r
+        assertTrue(obj.getBillingAccountNumber() == null);\r
+        assertTrue(obj.getCallbackUrl() == null);\r
+        assertTrue(obj.getCorrelator() == null);\r
+        assertTrue(obj.getInstanceName() == null);\r
+        assertTrue(obj.getOrderNumber() == null);\r
+        assertTrue(obj.getOrderVersion() == null);\r
+        assertTrue(obj.getProductFamilyId() == null);\r
+        assertTrue(obj.getRequestorId() == null);\r
+        assertTrue(obj.getSource() == null);\r
+        assertTrue(obj.isSuppressRollback() == false);\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SORequestInfo obj = new SORequestInfo();\r
+\r
+        obj.setBillingAccountNumber("billingAccountNumber");\r
+        assertEquals("billingAccountNumber", obj.getBillingAccountNumber());\r
+\r
+        obj.setCallbackUrl("callbackUrl");\r
+        assertEquals("callbackUrl", obj.getCallbackUrl());\r
+\r
+        obj.setCorrelator("correlator");\r
+        assertEquals("correlator", obj.getCorrelator());\r
+\r
+        obj.setInstanceName("instanceName");\r
+        assertEquals("instanceName", obj.getInstanceName());\r
+\r
+        obj.setOrderNumber("orderNumber");\r
+        assertEquals("orderNumber", obj.getOrderNumber());\r
+\r
+        int orderVersion = 2008;\r
+        obj.setOrderVersion(orderVersion);\r
+        assertEquals((Integer) orderVersion, obj.getOrderVersion());\r
+\r
+        obj.setProductFamilyId("productFamilyId");\r
+        assertEquals("productFamilyId", obj.getProductFamilyId());\r
+\r
+        obj.setRequestorId("requestorId");\r
+        assertEquals("requestorId", obj.getRequestorId());\r
+\r
+        obj.setSource("source");\r
+        assertEquals("source", obj.getSource());\r
+\r
+        obj.setSuppressRollback(true);\r
+        assertEquals(true, obj.isSuppressRollback());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestParameters.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestParameters.java
new file mode 100755 (executable)
index 0000000..cb32be5
--- /dev/null
@@ -0,0 +1,46 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoRequestParameters {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SORequestParameters obj = new SORequestParameters();\r
+\r
+        assertTrue(obj.getSubscriptionServiceType() == null);\r
+        assertTrue(obj.getUserParams() != null);\r
+        assertEquals(0, obj.getUserParams().size());\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SORequestParameters obj = new SORequestParameters();\r
+\r
+        obj.setSubscriptionServiceType("subscriptionServiceType");\r
+        assertEquals("subscriptionServiceType", obj.getSubscriptionServiceType());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestReferences.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestReferences.java
new file mode 100755 (executable)
index 0000000..e212ba1
--- /dev/null
@@ -0,0 +1,48 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoRequestReferences {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SORequestReferences obj = new SORequestReferences();\r
+\r
+        assertTrue(obj.getInstanceId() == null);\r
+        assertTrue(obj.getRequestId() == null);\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SORequestReferences obj = new SORequestReferences();\r
+\r
+        obj.setInstanceId("instanceId");\r
+        assertEquals("instanceId", obj.getInstanceId());\r
+        \r
+        obj.setRequestId("requestId");\r
+        assertEquals("requestId", obj.getRequestId());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestStatus.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoRequestStatus.java
new file mode 100755 (executable)
index 0000000..9fa0b97
--- /dev/null
@@ -0,0 +1,57 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertFalse;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoRequestStatus {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SORequestStatus obj = new SORequestStatus();\r
+\r
+        assertEquals(0, obj.getPercentProgress());\r
+        assertTrue(obj.getRequestState() == null);\r
+        assertTrue(obj.getTimestamp() == null);\r
+        assertFalse(obj.isWasRolledBack());\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SORequestStatus obj = new SORequestStatus();\r
+\r
+        obj.setPercentProgress(2008);\r
+        assertEquals(2008, obj.getPercentProgress());\r
+\r
+        obj.setRequestState("requestState");\r
+        assertEquals("requestState", obj.getRequestState());\r
+\r
+        obj.setTimestamp("timestamp");\r
+        assertEquals("timestamp", obj.getTimestamp());\r
+\r
+        obj.setWasRolledBack(true);\r
+        assertTrue(obj.isWasRolledBack());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoResponse.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoResponse.java
new file mode 100755 (executable)
index 0000000..edac2fa
--- /dev/null
@@ -0,0 +1,59 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoResponse {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SOResponse obj = new SOResponse();\r
+\r
+        assertEquals(0, obj.getHttpResponseCode());\r
+        assertTrue(obj.getRequest() == null);\r
+        assertTrue(obj.getRequestError() == null);\r
+        assertTrue(obj.getRequestReferences() == null);\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SOResponse obj = new SOResponse();\r
+\r
+        obj.setHttpResponseCode(2008);\r
+        assertEquals(2008, obj.getHttpResponseCode());\r
+\r
+        SORequest request = new SORequest();\r
+        obj.setRequest(request);\r
+        assertEquals(request, obj.getRequest());\r
+\r
+        SORequestError requestError = new SORequestError();\r
+        obj.setRequestError(requestError);\r
+        assertEquals(requestError, obj.getRequestError());\r
+\r
+        SORequestReferences requestReferences = new SORequestReferences();\r
+        obj.setRequestReferences(requestReferences);\r
+        assertEquals(requestReferences, obj.getRequestReferences());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoResponseWrapper.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoResponseWrapper.java
new file mode 100755 (executable)
index 0000000..93549a2
--- /dev/null
@@ -0,0 +1,51 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoResponseWrapper {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SOResponse response = new SOResponse();\r
+        SOResponseWrapper obj = new SOResponseWrapper(response, "reqID");\r
+\r
+        assertEquals(response, obj.getSoResponse());\r
+        assertEquals("reqID", obj.getRequestID());\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SOResponse response = new SOResponse();\r
+        SOResponseWrapper obj = new SOResponseWrapper(response, "reqID");\r
+\r
+        SOResponse response2 = new SOResponse();\r
+        response2.setHttpResponseCode(2008);\r
+        obj.setSoResponse(response2);\r
+        assertEquals(response2, obj.getSoResponse());\r
+\r
+        obj.setRequestID("id2");\r
+        assertEquals("id2", obj.getRequestID());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoServiceException.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoServiceException.java
new file mode 100755 (executable)
index 0000000..cae8d19
--- /dev/null
@@ -0,0 +1,50 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoServiceException {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SOServiceException obj = new SOServiceException();\r
+\r
+        assertTrue(obj.getMessageId() == null);\r
+        assertTrue(obj.getText() == null);\r
+        assertTrue(obj.getVariables() != null);\r
+        assertEquals(0, obj.getVariables().size());\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SOServiceException obj = new SOServiceException();\r
+\r
+        obj.setMessageId("messageId");\r
+        assertEquals("messageId", obj.getMessageId());\r
+\r
+        obj.setText("text");\r
+        assertEquals("text", obj.getText());\r
+    }\r
+}\r
diff --git a/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoSubscriberInfo.java b/controlloop/common/model-impl/so/src/test/java/org/onap/policy/so/TestSoSubscriberInfo.java
new file mode 100755 (executable)
index 0000000..0bff38c
--- /dev/null
@@ -0,0 +1,52 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * so\r
+ * ================================================================================\r
+ * \r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.onap.policy.so;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertTrue;\r
+\r
+import org.junit.Test;\r
+\r
+public class TestSoSubscriberInfo {\r
+\r
+    @Test\r
+    public void testConstructor() {\r
+        SOSubscriberInfo obj = new SOSubscriberInfo();\r
+\r
+        assertTrue(obj.getGlobalSubscriberId() == null);\r
+        assertTrue(obj.getSubscriberCommonSiteId() == null);\r
+        assertTrue(obj.getSubscriberName() == null);\r
+    }\r
+\r
+    @Test\r
+    public void testSetGet() {\r
+        SOSubscriberInfo obj = new SOSubscriberInfo();\r
+\r
+        obj.setGlobalSubscriberId("globalSubscriberId");\r
+        assertEquals("globalSubscriberId", obj.getGlobalSubscriberId());\r
+\r
+        obj.setSubscriberCommonSiteId("subscriberCommonSiteId");\r
+        assertEquals("subscriberCommonSiteId", obj.getSubscriberCommonSiteId());\r
+        \r
+        obj.setSubscriberName("subscriberName");\r
+        assertEquals("subscriberName", obj.getSubscriberName());\r
+    }\r
+}\r
index 8054d21..8ea0062 100644 (file)
@@ -69,34 +69,34 @@ public class SoSimulatorTest {
 
     // Construct SO Request
     final SORequest request = new SORequest();
-    request.requestId = UUID.randomUUID();
-    request.requestDetails = new SORequestDetails();
-    request.requestDetails.modelInfo = new SOModelInfo();
-    request.requestDetails.cloudConfiguration = new SOCloudConfiguration();
-    request.requestDetails.requestInfo = new SORequestInfo();
-    request.requestDetails.requestParameters = new SORequestParameters();
-    request.requestDetails.requestParameters.userParams = null;
+    request.setRequestId(UUID.randomUUID());
+    request.setRequestDetails(new SORequestDetails());
+    request.getRequestDetails().setModelInfo(new SOModelInfo());
+    request.getRequestDetails().setCloudConfiguration(new SOCloudConfiguration());
+    request.getRequestDetails().setRequestInfo(new SORequestInfo());
+    request.getRequestDetails().setRequestParameters(new SORequestParameters());
+    request.getRequestDetails().getRequestParameters().setUserParams(null);
     //
     // cloudConfiguration
     //
-    request.requestDetails.cloudConfiguration.lcpCloudRegionId = "DFW";
-    request.requestDetails.cloudConfiguration.tenantId = "1015548";
+    request.getRequestDetails().getCloudConfiguration().setLcpCloudRegionId("DFW");
+    request.getRequestDetails().getCloudConfiguration().setTenantId("1015548");
     //
     // modelInfo
     //
-    request.requestDetails.modelInfo.modelType = "vfModule";
-    request.requestDetails.modelInfo.modelInvariantId = "f32568ec-2f1c-458a-864b-0593d53d141a";
-    request.requestDetails.modelInfo.modelVersionId = "69615025-879d-4f0d-afe3-b7d1a7eeed1f";
-    request.requestDetails.modelInfo.modelName = "C15ce9e1E9144c8fB8bb..dnsscaling..module-1";
-    request.requestDetails.modelInfo.modelVersion = "1.0";
+    request.getRequestDetails().getModelInfo().setModelType("vfModule");
+    request.getRequestDetails().getModelInfo().setModelInvariantId("f32568ec-2f1c-458a-864b-0593d53d141a");
+    request.getRequestDetails().getModelInfo().setModelVersionId("69615025-879d-4f0d-afe3-b7d1a7eeed1f");
+    request.getRequestDetails().getModelInfo().setModelName("C15ce9e1E9144c8fB8bb..dnsscaling..module-1");
+    request.getRequestDetails().getModelInfo().setModelVersion("1.0");
     //
     // requestInfo
     //
-    request.requestDetails.requestInfo.instanceName =
-        "vDNS_Ete_Named90e1ab3-dcd5-4877-9edb-eadfc84e32c8";
-    request.requestDetails.requestInfo.source = "POLICY";
-    request.requestDetails.requestInfo.suppressRollback = false;
-    request.requestDetails.requestInfo.requestorId = "policy";
+    request.getRequestDetails().getRequestInfo().setInstanceName(
+        "vDNS_Ete_Named90e1ab3-dcd5-4877-9edb-eadfc84e32c8");
+    request.getRequestDetails().getRequestInfo().setSource("POLICY");
+    request.getRequestDetails().getRequestInfo().setSuppressRollback(false);
+    request.getRequestDetails().getRequestInfo().setRequestorId("policy");
     //
     // relatedInstanceList
     //
@@ -104,33 +104,33 @@ public class SoSimulatorTest {
         new SORelatedInstanceListElement();
     final SORelatedInstanceListElement relatedInstanceListElement2 =
         new SORelatedInstanceListElement();
-    relatedInstanceListElement1.relatedInstance = new SORelatedInstance();
-    relatedInstanceListElement2.relatedInstance = new SORelatedInstance();
+    relatedInstanceListElement1.setRelatedInstance(new SORelatedInstance());
+    relatedInstanceListElement2.setRelatedInstance(new SORelatedInstance());
     //
-    relatedInstanceListElement1.relatedInstance.instanceId = "cf8426a6-0b53-4e3d-bfa6-4b2f4d5913a5";
-    relatedInstanceListElement1.relatedInstance.modelInfo = new SOModelInfo();
-    relatedInstanceListElement1.relatedInstance.modelInfo.modelType = "service";
-    relatedInstanceListElement1.relatedInstance.modelInfo.modelInvariantId =
-        "4fcbc1c0-7793-46d8-8aa1-fa1c2ed9ec7b";
-    relatedInstanceListElement1.relatedInstance.modelInfo.modelVersionId =
-        "5c996219-b2e2-4c76-9b43-7e8672a33c1d";
-    relatedInstanceListElement1.relatedInstance.modelInfo.modelName = "8330e932-2a23-4943-8606";
-    relatedInstanceListElement1.relatedInstance.modelInfo.modelVersion = "1.0";
+    relatedInstanceListElement1.getRelatedInstance().setInstanceId("cf8426a6-0b53-4e3d-bfa6-4b2f4d5913a5");
+    relatedInstanceListElement1.getRelatedInstance().setModelInfo(new SOModelInfo());
+    relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelType("service");
+    relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelInvariantId(
+        "4fcbc1c0-7793-46d8-8aa1-fa1c2ed9ec7b");
+    relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelVersionId(
+        "5c996219-b2e2-4c76-9b43-7e8672a33c1d");
+    relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelName("8330e932-2a23-4943-8606");
+    relatedInstanceListElement1.getRelatedInstance().getModelInfo().setModelVersion("1.0");
     //
-    relatedInstanceListElement2.relatedInstance.instanceId = "594e2fe0-48b8-41ff-82e2-3d4bab69b192";
-    relatedInstanceListElement2.relatedInstance.modelInfo = new SOModelInfo();
-    relatedInstanceListElement2.relatedInstance.modelInfo.modelType = "vnf";
-    relatedInstanceListElement2.relatedInstance.modelInfo.modelInvariantId =
-        "033a32ed-aa65-4764-a736-36f2942f1aa0";
-    relatedInstanceListElement2.relatedInstance.modelInfo.modelVersionId =
-        "d4d072dc-4e21-4a03-9524-628985819a8e";
-    relatedInstanceListElement2.relatedInstance.modelInfo.modelName = "c15ce9e1-e914-4c8f-b8bb";
-    relatedInstanceListElement2.relatedInstance.modelInfo.modelVersion = "1";
-    relatedInstanceListElement2.relatedInstance.modelInfo.modelCustomizationName =
-        "c15ce9e1-e914-4c8f-b8bb 1";
+    relatedInstanceListElement2.getRelatedInstance().setInstanceId("594e2fe0-48b8-41ff-82e2-3d4bab69b192");
+    relatedInstanceListElement2.getRelatedInstance().setModelInfo(new SOModelInfo());
+    relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelType("vnf");
+    relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelInvariantId(
+        "033a32ed-aa65-4764-a736-36f2942f1aa0");
+    relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelVersionId(
+        "d4d072dc-4e21-4a03-9524-628985819a8e");
+    relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelName("c15ce9e1-e914-4c8f-b8bb");
+    relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelVersion("1");
+    relatedInstanceListElement2.getRelatedInstance().getModelInfo().setModelCustomizationName(
+        "c15ce9e1-e914-4c8f-b8bb 1");
     //
-    request.requestDetails.relatedInstanceList.add(relatedInstanceListElement1);
-    request.requestDetails.relatedInstanceList.add(relatedInstanceListElement2);
+    request.getRequestDetails().getRelatedInstanceList().add(relatedInstanceListElement1);
+    request.getRequestDetails().getRelatedInstanceList().add(relatedInstanceListElement2);
 
     return request;
   }