aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIttay Stern <ittay.stern@att.com>2018-11-27 16:02:41 +0200
committerIttay Stern <ittay.stern@att.com>2018-11-27 16:10:53 +0200
commit7b2e1132d6672effc08def1ccdf584fbd344d071 (patch)
treeb8356937addc7a6f93754d40f359fb1e7786a230
parentd0e33a075713cb711d97a4186f858b931ff793ef (diff)
Reject getVersionByInvariantId with no IDs
Reject the case where zero invariant-ids provided to getVersionByInvariantId, as this will cause full models listing. Change-Id: I7b86b65de30a9df0b3fd1cafa60e8254e8e252c0 Issue-ID: VID-360 Signed-off-by: Ittay Stern <ittay.stern@att.com>
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java13
-rw-r--r--vid-app-common/src/test/java/org/onap/vid/services/AaiServiceImplTest.java8
2 files changed, 14 insertions, 7 deletions
diff --git a/vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java b/vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java
index 06e0f0174..baf92b880 100644
--- a/vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java
+++ b/vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java
@@ -8,16 +8,17 @@ import org.codehaus.jackson.map.ObjectMapper;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
+import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate;
import org.onap.vid.aai.model.AaiGetAicZone.AicZones;
import org.onap.vid.aai.model.*;
import org.onap.vid.aai.model.AaiGetNetworkCollectionDetails.*;
import org.onap.vid.aai.model.AaiGetOperationalEnvironments.OperationalEnvironmentList;
import org.onap.vid.aai.model.AaiGetPnfs.Pnf;
import org.onap.vid.aai.model.AaiGetServicesRequestModel.GetServicesAAIRespone;
-import org.onap.vid.aai.model.AaiGetTenatns.GetTenantsResponse;
import org.onap.vid.aai.model.Relationship;
import org.onap.vid.aai.model.RelationshipData;
import org.onap.vid.aai.model.RelationshipList;
+import org.onap.vid.aai.model.AaiGetTenatns.GetTenantsResponse;
import org.onap.vid.aai.util.AAIRestInterface;
import org.onap.vid.aai.util.VidObjectMapperType;
import org.onap.vid.exceptions.GenericUncheckedException;
@@ -26,7 +27,6 @@ import org.onap.vid.model.probes.ErrorMetadata;
import org.onap.vid.model.probes.ExternalComponentStatus;
import org.onap.vid.model.probes.HttpRequestMetadata;
import org.onap.vid.utils.Logging;
-import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate;
import org.springframework.web.util.UriUtils;
import javax.inject.Inject;
@@ -37,7 +37,10 @@ import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
-import java.util.*;
+import java.util.Date;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.UUID;
import static java.util.Collections.emptyList;
import static org.apache.commons.lang3.ObjectUtils.defaultIfNull;
@@ -297,6 +300,10 @@ public class AaiClient implements AaiClientInterface {
@Override
public Response getVersionByInvariantId(List<String> modelInvariantId) {
+ if (modelInvariantId.isEmpty()) {
+ throw new GenericUncheckedException("Zero invariant-ids provided to getVersionByInvariantId; request is rejected as this will cause full models listing");
+ }
+
StringBuilder sb = new StringBuilder();
for (String id : modelInvariantId){
sb.append(MODEL_INVARIANT_ID);
diff --git a/vid-app-common/src/test/java/org/onap/vid/services/AaiServiceImplTest.java b/vid-app-common/src/test/java/org/onap/vid/services/AaiServiceImplTest.java
index 70a454a75..efa12f2c0 100644
--- a/vid-app-common/src/test/java/org/onap/vid/services/AaiServiceImplTest.java
+++ b/vid-app-common/src/test/java/org/onap/vid/services/AaiServiceImplTest.java
@@ -21,10 +21,8 @@
package org.onap.vid.services;
+import com.google.common.collect.ImmutableList;
import io.joshworks.restclient.http.HttpResponse;
-import java.util.Collection;
-import java.util.List;
-
import org.junit.Assert;
import org.junit.Test;
import org.onap.vid.aai.AaiResponse;
@@ -35,6 +33,8 @@ import org.onap.vid.aai.model.AaiGetTenatns.GetTenantsResponse;
import org.onap.vid.model.SubscriberList;
import org.onap.vid.roles.RoleValidator;
+import java.util.List;
+
public class AaiServiceImplTest {
private AaiServiceImpl createTestSubject() {
@@ -166,7 +166,7 @@ public class AaiServiceImplTest {
@Test
public void testGetVersionByInvariantId() throws Exception {
AaiServiceImpl testSubject;
- List<String> modelInvariantId = null;
+ List<String> modelInvariantId = ImmutableList.of("some invariant id");
// default test
try {