Merge "Move RefreshConfigTask under tasks"
[nonrtric.git] / sdnc-a1-controller / northbound / nonrt-ric-api / provider / src / main / java / org / onap / sdnc / northbound / restadpter / RestAdapterImpl.java
index bbdcb00..c2c9522 100644 (file)
@@ -23,15 +23,15 @@ package org.onap.sdnc.northbound.restadpter;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.http.HttpEntity;
+import org.springframework.http.HttpHeaders;
 import org.springframework.http.HttpMethod;
-import org.springframework.http.HttpStatus;
+import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.client.RestTemplate;
-import com.google.common.base.Optional;
 
 /**
  * This class provides the Generic Rest Adapter interface to the RestTemplate
- * 
+ *
  * @author lathishbabu.ganesan@est.tech
  *
  */
@@ -51,24 +51,23 @@ public class RestAdapterImpl implements RestAdapter {
   }
 
   @Override
-  public <T> Optional<T> get(String uri, Class<?> clazz) {
+  public <T> ResponseEntity<T> get(String uri, Class<?> clazz) {
     HttpEntity<?> entity = getHttpEntity(null);
-    final ResponseEntity<T> response = invokeHttpRequest(uri, HttpMethod.GET, clazz, entity);
-    return buildOptional(response);
+    return invokeHttpRequest(uri, HttpMethod.GET, clazz, entity);
   }
 
   @Override
-  public <T> Optional<T> put(String uri, Object object) {
-    HttpEntity<?> entity = getHttpEntity(object);
-    final ResponseEntity<T> response = invokeHttpRequest(uri, HttpMethod.PUT, null, entity);
-    return buildOptional(response);
+  public <T> ResponseEntity<T> put(String uri, String body) {
+    HttpHeaders headers = new HttpHeaders();
+    headers.setContentType(MediaType.APPLICATION_JSON);
+    HttpEntity<String> entity = new HttpEntity<String>(body, headers);
+    return invokeHttpRequest(uri, HttpMethod.PUT, null, entity);
   }
 
   @Override
-  public <T> Optional<T> delete(String uri) {
+  public <T> ResponseEntity<T> delete(String uri) {
     HttpEntity<?> entity = getHttpEntity(null);
-    final ResponseEntity<T> response = invokeHttpRequest(uri, HttpMethod.DELETE, null, entity);
-    return buildOptional(response);
+    return invokeHttpRequest(uri, HttpMethod.DELETE, null, entity);
   }
 
   @SuppressWarnings("unchecked")
@@ -76,17 +75,4 @@ public class RestAdapterImpl implements RestAdapter {
       HttpEntity<?> entity) {
     return (ResponseEntity<T>) restTemplate.exchange(uri, httpMethod, entity, clazz);
   }
-
-  private <T> Optional<T> buildOptional(ResponseEntity<T> response) {
-    if (!response.getStatusCode().equals(HttpStatus.OK)
-        | !response.getStatusCode().equals(HttpStatus.CREATED)
-        | !response.getStatusCode().equals(HttpStatus.NO_CONTENT)) {
-      log.error("Failed to get the Response");
-      return Optional.absent();
-    }
-    if (response.hasBody()) {
-      return Optional.of(response.getBody());
-    }
-    return Optional.absent();
-  }
 }