2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * Modifications Copyright (C) 2018 Nokia. All rights reserved.
7 * ================================================================================
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 * ============LICENSE_END=========================================================
22 package org.onap.vid.services;
24 import io.joshworks.restclient.http.HttpResponse;
25 import org.onap.vid.aai.AaiResponse;
26 import org.onap.vid.aai.AaiResponseTranslator;
27 import org.onap.vid.aai.SubscriberFilteredResults;
28 import org.onap.vid.aai.model.AaiGetInstanceGroupsByCloudRegion;
29 import org.onap.vid.aai.model.AaiGetOperationalEnvironments.OperationalEnvironmentList;
30 import org.onap.vid.aai.model.AaiGetPnfs.Pnf;
31 import org.onap.vid.aai.model.AaiGetTenatns.GetTenantsResponse;
32 import org.onap.vid.aai.model.PortDetailsTranslator;
33 import org.onap.vid.asdc.beans.Service;
34 import org.onap.vid.model.SubscriberList;
35 import org.onap.vid.roles.RoleValidator;
37 import javax.ws.rs.core.Response;
38 import java.util.Collection;
39 import java.util.List;
42 * Created by Oren on 7/4/17.
44 public interface AaiService {
47 SubscriberFilteredResults getFullSubscriberList(RoleValidator roleValidator);
49 AaiResponse getSubscriberData(String subscriberId, RoleValidator roleValidator);
51 AaiResponse getServiceInstanceSearchResults(String subscriberId, String instanceIdentifier, RoleValidator roleProvider, List<String> owningEntities, List<String> projects);
53 HttpResponse<SubscriberList> getFullSubscriberList();
55 AaiResponse getServices(RoleValidator roleValidator);
57 AaiResponse getAaiZones();
59 AaiResponse getNetworkCollectionDetails(String serviceInstanceId);
61 AaiResponse<AaiGetInstanceGroupsByCloudRegion> getInstanceGroupsByCloudRegion(String cloudOwner, String cloudRegionId, String networkFunction);
63 AaiResponse<OperationalEnvironmentList> getOperationalEnvironments(String operationalEnvironmentType, String operationalEnvironmentStatus);
65 AaiResponse getAicZoneForPnf(String globalCustomerId , String serviceType , String serviceId);
67 Response getVNFData(String globalSubscriberId, String serviceType);
69 AaiResponse<GetTenantsResponse[]> getTenants(String globalCustomerId, String serviceType, RoleValidator roleValidator);
71 AaiResponse getVNFData(String globalSubscriberId, String serviceType, String serviceInstanceId);
73 AaiResponse getNodeTemplateInstances(String globalCustomerId, String serviceType, String modelVersionId, String modelInvariantId, String cloudRegion);
75 Response getVersionByInvariantId(List<String> modelInvariantId);
77 Collection<Service> getServicesByDistributionStatus();
79 AaiResponse<Pnf> getSpecificPnf(String pnfId);
81 List<String> getServiceInstanceAssociatedPnfs(String globalCustomerId, String serviceType, String serviceInstanceId);
83 AaiResponse getPNFData(String globalCustomerId, String serviceType, String modelVersionId, String modelInvariantId, String cloudRegion, String equipVendor, String equipModel);
85 AaiResponseTranslator.PortMirroringConfigData getPortMirroringConfigData(String configurationId);
87 List<PortDetailsTranslator.PortDetails> getPortMirroringSourcePorts(String configurationId);
89 AaiResponse getInstanceGroupsByVnfInstanceId(String vnfInstanceId);