b9a93d045c90de6581fe28f514f677e287f14827
[externalapi/nbi.git] / src / main / java / org / onap / nbi / apis / serviceinventory / BaseClient.java
1 package org.onap.nbi.apis.serviceinventory;
2
3 import org.slf4j.Logger;
4 import org.slf4j.LoggerFactory;
5 import org.springframework.beans.factory.annotation.Autowired;
6 import org.springframework.http.HttpEntity;
7 import org.springframework.http.HttpHeaders;
8 import org.springframework.http.HttpMethod;
9 import org.springframework.http.HttpStatus;
10 import org.springframework.http.ResponseEntity;
11 import org.springframework.web.client.RestTemplate;
12
13 public abstract class BaseClient {
14
15     private static final Logger LOGGER = LoggerFactory.getLogger(BaseClient.class);
16
17     @Autowired
18     private RestTemplate restTemplate;
19
20     protected ResponseEntity<Object> callApiGet(String callURL, HttpHeaders httpHeaders) {
21
22         ResponseEntity<Object> response = restTemplate.exchange(callURL, HttpMethod.GET,
23                 new HttpEntity<>("parameters", httpHeaders), Object.class);
24         LOGGER.debug("response body : " + response.getBody().toString());
25         LOGGER.info("response status : " + response.getStatusCodeValue());
26         if (!response.getStatusCode().equals(HttpStatus.OK)) {
27             LOGGER.warn("HTTP call on " + callURL + " returns " + response.getStatusCodeValue() + ", "
28                     + response.getBody().toString());
29         }
30         return response;
31     }
32
33 }