alaCarteSet unrecognized field 41/19141/1
authorRob Daugherty <rd472p@att.com>
Mon, 16 Oct 2017 22:05:26 +0000 (18:05 -0400)
committerRob Daugherty <rd472p@att.com>
Mon, 16 Oct 2017 22:12:20 +0000 (18:12 -0400)
The aLaCarte and aLaCarteSet fields in RequestParameters class
and their corresponsding methods are not consistently named,
and thus they are not serialized/deserialized correctly by
the Jackson JSON utilities.

We were seeing this sort of thing in the requests database:

"requestParameters": {
  "subscriptionServiceType": "vFW",
  "aLaCarte": true,
  "autoBuildVfModules": false,
  "cascadeDelete": false,
  "usePreload": true,
  "rebuildVolumeGroups": false,
  "alaCarteSet": true,
  "alaCarte": true
}

We obviously shouldn't have "alaCarte" as well as "aLaCarte".
And I don't think we want "alaCarteSet" to be persisted in the
DB at all (it should be ignored by the JSON mapper).

Issue: SO-219
Change-Id: Ia943d2970cb7db153f3af73289f426a154917f7e
Signed-off-by: Rob Daugherty <rd472p@att.com>
mso-api-handlers/mso-api-handler-infra/src/main/java/org/openecomp/mso/apihandlerinfra/MsoRequest.java
mso-api-handlers/mso-api-handler-infra/src/main/java/org/openecomp/mso/apihandlerinfra/ServiceInstances.java
mso-api-handlers/mso-api-handler-infra/src/main/java/org/openecomp/mso/apihandlerinfra/serviceinstancebeans/RequestParameters.java
mso-api-handlers/mso-api-handler-infra/src/test/java/org/openecomp/mso/apihandlerinfra/MsoRequestTest.java

index 9b975fa..27c3c2b 100644 (file)
@@ -254,7 +254,7 @@ public class MsoRequest {
         RequestParameters requestParameters = sir.getRequestDetails().getRequestParameters();
         if(this.reqVersion >= 3){
                if(requestParameters!=null){
-                       this.aLaCarteFlag = sir.getRequestDetails().getRequestParameters().getALaCarte();
+                       this.aLaCarteFlag = sir.getRequestDetails().getRequestParameters().isaLaCarte();
                }else{
                        this.aLaCarteFlag = false;
                }
@@ -1010,4 +1010,4 @@ public class MsoRequest {
        public void setReqVersion(int reqVersion) {
                this.reqVersion = reqVersion;
        }
-}
\ No newline at end of file
+}
index 66a14db..6413c4b 100644 (file)
@@ -771,7 +771,7 @@ public class ServiceInstances {
                }
                //if an aLaCarte flag was sent in the request, throw an error if the recipe was not found
                RequestParameters reqParam = msoRequest.getServiceInstancesRequest().getRequestDetails().getRequestParameters();
-               if(reqParam!=null && reqParam.isALaCarteSet() && recipe==null){
+               if(reqParam!=null && reqParam.isaLaCarteSet() && recipe==null){
                        return null;
                }else if (recipe == null) {  //aLaCarte wasn't sent, so we'll try the default
                        serviceRecord = db.getServiceByModelName(defaultServiceModelName);
index a2acc3c..f342729 100644 (file)
@@ -36,7 +36,7 @@ public class RequestParameters {
        @JsonSerialize(include=Inclusion.ALWAYS)
        private boolean aLaCarte = false;
        @JsonIgnore
-       private boolean isALaCarteSet = false;
+       private boolean aLaCarteSet = false;
        @JsonSerialize(include=Inclusion.ALWAYS)
        private boolean autoBuildVfModules = false;
        @JsonSerialize(include=Inclusion.ALWAYS)
@@ -55,18 +55,14 @@ public class RequestParameters {
                this.subscriptionServiceType = subscriptionServiceType;
        }
 
-       public boolean getALaCarte() {
-               return aLaCarte;
-       }
-
        public void setaLaCarte(boolean aLaCarte) {
                this.aLaCarte = aLaCarte;
-               this.isALaCarteSet = true;
+               this.aLaCarteSet = true;
        }
 
        //returns true if aLaCarte param came in on request
-       public boolean isALaCarteSet() {
-               return isALaCarteSet;
+       public boolean isaLaCarteSet() {
+               return aLaCarteSet;
        }
 
        public boolean isaLaCarte() {
index d20357d..6a7fc2c 100644 (file)
@@ -84,7 +84,7 @@ public class MsoRequestTest {
                        assertEquals(msoRequest.getRequestInfo().getSource(),"VID");
                        assertFalse(msoRequest.getALaCarteFlag());
                        assertEquals(msoRequest.getReqVersion(),3);
-                       boolean testIsALaCarteSet = msoRequest.getServiceInstancesRequest().getRequestDetails().getRequestParameters().isALaCarteSet();
+                       boolean testIsALaCarteSet = msoRequest.getServiceInstancesRequest().getRequestDetails().getRequestParameters().isaLaCarteSet();
                        assertFalse(testIsALaCarteSet);
 
        }
@@ -186,13 +186,13 @@ public class MsoRequestTest {
                        ServiceInstancesRequest sir  = mapper.readValue(requestJSON1, ServiceInstancesRequest.class);
                        MsoRequest msoRequest = new MsoRequest ("1234");
                        msoRequest.parse(sir, instanceIdMap, Action.deleteInstance, "v3");
-                       boolean testIsALaCarteSet = msoRequest.getServiceInstancesRequest().getRequestDetails().getRequestParameters().isALaCarteSet();
+                       boolean testIsALaCarteSet = msoRequest.getServiceInstancesRequest().getRequestDetails().getRequestParameters().isaLaCarteSet();
                        assertTrue(testIsALaCarteSet);
                        assertFalse(msoRequest.getALaCarteFlag());
                        sir  = mapper.readValue(requestJSON2, ServiceInstancesRequest.class);
                        msoRequest = new MsoRequest ("12345");
                        msoRequest.parse(sir, instanceIdMap, Action.deleteInstance, "v3");
-                       testIsALaCarteSet = msoRequest.getServiceInstancesRequest().getRequestDetails().getRequestParameters().isALaCarteSet();
+                       testIsALaCarteSet = msoRequest.getServiceInstancesRequest().getRequestDetails().getRequestParameters().isaLaCarteSet();
                        assertTrue(testIsALaCarteSet);
                        assertTrue(msoRequest.getALaCarteFlag());