Replaced all tabs with spaces in java and pom.xml
[so.git] / adapters / mso-sdnc-adapter / src / main / java / org / onap / so / adapters / sdnc / impl / SDNCAdapterPortTypeImpl.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Modifications Copyright (c) 2019 Samsung
8  * ================================================================================
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  * 
13  *      http://www.apache.org/licenses/LICENSE-2.0
14  * 
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  * ============LICENSE_END=========================================================
21  */
22
23 package org.onap.so.adapters.sdnc.impl;
24
25 import javax.annotation.PostConstruct;
26 import javax.jws.WebService;
27 import javax.servlet.http.HttpServletResponse;
28 import org.onap.so.adapters.sdnc.SDNCAdapterPortType;
29 import org.onap.so.adapters.sdnc.SDNCAdapterRequest;
30 import org.onap.so.adapters.sdnc.SDNCAdapterResponse;
31 import org.onap.so.logger.ErrorCode;
32 import org.onap.so.logger.MessageEnum;
33 import org.slf4j.Logger;
34 import org.slf4j.LoggerFactory;
35 import org.springframework.beans.factory.annotation.Autowired;
36 import org.springframework.stereotype.Component;
37
38 // BPEL SDNCAdapter SOAP Web Service implementation
39 @WebService(serviceName = "SDNCAdapterService", endpointInterface = "org.onap.so.adapters.sdnc.SDNCAdapterPortType",
40         targetNamespace = "http://org.onap/workflow/sdnc/adapter/wsdl/v1")
41 @Component
42 public class SDNCAdapterPortTypeImpl implements SDNCAdapterPortType {
43
44
45
46     private static Logger logger = LoggerFactory.getLogger(SDNCAdapterPortTypeImpl.class);
47
48
49     @Autowired
50     private SDNCRestClient sdncClient;
51
52     @PostConstruct
53     public void init() {
54         logger.info("{} {} {}", MessageEnum.RA_INIT_SDNC_ADAPTER.toString(), "SDNC", "SDNCAdapterPortType");
55     }
56
57     /**
58      * Health Check web method. Does nothing but return to show the adapter is deployed.
59      */
60     @Override
61     public void healthCheck() {
62         logger.debug("Health check call in SDNC Adapter");
63     }
64
65
66     @Override
67     public SDNCAdapterResponse sdncAdapter(SDNCAdapterRequest bpelRequest) {
68         String bpelReqId = bpelRequest.getRequestHeader().getRequestId();
69         String callbackUrl = bpelRequest.getRequestHeader().getCallbackUrl();
70         try {
71             sdncClient.executeRequest(bpelRequest);
72         } catch (Exception e) {
73             String respMsg = "Error sending request to SDNC. Failed to start SDNC Client thread " + e.getMessage();
74             logger.error("{} {} {} {}", MessageEnum.RA_SEND_REQUEST_SDNC_ERR.toString(), "SDNC",
75                     ErrorCode.DataError.getValue(), respMsg, e);
76
77             SDNCResponse sdncResp = new SDNCResponse(bpelReqId);
78             sdncResp.setRespCode(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
79             sdncResp.setRespMsg(respMsg);
80             sdncClient.sendRespToBpel(callbackUrl, sdncResp);
81         }
82         return (new SDNCAdapterResponse());
83     }
84 }