Documenting a known issue
[vid.git] / vid-app-common / src / main / java / org / onap / vid / services / AaiService.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * VID
4  * ================================================================================
5  * Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved.
6  * Modifications Copyright (C) 2018 - 2019 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
11  * 
12  *      http://www.apache.org/licenses/LICENSE-2.0
13  * 
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=========================================================
20  */
21
22 package org.onap.vid.services;
23
24 import java.util.Collection;
25 import java.util.List;
26 import javax.ws.rs.core.Response;
27 import org.onap.vid.aai.AaiGetVnfResponse;
28 import org.onap.vid.aai.AaiResponse;
29 import org.onap.vid.aai.AaiResponseTranslator;
30 import org.onap.vid.aai.SubscriberFilteredResults;
31 import org.onap.vid.aai.model.AaiGetInstanceGroupsByCloudRegion;
32 import org.onap.vid.aai.model.AaiGetOperationalEnvironments.OperationalEnvironmentList;
33 import org.onap.vid.aai.model.AaiGetPnfs.Pnf;
34 import org.onap.vid.aai.model.AaiGetTenatns.GetTenantsResponse;
35 import org.onap.vid.aai.model.ModelVer;
36 import org.onap.vid.aai.model.PortDetailsTranslator;
37 import org.onap.vid.asdc.beans.Service;
38 import org.onap.vid.model.SubscriberList;
39 import org.onap.vid.model.aaiTree.Network;
40 import org.onap.vid.model.aaiTree.RelatedVnf;
41 import org.onap.vid.model.aaiTree.VpnBinding;
42 import org.onap.vid.roles.RoleValidator;
43
44 /**
45  * Created by Oren on 7/4/17.
46  */
47 public interface AaiService {
48
49
50     SubscriberFilteredResults getFullSubscriberList(RoleValidator roleValidator);
51
52     AaiResponse getSubscriberData(String subscriberId, RoleValidator roleValidator, boolean omitServiceInstances);
53
54     AaiResponse getServiceInstanceSearchResults(String subscriberId, String instanceIdentifier, RoleValidator roleProvider, List<String> owningEntities, List<String> projects);
55
56     AaiResponse<SubscriberList> getFullSubscriberList();
57
58     AaiResponse getServices(RoleValidator roleValidator);
59     
60     AaiResponse getAaiZones();
61
62     AaiResponse getNetworkCollectionDetails(String serviceInstanceId);
63
64     AaiResponse<AaiGetInstanceGroupsByCloudRegion> getInstanceGroupsByCloudRegion(String cloudOwner, String cloudRegionId, String networkFunction);
65
66     AaiResponse<OperationalEnvironmentList> getOperationalEnvironments(String operationalEnvironmentType, String operationalEnvironmentStatus);
67
68     AaiResponse getAicZoneForPnf(String globalCustomerId , String serviceType , String serviceId);
69
70     AaiResponse<AaiGetVnfResponse> getVNFData(String globalSubscriberId, String serviceType);
71
72     AaiResponse<GetTenantsResponse[]> getTenants(String globalCustomerId, String serviceType, RoleValidator roleValidator);
73
74     AaiResponse getVNFData(String globalSubscriberId, String serviceType, String serviceInstanceId);
75
76     AaiResponse getNodeTemplateInstances(String globalCustomerId, String serviceType, String modelVersionId, String modelInvariantId, String cloudRegion);
77
78     Response getVersionByInvariantId(List<String> modelInvariantId);
79
80     Collection<Service> getServicesByDistributionStatus();
81
82     AaiResponse<Pnf> getSpecificPnf(String pnfId);
83
84     List<String> getServiceInstanceAssociatedPnfs(String globalCustomerId, String serviceType, String serviceInstanceId);
85
86     AaiResponse getPNFData(String globalCustomerId, String serviceType, String modelVersionId, String modelInvariantId, String cloudRegion, String equipVendor, String equipModel);
87
88     AaiResponseTranslator.PortMirroringConfigData getPortMirroringConfigData(String configurationId);
89
90     List<PortDetailsTranslator.PortDetails> getPortMirroringSourcePorts(String configurationId);
91
92     AaiResponse getInstanceGroupsByVnfInstanceId(String vnfInstanceId);
93
94     String getAAIServiceTree(String globalCustomerId, String serviceType, String serviceInstanceId);
95
96     GetTenantsResponse getHomingDataByVfModule(String vnfInstanceId, String vfModuleId);
97
98     List<RelatedVnf> searchGroupMembers(String globalCustomerId, String serviceType, String invariantId, String groupType, String groupRole);
99
100     List<VpnBinding> getVpnListByVpnType(String vpnType);
101
102     List<Network> getL3NetworksByCloudRegion(String cloudRegionId, String tenantId, String networkRole);
103
104     ModelVer getNewestModelVersionByInvariantId(String modelInvariantId);
105 }