037b077fc336849f3e5e4b83544c7cbe8bac8430
[aai/esr-server.git] / esr-mgr / src / main / java / org / onap / aai / esr / externalservice / aai / IExternalSystem.java
1 /**
2  * Copyright 2017 ZTE Corporation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package org.onap.aai.esr.externalservice.aai;
17
18 import javax.ws.rs.Consumes;
19 import javax.ws.rs.DELETE;
20 import javax.ws.rs.GET;
21 import javax.ws.rs.HeaderParam;
22 import javax.ws.rs.PUT;
23 import javax.ws.rs.Path;
24 import javax.ws.rs.PathParam;
25 import javax.ws.rs.Produces;
26 import javax.ws.rs.QueryParam;
27 import javax.ws.rs.core.MediaType;
28
29 import org.onap.aai.esr.entity.aai.EsrEmsDetail;
30 import org.onap.aai.esr.entity.aai.EsrThirdpartySdncDetail;
31 import org.onap.aai.esr.entity.aai.EsrVnfmDetail;
32 import org.onap.aai.esr.exception.ExtsysException;
33
34 @Path("/")
35 public interface IExternalSystem {
36
37   @PUT
38   @Path("/esr-vnfm-list/esr-vnfm/{vnfm_id}")
39   @Consumes(MediaType.APPLICATION_JSON)
40   @Produces(MediaType.APPLICATION_JSON)
41   public void registerVNFM(@HeaderParam("X-TransactionId") String transactionId,
42       @HeaderParam("X-FromAppId") String fromApp,
43       @HeaderParam("Authorization") String authorization, @PathParam("vnfm_id") String vnfmId,
44       EsrVnfmDetail esrVnfmDetail) throws ExtsysException;
45
46   @GET
47   @Path("/esr-vnfm-list/esr-vnfm/{vnfm_id}?depth=all")
48   @Consumes(MediaType.APPLICATION_JSON)
49   @Produces(MediaType.APPLICATION_JSON)
50   public String queryVNFMDetail(@HeaderParam("X-TransactionId") String transactionId,
51       @HeaderParam("X-FromAppId") String fromApp,
52       @HeaderParam("Authorization") String authorization, @PathParam("vnfm_id") String vnfmId)
53       throws ExtsysException;
54
55   @GET
56   @Path("/esr-vnfm-list")
57   @Consumes(MediaType.APPLICATION_JSON)
58   @Produces(MediaType.APPLICATION_JSON)
59   public String queryVNFMList(@HeaderParam("X-TransactionId") String transactionId,
60       @HeaderParam("X-FromAppId") String fromApp,
61       @HeaderParam("Authorization") String authorization) throws ExtsysException;
62
63   @DELETE
64   @Path("/esr-vnfm-list/esr-vnfm/{vnfm_id}")
65   @Consumes(MediaType.APPLICATION_JSON)
66   @Produces(MediaType.APPLICATION_JSON)
67   public void deleteVNFM(@HeaderParam("X-TransactionId") String transactionId,
68       @HeaderParam("X-FromAppId") String fromApp,
69       @HeaderParam("Authorization") String authorization,
70       @PathParam("vnfm_id") String vnfmId,
71       @QueryParam("resource-version") String resourceVersion) throws ExtsysException;
72
73   @PUT
74   @Path("/esr-ems-list/esr-ems/{ems_id}")
75   @Consumes(MediaType.APPLICATION_JSON)
76   @Produces(MediaType.APPLICATION_JSON)
77   public void registerEMS(@HeaderParam("X-TransactionId") String transactionId,
78       @HeaderParam("X-FromAppId") String fromApp,
79       @HeaderParam("Authorization") String authorization, @PathParam("ems_id") String emsId,
80       EsrEmsDetail esrEmsDetail) throws ExtsysException;
81
82   @GET
83   @Path("/esr-ems-list/esr-ems/{ems_id}?depth=all")
84   @Consumes(MediaType.APPLICATION_JSON)
85   @Produces(MediaType.APPLICATION_JSON)
86   public String queryEMSDetail(@HeaderParam("X-TransactionId") String transactionId,
87       @HeaderParam("X-FromAppId") String fromApp,
88       @HeaderParam("Authorization") String authorization, @PathParam("ems_id") String emsId)
89       throws ExtsysException;
90
91   @GET
92   @Path("/esr-ems-list")
93   @Consumes(MediaType.APPLICATION_JSON)
94   @Produces(MediaType.APPLICATION_JSON)
95   public String queryEMSList(@HeaderParam("X-TransactionId") String transactionId,
96       @HeaderParam("X-FromAppId") String fromApp,
97       @HeaderParam("Authorization") String authorization) throws ExtsysException;
98
99   @DELETE
100   @Path("/esr-ems-list/esr-ems/{ems_id}")
101   @Consumes(MediaType.APPLICATION_JSON)
102   @Produces(MediaType.APPLICATION_JSON)
103   public void deleteEMS(@HeaderParam("X-TransactionId") String transactionId,
104       @HeaderParam("X-FromAppId") String fromApp,
105       @HeaderParam("Authorization") String authorization,
106       @PathParam("ems_id") String emsId,
107       @QueryParam("resource-version") String resourceVersion) throws ExtsysException;
108   
109   @PUT
110   @Path("/esr-thirdparty-sdnc-list/esr-thirdparty-sdnc/{thirdparty-sdnc-id}")
111   @Consumes(MediaType.APPLICATION_JSON)
112   @Produces(MediaType.APPLICATION_JSON)
113   public void registerThirdpartySdnc(@HeaderParam("X-TransactionId") String transactionId,
114       @HeaderParam("X-FromAppId") String fromApp,
115       @HeaderParam("Authorization") String authorization, @PathParam("thirdparty-sdnc-id") String thirdpartySdncId,
116       EsrThirdpartySdncDetail esrThirdpartySdncDetail) throws ExtsysException;
117
118   @GET
119   @Path("/esr-thirdparty-sdnc-list/esr-thirdparty-sdnc/{thirdparty-sdnc-id}?depth=all")
120   @Consumes(MediaType.APPLICATION_JSON)
121   @Produces(MediaType.APPLICATION_JSON)
122   public String queryThirdpartySdncDetail(@HeaderParam("X-TransactionId") String transactionId,
123       @HeaderParam("X-FromAppId") String fromApp,
124       @HeaderParam("Authorization") String authorization, @PathParam("thirdparty-sdnc-id") String thirdpartySdncId)
125       throws ExtsysException;
126
127   @GET
128   @Path("/esr-thirdparty-sdnc-list")
129   @Consumes(MediaType.APPLICATION_JSON)
130   @Produces(MediaType.APPLICATION_JSON)
131   public String queryThirdpartySdncList(@HeaderParam("X-TransactionId") String transactionId,
132       @HeaderParam("X-FromAppId") String fromApp,
133       @HeaderParam("Authorization") String authorization) throws ExtsysException;
134
135   @DELETE
136   @Path("/esr-thirdparty-sdnc-list/esr-thirdparty-sdnc/{thirdparty-sdnc-id}")
137   @Consumes(MediaType.APPLICATION_JSON)
138   @Produces(MediaType.APPLICATION_JSON)
139   public void deleteThirdpartySdnc(@HeaderParam("X-TransactionId") String transactionId,
140       @HeaderParam("X-FromAppId") String fromApp,
141       @HeaderParam("Authorization") String authorization,
142       @PathParam("thirdparty-sdnc-id") String thirdpartySdncId,
143       @QueryParam("resource-version") String resourceVersion) throws ExtsysException;
144 }