Realize the VNFM register API
[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
33 @Path("/")
34 public interface IExternalSystem {
35
36   @PUT
37   @Path("/esr-vnfm-list/esr-vnfm/{vnfm_id}")
38   @Consumes(MediaType.APPLICATION_JSON)
39   @Produces(MediaType.APPLICATION_JSON)
40   public void registerVNFM(@HeaderParam("X-TransactionId") String transactionId,
41       @HeaderParam("X-FromAppId") String fromApp,
42       @HeaderParam("Authorization") String authorization, @PathParam("vnfm_id") String vnfmId,
43       EsrVnfmDetail esrVnfmDetail) throws Exception;
44
45   @GET
46   @Path("/esr-vnfm-list/esr-vnfm/{vnfm_id}?depth=all")
47   @Consumes(MediaType.APPLICATION_JSON)
48   @Produces(MediaType.APPLICATION_JSON)
49   public String queryVNFMDetail(@HeaderParam("X-TransactionId") String transactionId,
50       @HeaderParam("X-FromAppId") String fromApp,
51       @HeaderParam("Authorization") String authorization, @PathParam("vnfm_id") String vnfmId)
52       throws Exception;
53
54   @GET
55   @Path("/esr-vnfm-list")
56   @Consumes(MediaType.APPLICATION_JSON)
57   @Produces(MediaType.APPLICATION_JSON)
58   public String queryVNFMList(@HeaderParam("X-TransactionId") String transactionId,
59       @HeaderParam("X-FromAppId") String fromApp,
60       @HeaderParam("Authorization") String authorization) throws Exception;
61
62   @DELETE
63   @Path("/esr-vnfm-list/esr-vnfm/{vnfm_id}")
64   @Consumes(MediaType.APPLICATION_JSON)
65   @Produces(MediaType.APPLICATION_JSON)
66   public void deleteVNFM(@HeaderParam("X-TransactionId") String transactionId,
67       @HeaderParam("X-FromAppId") String fromApp,
68       @HeaderParam("Authorization") String authorization,
69       @PathParam("vnfm_id") String vnfmId,
70       @QueryParam("resouce-version") String resourceVersion) throws Exception;
71
72   @PUT
73   @Path("/esr-ems-list/esr-ems/{ems_id}")
74   @Consumes(MediaType.APPLICATION_JSON)
75   @Produces(MediaType.APPLICATION_JSON)
76   public void registerEMS(@HeaderParam("X-TransactionId") String transactionId,
77       @HeaderParam("X-FromAppId") String fromApp,
78       @HeaderParam("Authorization") String authorization, @PathParam("ems_id") String emsId,
79       EsrEmsDetail esrEmsDetail) throws Exception;
80
81   @GET
82   @Path("/esr-ems-list/esr-ems/{ems_id}?depth=all")
83   @Consumes(MediaType.APPLICATION_JSON)
84   @Produces(MediaType.APPLICATION_JSON)
85   public String queryEMSDetail(@HeaderParam("X-TransactionId") String transactionId,
86       @HeaderParam("X-FromAppId") String fromApp,
87       @HeaderParam("Authorization") String authorization, @PathParam("ems_id") String emsId)
88       throws Exception;
89
90   @GET
91   @Path("/esr-ems-list")
92   @Consumes(MediaType.APPLICATION_JSON)
93   @Produces(MediaType.APPLICATION_JSON)
94   public String queryEMSList(@HeaderParam("X-TransactionId") String transactionId,
95       @HeaderParam("X-FromAppId") String fromApp,
96       @HeaderParam("Authorization") String authorization) throws Exception;
97
98   @DELETE
99   @Path("/esr-ems-list/esr-ems/{ems_id}")
100   @Consumes(MediaType.APPLICATION_JSON)
101   @Produces(MediaType.APPLICATION_JSON)
102   public void deleteEMS(@HeaderParam("X-TransactionId") String transactionId,
103       @HeaderParam("X-FromAppId") String fromApp,
104       @HeaderParam("Authorization") String authorization,
105       @PathParam("ems_id") String emsId,
106       @QueryParam("resouce-version") String resourceVersion) throws Exception;
107   
108   @PUT
109   @Path("/esr-thirdparty-sdnc-list/esr-thirdparty-sdnc/{thirdparty-sdnc-id}")
110   @Consumes(MediaType.APPLICATION_JSON)
111   @Produces(MediaType.APPLICATION_JSON)
112   public void registerThirdpartySdnc(@HeaderParam("X-TransactionId") String transactionId,
113       @HeaderParam("X-FromAppId") String fromApp,
114       @HeaderParam("Authorization") String authorization, @PathParam("thirdparty-sdnc-id") String thirdpartySdncId,
115       EsrThirdpartySdncDetail esrThirdpartySdncDetail) throws Exception;
116
117   @GET
118   @Path("/esr-thirdparty-sdnc-list/esr-thirdparty-sdnc/{thirdparty-sdnc-id}?depth=all")
119   @Consumes(MediaType.APPLICATION_JSON)
120   @Produces(MediaType.APPLICATION_JSON)
121   public String queryThirdpartySdncDetail(@HeaderParam("X-TransactionId") String transactionId,
122       @HeaderParam("X-FromAppId") String fromApp,
123       @HeaderParam("Authorization") String authorization, @PathParam("thirdparty-sdnc-id") String thirdpartySdncId)
124       throws Exception;
125
126   @GET
127   @Path("/esr-thirdparty-sdnc-list")
128   @Consumes(MediaType.APPLICATION_JSON)
129   @Produces(MediaType.APPLICATION_JSON)
130   public String queryThirdpartySdncList(@HeaderParam("X-TransactionId") String transactionId,
131       @HeaderParam("X-FromAppId") String fromApp,
132       @HeaderParam("Authorization") String authorization) throws Exception;
133
134   @DELETE
135   @Path("/esr-thirdparty-sdnc-list/esr-thirdparty-sdnc/{thirdparty-sdnc-id}")
136   @Consumes(MediaType.APPLICATION_JSON)
137   @Produces(MediaType.APPLICATION_JSON)
138   public void deleteThirdpartySdnc(@HeaderParam("X-TransactionId") String transactionId,
139       @HeaderParam("X-FromAppId") String fromApp,
140       @HeaderParam("Authorization") String authorization,
141       @PathParam("thirdparty-sdnc-id") String thirdpartySdncId,
142       @QueryParam("resouce-version") String resourceVersion) throws Exception;
143 }