summaryrefslogtreecommitdiffstats
path: root/vid-app-common/src/main
diff options
context:
space:
mode:
authorIttay Stern <ittay.stern@att.com>2019-08-07 07:19:18 +0000
committerGerrit Code Review <gerrit@onap.org>2019-08-07 07:19:18 +0000
commitd506921fc02e398dbe27f9ba113928e9264b1bdc (patch)
treebcdbed88e56f25e49c4d14686219536903b9cd6c /vid-app-common/src/main
parent0f4ce01009431809482c3d9fb041a565279242c7 (diff)
parent4e965d4d4f40e17841e329d0cff938b029aed89a (diff)
Merge changes Iede12655,I73fcc78e
* changes: add endpoints for getVpnList and getActiveNetworkList use cache for retrieving all subscribers list
Diffstat (limited to 'vid-app-common/src/main')
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/controller/AaiController2.java21
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/controller/WebConfig.java6
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/reports/BasicReportGenerator.java27
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/roles/RoleProvider.java6
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/services/AaiService.java3
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/services/AaiServiceImpl.java20
6 files changed, 48 insertions, 35 deletions
diff --git a/vid-app-common/src/main/java/org/onap/vid/controller/AaiController2.java b/vid-app-common/src/main/java/org/onap/vid/controller/AaiController2.java
index 19187e0fc..d7d2f85db 100644
--- a/vid-app-common/src/main/java/org/onap/vid/controller/AaiController2.java
+++ b/vid-app-common/src/main/java/org/onap/vid/controller/AaiController2.java
@@ -20,10 +20,14 @@
package org.onap.vid.controller;
+import java.util.stream.Collectors;
+import org.apache.commons.lang3.StringUtils;
import org.onap.vid.aai.AaiClientInterface;
import org.onap.vid.aai.model.AaiGetTenatns.GetTenantsResponse;
import org.onap.vid.aai.model.Permissions;
+import org.onap.vid.model.aaiTree.Network;
import org.onap.vid.model.aaiTree.RelatedVnf;
+import org.onap.vid.model.aaiTree.VpnBinding;
import org.onap.vid.roles.RoleProvider;
import org.onap.vid.services.AaiService;
import org.springframework.beans.factory.annotation.Autowired;
@@ -94,5 +98,22 @@ public class AaiController2 extends VidRestrictedBaseController {
return aaiService.searchGroupMembers(globalCustomerId, serviceType, invariantId, groupType, groupRole);
}
+ @RequestMapping(value = "/aai_get_vpn_list", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
+ public List<VpnBinding> getVpnList() {
+ return aaiService.getVpnListByVpnType("SERVICE-INFRASTRUCTURE");
+ }
+ @RequestMapping(value = "/aai_get_active_networks",
+ method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
+ public List<Network> getActiveNetworkList(
+ @RequestParam("cloudRegion") String cloudRegion,
+ @RequestParam("tenantId") String tenantId,
+ @RequestParam(value = "networkRole", required = false) String networkRole) {
+ return aaiService.getL3NetworksByCloudRegion(cloudRegion, tenantId, networkRole)
+ .stream()
+ .filter(Network::isBoundToVpn)
+ .filter(network -> StringUtils.isNotEmpty(network.getInstanceName()))
+ .filter(network -> StringUtils.equalsIgnoreCase(network.getOrchStatus(), "active"))
+ .collect(Collectors.toList());
+ }
}
diff --git a/vid-app-common/src/main/java/org/onap/vid/controller/WebConfig.java b/vid-app-common/src/main/java/org/onap/vid/controller/WebConfig.java
index 71c6bf345..b9908d1e3 100644
--- a/vid-app-common/src/main/java/org/onap/vid/controller/WebConfig.java
+++ b/vid-app-common/src/main/java/org/onap/vid/controller/WebConfig.java
@@ -98,9 +98,9 @@ public class WebConfig {
}
@Bean
- public AaiService getAaiService(AaiClientInterface aaiClient, AaiOverTLSClientInterface aaiOverTLSClient,
- AaiResponseTranslator aaiResponseTranslator, AAITreeNodeBuilder aaiTreeNode, AAIServiceTree aaiServiceTree, ExecutorService executorService) {
- return new AaiServiceImpl(aaiClient, aaiOverTLSClient, aaiResponseTranslator, aaiServiceTree, executorService);
+ public AaiService getAaiService(AaiClientInterface aaiClient, AaiResponseTranslator aaiResponseTranslator,
+ AAITreeNodeBuilder aaiTreeNode, AAIServiceTree aaiServiceTree, ExecutorService executorService) {
+ return new AaiServiceImpl(aaiClient, aaiResponseTranslator, aaiServiceTree, executorService);
}
@Bean
diff --git a/vid-app-common/src/main/java/org/onap/vid/reports/BasicReportGenerator.java b/vid-app-common/src/main/java/org/onap/vid/reports/BasicReportGenerator.java
index 00f8077d3..4c8447069 100644
--- a/vid-app-common/src/main/java/org/onap/vid/reports/BasicReportGenerator.java
+++ b/vid-app-common/src/main/java/org/onap/vid/reports/BasicReportGenerator.java
@@ -19,40 +19,39 @@
*/
package org.onap.vid.reports;
+import static org.onap.portalsdk.core.util.SystemProperties.ECOMP_REQUEST_ID;
+
import com.google.common.collect.ImmutableMap;
import io.joshworks.restclient.http.HttpResponse;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import javax.servlet.http.HttpServletRequest;
+import org.onap.vid.aai.AaiOverTLSClientInterface;
import org.onap.vid.controller.ControllersUtils;
import org.onap.vid.model.GitRepositoryState;
import org.onap.vid.model.SubscriberList;
import org.onap.vid.model.errorReport.ReportCreationParameters;
import org.onap.vid.model.probes.ExternalComponentStatus;
-import org.onap.vid.services.AaiService;
import org.onap.vid.services.ProbeService;
import org.onap.vid.utils.SystemPropertiesWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
-import javax.servlet.http.HttpServletRequest;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
-
-import static org.onap.portalsdk.core.util.SystemProperties.ECOMP_REQUEST_ID;
-
@Component
public class BasicReportGenerator implements ReportGenerator {
private static final String GIT_PROPERTIES_FILENAME = "git.properties";
- private final AaiService aaiService;
+ private final AaiOverTLSClientInterface aaiOverTLSClient;
private final SystemPropertiesWrapper systemPropertiesWrapper;
private final ProbeService probeService;
@Autowired
- public BasicReportGenerator(AaiService aaiService, SystemPropertiesWrapper systemPropertiesWrapper,
+ public BasicReportGenerator(AaiOverTLSClientInterface aaiOverTLSClient, SystemPropertiesWrapper systemPropertiesWrapper,
ProbeService probeService) {
- this.aaiService = aaiService;
+ this.aaiOverTLSClient = aaiOverTLSClient;
this.systemPropertiesWrapper = systemPropertiesWrapper;
this.probeService = probeService;
}
@@ -96,7 +95,7 @@ public class BasicReportGenerator implements ReportGenerator {
ImmutableMap<String, Object> getFullSubscriberList() {
ImmutableMap<String, Object> fullSubscriberList;
try {
- HttpResponse<SubscriberList> fullSubscriberListResponse = aaiService.getFullSubscriberList();
+ HttpResponse<SubscriberList> fullSubscriberListResponse = aaiOverTLSClient.getAllSubscribers();
fullSubscriberList = ImmutableMap.<String, Object>builder()
.put("status", fullSubscriberListResponse.getStatus())
.put("body", fullSubscriberListResponse.getBody())
diff --git a/vid-app-common/src/main/java/org/onap/vid/roles/RoleProvider.java b/vid-app-common/src/main/java/org/onap/vid/roles/RoleProvider.java
index 6c0fd3f52..898db332c 100644
--- a/vid-app-common/src/main/java/org/onap/vid/roles/RoleProvider.java
+++ b/vid-app-common/src/main/java/org/onap/vid/roles/RoleProvider.java
@@ -23,7 +23,6 @@ package org.onap.vid.roles;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
-import io.joshworks.restclient.http.HttpResponse;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -34,6 +33,7 @@ import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest;
import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate;
import org.onap.portalsdk.core.web.support.UserUtils;
+import org.onap.vid.aai.AaiResponse;
import org.onap.vid.aai.exceptions.RoleParsingException;
import org.onap.vid.model.ModelConstants;
import org.onap.vid.model.Subscriber;
@@ -123,8 +123,8 @@ public class RoleProvider {
private String replaceSubscriberNameToGlobalCustomerID(String subscriberName, String logPrefix) {
// SubscriberList should be cached by cacheProvider so by calling getFullSubscriberList() method we just gat it from cache
- HttpResponse<SubscriberList> subscribersResponse = aaiService.getFullSubscriberList();
- SubscriberList subscribers = subscribersResponse.getBody();
+ AaiResponse<SubscriberList> subscribersResponse = aaiService.getFullSubscriberList();
+ SubscriberList subscribers = subscribersResponse.getT();
try {
LOG.debug(EELFLoggerDelegate.debugLogger, logPrefix + "subscribers list size is " + subscribers.customer.size() + " with the values " + om.writeValueAsString(subscribers.customer));
diff --git a/vid-app-common/src/main/java/org/onap/vid/services/AaiService.java b/vid-app-common/src/main/java/org/onap/vid/services/AaiService.java
index 6c63ae07c..31fbe65d8 100644
--- a/vid-app-common/src/main/java/org/onap/vid/services/AaiService.java
+++ b/vid-app-common/src/main/java/org/onap/vid/services/AaiService.java
@@ -21,7 +21,6 @@
package org.onap.vid.services;
-import io.joshworks.restclient.http.HttpResponse;
import java.util.Collection;
import java.util.List;
import javax.ws.rs.core.Response;
@@ -53,7 +52,7 @@ public interface AaiService {
AaiResponse getServiceInstanceSearchResults(String subscriberId, String instanceIdentifier, RoleValidator roleProvider, List<String> owningEntities, List<String> projects);
- HttpResponse<SubscriberList> getFullSubscriberList();
+ AaiResponse<SubscriberList> getFullSubscriberList();
AaiResponse getServices(RoleValidator roleValidator);
diff --git a/vid-app-common/src/main/java/org/onap/vid/services/AaiServiceImpl.java b/vid-app-common/src/main/java/org/onap/vid/services/AaiServiceImpl.java
index fcdae441c..9b890478f 100644
--- a/vid-app-common/src/main/java/org/onap/vid/services/AaiServiceImpl.java
+++ b/vid-app-common/src/main/java/org/onap/vid/services/AaiServiceImpl.java
@@ -25,7 +25,6 @@ import static org.onap.vid.aai.AaiClient.QUERY_FORMAT_RESOURCE;
import static org.onap.vid.utils.KotlinUtilsKt.JACKSON_OBJECT_MAPPER;
import com.fasterxml.jackson.databind.JsonNode;
-import io.joshworks.restclient.http.HttpResponse;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.ArrayList;
@@ -104,7 +103,6 @@ public class AaiServiceImpl implements AaiService {
private int indexOfSubscriberName = 6;
private AaiClientInterface aaiClient;
- private AaiOverTLSClientInterface aaiOverTLSClient;
private AaiResponseTranslator aaiResponseTranslator;
private AAIServiceTree aaiServiceTree;
private ExecutorService executorService;
@@ -115,13 +113,11 @@ public class AaiServiceImpl implements AaiService {
@Autowired
public AaiServiceImpl(
AaiClientInterface aaiClient,
- AaiOverTLSClientInterface aaiOverTLSClient,
AaiResponseTranslator aaiResponseTranslator,
AAIServiceTree aaiServiceTree,
ExecutorService executorService)
{
this.aaiClient = aaiClient;
- this.aaiOverTLSClient = aaiOverTLSClient;
this.aaiResponseTranslator = aaiResponseTranslator;
this.aaiServiceTree = aaiServiceTree;
this.executorService = executorService;
@@ -241,13 +237,11 @@ public class AaiServiceImpl implements AaiService {
@Override
public SubscriberFilteredResults getFullSubscriberList(RoleValidator roleValidator) {
- HttpResponse<SubscriberList> allSubscribers = aaiOverTLSClient.getAllSubscribers();
- return new SubscriberFilteredResults(
- roleValidator,
- allSubscribers.getBody(),
- allSubscribers.getStatusText(),
- allSubscribers.getStatus()
- );
+ AaiResponse<SubscriberList> subscriberResponse = aaiClient.getAllSubscribers();
+
+ return new SubscriberFilteredResults(roleValidator, subscriberResponse.getT(),
+ subscriberResponse.getErrorMessage(),
+ subscriberResponse.getHttpCode());
}
@Override
@@ -256,8 +250,8 @@ public class AaiServiceImpl implements AaiService {
}
@Override
- public HttpResponse<SubscriberList> getFullSubscriberList() {
- return aaiOverTLSClient.getAllSubscribers();
+ public AaiResponse<SubscriberList> getFullSubscriberList() {
+ return aaiClient.getAllSubscribers();
}
@Override