14761cad31c1cc455404b4d2fe3978b2f0ff3b7c
[vid.git] / vid-app-common / src / main / java / org / onap / vid / mso / rest / MsoRestClientNew.java
1 package org.onap.vid.mso.rest;
2
3 import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate;
4 import org.onap.vid.changeManagement.MsoRequestDetails;
5 import org.onap.vid.changeManagement.RequestDetailsWrapper;
6 import org.onap.vid.model.RequestReferencesContainer;
7 import org.onap.vid.mso.*;
8
9 import java.text.DateFormat;
10 import java.text.SimpleDateFormat;
11 import java.util.Date;
12
13
14 /**
15  * Created by pickjonathan on 21/06/2017.
16  */
17 public class MsoRestClientNew extends RestMsoImplementation implements MsoInterface {
18
19     /**
20      * The Constant dateFormat.
21      */
22     final static DateFormat dateFormat = new SimpleDateFormat("HH:mm:ss:SSSS");
23     private final String ORIGINAL_REQUEST_ID = "originalRequestId";
24     /**
25      * The logger.
26      */
27     EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(MsoRestClientNew.class);
28
29     @Override
30     public MsoResponseWrapper createSvcInstance(RequestDetails requestDetails, String endpoint) throws Exception {
31         String methodName = "createSvcInstance ";
32         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
33
34         return createInstance(requestDetails, endpoint);
35     }
36     
37     @Override
38     public MsoResponseWrapper createE2eSvcInstance(Object requestDetails, String endpoint) throws Exception {
39         String methodName = "createE2eSvcInstance ";
40         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
41
42         return createInstance(requestDetails, endpoint);
43     }
44
45     @Override
46     public MsoResponseWrapper createVnf(RequestDetails requestDetails, String endpoint) throws Exception {
47
48         String methodName = "createVnf";
49         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
50
51         return createInstance(requestDetails, endpoint);
52     }
53
54     @Override
55     public MsoResponseWrapper createNwInstance(RequestDetails requestDetails, String endpoint) throws Exception {
56
57         String methodName = "createNwInstance";
58         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
59
60         return createInstance(requestDetails, endpoint);
61     }
62
63     @Override
64     public MsoResponseWrapper createVolumeGroupInstance(RequestDetails requestDetails, String endpoint) throws Exception {
65         String methodName = "createVolumeGroupInstance";
66         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
67
68         return createInstance(requestDetails, endpoint);
69     }
70
71     @Override
72     public MsoResponseWrapper createVfModuleInstance(RequestDetails requestDetails, String endpoint) throws Exception {
73         String methodName = "createVfModuleInstance";
74         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
75
76         return createInstance(requestDetails, endpoint);
77     }
78
79     @Override
80     public MsoResponseWrapper createConfigurationInstance(RequestDetails requestDetails, String endpoint) throws Exception {
81         String methodName = "createConfigurationInstance";
82         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
83
84         return createInstance(requestDetails, endpoint);
85     }
86
87     @Override
88     public MsoResponseWrapper deleteE2eSvcInstance(Object requestDetails, String endpoint) throws Exception {
89         String methodName = "deleteE2eSvcInstance";
90         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
91
92         return deleteInstance(requestDetails, endpoint);
93     }
94     
95     @Override
96     public MsoResponseWrapper deleteSvcInstance(RequestDetails requestDetails, String endpoint) throws Exception {
97         String methodName = "deleteSvcInstance";
98         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
99
100         return deleteInstance(requestDetails, endpoint);
101     }
102
103     @Override
104     public MsoResponseWrapper deleteVnf(RequestDetails requestDetails, String endpoint) throws Exception {
105         String methodName = "deleteVnf";
106         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
107
108         return deleteInstance(requestDetails, endpoint);
109     }
110
111     @Override
112     public MsoResponseWrapper deleteVfModule(RequestDetails requestDetails, String endpoint) throws Exception {
113         String methodName = "deleteVfModule";
114         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
115
116         return deleteInstance(requestDetails, endpoint);
117     }
118
119     @Override
120     public MsoResponseWrapper deleteVolumeGroupInstance(RequestDetails requestDetails, String endpoint) throws Exception {
121         String methodName = "deleteVolumeGroupInstance";
122         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
123
124         return deleteInstance(requestDetails, endpoint);
125     }
126
127     @Override
128     public MsoResponseWrapper deleteNwInstance(RequestDetails requestDetails, String endpoint) throws Exception {
129         String methodName = "deleteNwInstance";
130         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
131
132         return deleteInstance(requestDetails, endpoint);
133     }
134
135     @Override
136     public void getOrchestrationRequest(String t, String sourceId, String endpoint, RestObject restObject) throws Exception {
137         Get(t, sourceId, endpoint, restObject);
138     }
139
140     public void getManualTasks(String t, String sourceId, String endpoint, RestObject restObject) throws Exception {
141         Get(t, sourceId, endpoint, restObject);
142     }
143
144
145     public MsoResponseWrapper createInstance(Object request, String path) throws Exception {
146         String methodName = "createInstance";
147         logger.debug(dateFormat.format(new Date()) + "<== " + methodName + " start");
148
149         try {
150             RestObject<String> restObjStr = new RestObject<String>();
151
152             String str = new String();
153
154             restObjStr.set(str);
155
156             Post(str, request, "", path, restObjStr);
157             MsoResponseWrapper w = MsoUtil.wrapResponse(restObjStr);
158
159             return w;
160         } catch (Exception e) {
161             logger.error(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
162             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
163             throw e;
164         }
165     }
166
167
168     /**
169      * Delete instance.
170      *
171      * @param request the request
172      * @param path    the path
173      * @return the mso response wrapper
174      * @throws Exception the exception
175      */
176     public MsoResponseWrapper deleteInstance(Object request, String path) throws Exception {
177         String methodName = "deleteInstance";
178         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
179
180         try {
181             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " calling Delete, path =[" + path + "]");
182
183             RestObject<String> restObjStr = new RestObject<String>();
184             String str = new String();
185             restObjStr.set(str);
186             Delete(str, request, "", path, restObjStr);
187             MsoResponseWrapper w = MsoUtil.wrapResponse(restObjStr);
188
189             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " w=" + w.getResponse());
190             return w;
191
192         } catch (Exception e) {
193             logger.error(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
194             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
195             throw e;
196         }
197
198     }
199
200     public MsoResponseWrapper getOrchestrationRequestsForDashboard(String t, String sourceId, String endpoint, RestObject restObject) throws Exception {
201         String methodName = "getOrchestrationRequestsForDashboard";
202         logger.debug(dateFormat.format(new Date()) + "<== " + methodName + " start");
203
204         try {
205             getOrchestrationRequest(t, sourceId, endpoint, restObject);
206             MsoResponseWrapper w = MsoUtil.wrapResponse(restObject);
207             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " w=" + w.getResponse());
208
209             return w;
210
211         } catch (Exception e) {
212             logger.error(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
213             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
214             throw e;
215         }
216     }
217
218     public MsoResponseWrapper getManualTasksByRequestId(String t, String sourceId, String endpoint, RestObject restObject) throws Exception {
219         String methodName = "getManualTasksByRequestId";
220         logger.debug(dateFormat.format(new Date()) + "<== " + methodName + " start");
221
222         try {
223             getManualTasks(t, sourceId, endpoint, restObject);
224             MsoResponseWrapper w = MsoUtil.wrapResponse(restObject);
225             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " w=" + w.getResponse());
226
227             return MsoUtil.wrapResponse(restObject);
228
229         } catch (Exception e) {
230             logger.error(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
231             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
232             throw e;
233         }
234     }
235
236
237     @Override
238     public MsoResponseWrapper completeManualTask(RequestDetails requestDetails, String t, String sourceId, String endpoint, RestObject restObject) throws Exception {
239         String methodName = "completeManualTask";
240         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " calling Complete ");
241         try {
242
243             Post(t, requestDetails, sourceId, endpoint, restObject);
244             MsoResponseWrapper w = MsoUtil.wrapResponse(restObject);
245
246             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " w=" + w.getResponse());
247             return w;
248
249         } catch (Exception e) {
250             logger.error(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
251             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
252             throw e;
253         }
254     }
255
256     @Override
257     public MsoResponseWrapper replaceVnf(org.onap.vid.changeManagement.RequestDetails requestDetails, String endpoint) throws Exception {
258         String methodName = "replaceVnf";
259         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
260         return replaceInstance(requestDetails, endpoint);
261     }
262
263     @Override
264     public MsoResponseWrapper deleteConfiguration(RequestDetails requestDetails, String pmc_endpoint)
265             throws Exception {
266         String methodName = "deleteConfiguration";
267         logger.debug(EELFLoggerDelegate.debugLogger,
268                 dateFormat.format(new Date()) + "<== " + methodName + " start");
269
270         return deleteInstance(requestDetails, pmc_endpoint);
271     }
272
273     @Override
274     public MsoResponseWrapper setConfigurationActiveStatus(RequestDetails request, String path) throws Exception {
275         String methodName = "setConfigurationActiveStatus";
276         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
277
278         try {
279             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " calling change configuration active status, path =[" + path + "]");
280
281             RestObject<String> restObjStr = new RestObject<String>();
282             String str = new String();
283             restObjStr.set(str);
284             Post(str, request, "", path, restObjStr);
285             MsoResponseWrapper msoResponseWrapperObject = MsoUtil.wrapResponse(restObjStr);
286
287             return msoResponseWrapperObject;
288         } catch (Exception e) {
289             logger.info(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
290             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
291             throw e;
292         }
293     }
294
295     @Override
296     public MsoResponseWrapper setPortOnConfigurationStatus(RequestDetails request, String path) throws Exception {
297         String methodName = "setPortOnConfigurationStatus";
298         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
299
300         try {
301             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " calling change port configuration status, path =[" + path + "]");
302
303             RestObject<String> restObjStr = new RestObject<String>();
304             String str = new String();
305             restObjStr.set(str);
306             Post(str, request, "", path, restObjStr);
307             MsoResponseWrapper msoResponseWrapperObject = MsoUtil.wrapResponse(restObjStr);
308
309             return msoResponseWrapperObject;
310         } catch (Exception e) {
311             logger.info(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
312             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
313             throw e;
314         }
315     }
316
317     @Override
318     public MsoResponseWrapperInterface changeManagementUpdate(RequestDetailsWrapper requestDetails, String endpoint) throws Exception {
319         RestObject<RequestReferencesContainer> msoResponse = PostForObject(requestDetails, "", endpoint, RequestReferencesContainer.class);
320         return new MsoResponseWrapper2<>(msoResponse);
321     }
322
323     public MsoResponseWrapper replaceInstance(org.onap.vid.changeManagement.RequestDetails request, String path) throws Exception {
324         String methodName = "replaceInstance";
325         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
326
327         try {
328
329
330             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " calling Replace VNF, path =[" + path + "]");
331             RestObject<String> restObjStr = new RestObject<String>();
332             String str = new String();
333             restObjStr.set(str);
334             RequestDetailsWrapper requestDetailsWrapper = new RequestDetailsWrapper();
335             requestDetailsWrapper.requestDetails = new MsoRequestDetails(request);
336
337             Post(str, requestDetailsWrapper, "", path, restObjStr);
338             MsoResponseWrapper msoResponseWrapperObject = MsoUtil.wrapResponse(restObjStr);
339             int status = msoResponseWrapperObject.getStatus();
340             if (status == 202) {
341                 logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName +
342                         ",post succeeded, msoResponseWrapperObject response:" + msoResponseWrapperObject.getResponse());
343             } else {
344                 logger.error(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName +
345                         ": post failed, msoResponseWrapperObject status" + status + ", response:" + msoResponseWrapperObject.getResponse());
346
347                 // TODO
348             }
349             return msoResponseWrapperObject;
350
351         } catch (Exception e) {
352             logger.info(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
353             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
354             throw e;
355         }
356
357     }
358
359     @Override
360     public MsoResponseWrapper updateVnf(org.onap.vid.changeManagement.RequestDetails requestDetails, String endpoint) throws Exception {
361         String methodName = "updateVnf";
362         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
363         RequestDetailsWrapper wrapper = new RequestDetailsWrapper();
364         wrapper.requestDetails = new MsoRequestDetails(requestDetails);
365         return updateInstance(requestDetails, endpoint);
366     }
367
368     public MsoResponseWrapper updateInstance(org.onap.vid.changeManagement.RequestDetails request, String path) throws Exception {
369         String methodName = "updateInstance";
370         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
371
372         try {
373             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " calling Delete, path =[" + path + "]");
374             RestObject<String> restObjStr = new RestObject<String>();
375             String str = new String();
376             restObjStr.set(str);
377             RequestDetailsWrapper requestDetailsWrapper = new RequestDetailsWrapper();
378             requestDetailsWrapper.requestDetails = new MsoRequestDetails(request);
379             Put(str, requestDetailsWrapper, "", path, restObjStr);
380             MsoResponseWrapper w = MsoUtil.wrapResponse(restObjStr);
381
382             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " w=" + w.getResponse());
383             return w;
384
385         } catch (Exception e) {
386             logger.info(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
387             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
388             throw e;
389         }
390
391     }
392
393     public void setServiceInstanceStatus(RequestDetails requestDetails, String t, String sourceId, String endpoint, RestObject<String> restObject) throws Exception {
394         String methodName = "activateServiceInstance";
395         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start ");
396         try {
397
398             Post(t, requestDetails, sourceId, endpoint, restObject);
399             MsoResponseWrapper w = MsoUtil.wrapResponse(restObject);
400
401             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " w =" + w.getResponse());
402
403         } catch (Exception e) {
404             logger.error(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
405             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
406             throw e;
407         }
408     }
409
410     @Override
411     public MsoResponseWrapper removeRelationshipFromServiceInstance(RequestDetails requestDetails, String endpoint) throws Exception {
412         String methodName = "removeRelationshipFromServiceInstance";
413         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
414
415         try {
416             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " calling Remove relationship from service instance, path =[" + endpoint + "]");
417
418             RestObject<String> restObjStr = new RestObject<String>();
419             String str = "";
420             restObjStr.set(str);
421             Post(str, requestDetails, "", endpoint, restObjStr);
422
423             return MsoUtil.wrapResponse(restObjStr);
424         } catch (Exception e) {
425             logger.info(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
426             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
427             throw e;
428         }
429     }
430
431     @Override
432     public MsoResponseWrapper addRelationshipToServiceInstance(RequestDetails requestDetails, String addRelationshipsPath) throws Exception {
433         String methodName = "addRelationshipToServiceInstance";
434         logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start");
435
436         try {
437             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " calling Add relationship to service instance, path =[" + addRelationshipsPath + "]");
438
439             RestObject<String> restObjStr = new RestObject<>();
440             restObjStr.set("");
441             Post("", requestDetails, "", addRelationshipsPath, restObjStr);
442
443             return MsoUtil.wrapResponse(restObjStr);
444         } catch (Exception e) {
445             logger.info(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
446             logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + "." + methodName + e.toString());
447             throw e;
448         }
449     }
450
451 }