Fix minor code smells
[aai/search-data-service.git] / src / main / java / org / onap / aai / sa / rest / DocumentApi.java
index 2d9eb1f..14d430e 100644 (file)
@@ -1,4 +1,4 @@
-/**
+/**
  * ============LICENSE_START=======================================================
  * org.onap.aai
  * ================================================================================
@@ -43,6 +43,7 @@ import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 
 public class DocumentApi {
+    private static final String MSG_REQUEST_BODY = "Request Body: ";
     private static final String REQUEST_HEADER_RESOURCE_VERSION = "If-Match";
     private static final String RESPONSE_HEADER_RESOURCE_VERSION = "ETag";
     private static final String REQUEST_HEADER_ALLOW_IMPLICIT_INDEX_CREATION = "X-CreateIndex";
@@ -88,7 +89,7 @@ public class DocumentApi {
             DocumentOperationResult result =
                     documentStore.createDocument(index, document, implicitlyCreateIndex(headers));
             String output = null;
-            if (result.getResultCode() >= 200 && result.getResultCode() <= 299) {
+            if (ApiUtils.isSuccessStatusCode(result.getResultCode())) {
                 output = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(result.getDocument());
             } else {
                 output = result.getError() != null
@@ -99,7 +100,7 @@ public class DocumentApi {
             if (httpResponse != null) {
                 httpResponse.setHeader(RESPONSE_HEADER_RESOURCE_VERSION, result.getResultVersion());
             }
-            ResponseEntity response =
+            ResponseEntity<String> response =
                     ResponseEntity.status(result.getResultCode()).contentType(MediaType.APPLICATION_JSON).body(output);
             logResult(request, HttpStatus.valueOf(response.getStatusCodeValue()));
             logResult(request, HttpStatus.valueOf(response.getStatusCodeValue()));
@@ -155,7 +156,7 @@ public class DocumentApi {
             }
 
             String output = null;
-            if (result.getResultCode() >= 200 && result.getResultCode() <= 299) {
+            if (ApiUtils.isSuccessStatusCode(result.getResultCode())) {
                 output = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(result.getDocument());
             } else {
                 output = result.getError() != null
@@ -165,7 +166,7 @@ public class DocumentApi {
             if (httpResponse != null) {
                 httpResponse.setHeader(RESPONSE_HEADER_RESOURCE_VERSION, result.getResultVersion());
             }
-            ResponseEntity response =
+            ResponseEntity<String> response =
                     ResponseEntity.status(result.getResultCode()).contentType(MediaType.APPLICATION_JSON).body(output);
             logResult(request, HttpStatus.valueOf(response.getStatusCodeValue()));
 
@@ -212,7 +213,7 @@ public class DocumentApi {
 
             DocumentOperationResult result = documentStore.deleteDocument(index, document);
             String output = null;
-            if (!(result.getResultCode() >= 200 && result.getResultCode() <= 299)) { //
+            if (ApiUtils.isSuccessStatusCode(result.getResultCode())) {
                 output = result.getError() != null
                         ? mapper.writerWithDefaultPrettyPrinter().writeValueAsString(result.getError())
                         : result.getFailureCause();
@@ -221,7 +222,7 @@ public class DocumentApi {
             if (httpResponse != null) {
                 httpResponse.setHeader(RESPONSE_HEADER_RESOURCE_VERSION, result.getResultVersion());
             }
-            ResponseEntity response;
+            ResponseEntity<String> response;
             if (output == null) {
                 response = ResponseEntity.status(result.getResultCode()).build();
             } else {
@@ -271,7 +272,7 @@ public class DocumentApi {
 
             DocumentOperationResult result = documentStore.getDocument(index, document);
             String output = null;
-            if (result.getResultCode() >= 200 && result.getResultCode() <= 299) {
+            if (ApiUtils.isSuccessStatusCode(result.getResultCode())) {
                 output = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(result.getDocument());
             } else {
                 output = result.getError() != null
@@ -281,7 +282,7 @@ public class DocumentApi {
             if (httpResponse != null) {
                 httpResponse.setHeader(RESPONSE_HEADER_RESOURCE_VERSION, result.getResultVersion());
             }
-            ResponseEntity response =
+            ResponseEntity<String> response =
                     ResponseEntity.status(result.getResultCode()).contentType(MediaType.APPLICATION_JSON).body(output);
             logResult(request, HttpStatus.valueOf(response.getStatusCodeValue()));
 
@@ -320,14 +321,14 @@ public class DocumentApi {
 
             SearchOperationResult result = documentStore.search(index, queryText);
             String output = null;
-            if (result.getResultCode() >= 200 && result.getResultCode() <= 299) {
+            if (ApiUtils.isSuccessStatusCode(result.getResultCode())) {
                 output = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(result.getSearchResult());
             } else {
                 output = result.getError() != null
                         ? mapper.writerWithDefaultPrettyPrinter().writeValueAsString(result.getError())
                         : result.getFailureCause();
             }
-            ResponseEntity response =
+            ResponseEntity<String> response =
                     ResponseEntity.status(result.getResultCode()).contentType(MediaType.APPLICATION_JSON).body(output);
 
             // Clear the MDC context so that no other transaction inadvertently
@@ -349,7 +350,7 @@ public class DocumentApi {
         logger.info(SearchDbMsgs.PROCESS_PAYLOAD_QUERY, "GET",
                 (request != null) ? request.getRequestURL().toString() : "");
         if (logger.isDebugEnabled()) {
-            logger.debug("Request Body: " + content);
+            logger.debug(MSG_REQUEST_BODY + content);
         }
         return processQuery(index, content, request, headers, documentStore);
     }
@@ -363,7 +364,7 @@ public class DocumentApi {
         logger.info(SearchDbMsgs.PROCESS_PAYLOAD_QUERY, "POST",
                 (request != null) ? request.getRequestURL().toString() : "");
         if (logger.isDebugEnabled()) {
-            logger.debug("Request Body: " + content);
+            logger.debug(MSG_REQUEST_BODY + content);
         }
 
         return processQuery(index, content, request, headers, documentStore);
@@ -379,7 +380,7 @@ public class DocumentApi {
         logger.info(SearchDbMsgs.PROCESS_PAYLOAD_QUERY, "POST",
                 (request != null) ? request.getRequestURL().toString() : "");
         if (logger.isDebugEnabled()) {
-            logger.debug("Request Body: " + content);
+            logger.debug(MSG_REQUEST_BODY + content);
         }
 
         return processSuggestQuery(index, content, request, headers, documentStore);
@@ -395,8 +396,8 @@ public class DocumentApi {
      * @param headers - The HTTP headers.
      * @return - A standard HTTP response.
      */
-    private ResponseEntity processQuery(String index, String content, HttpServletRequest request, HttpHeaders headers,
-            DocumentStoreInterface documentStore) {
+    private ResponseEntity<String> processQuery(String index, String content, HttpServletRequest request,
+            HttpHeaders headers, DocumentStoreInterface documentStore) {
 
         try {
             ObjectMapper mapper = new ObjectMapper();
@@ -437,14 +438,14 @@ public class DocumentApi {
             // ElasticSearch syntax, to the document store DAO.
             SearchOperationResult result = documentStore.searchWithPayload(index, searchStatement.toElasticSearch());
             String output = null;
-            if (result.getResultCode() >= 200 && result.getResultCode() <= 299) {
+            if (ApiUtils.isSuccessStatusCode(result.getResultCode())) {
                 output = prepareOutput(mapper, result);
             } else {
                 output = result.getError() != null
                         ? mapper.writerWithDefaultPrettyPrinter().writeValueAsString(result.getError())
                         : result.getFailureCause();
             }
-            ResponseEntity response =
+            ResponseEntity<String> response =
                     ResponseEntity.status(result.getResultCode()).contentType(MediaType.APPLICATION_JSON).body(output);
 
             // Clear the MDC context so that no other transaction inadvertently
@@ -512,7 +513,7 @@ public class DocumentApi {
             SearchOperationResult result =
                     documentStore.suggestionQueryWithPayload(index, suggestionStatement.toElasticSearch());
             String output = null;
-            if (result.getResultCode() >= 200 && result.getResultCode() <= 299) {
+            if (ApiUtils.isSuccessStatusCode(result.getResultCode())) {
                 output = prepareSuggestOutput(mapper, result);
             } else {
                 output = result.getError() != null
@@ -541,15 +542,8 @@ public class DocumentApi {
      * @return - true if the headers indicate that missing indices should be implicitly created, false otherwise.
      */
     private boolean implicitlyCreateIndex(HttpHeaders headers) {
-
-        boolean createIndexIfNotPresent = false;
         String implicitIndexCreationHeader = headers.getFirst(REQUEST_HEADER_ALLOW_IMPLICIT_INDEX_CREATION);
-
-        if ((implicitIndexCreationHeader != null) && (implicitIndexCreationHeader.equals("true"))) {
-            createIndexIfNotPresent = true;
-        }
-
-        return createIndexIfNotPresent;
+        return implicitIndexCreationHeader != null && "true".equals(implicitIndexCreationHeader);
     }
 
     private String prepareOutput(ObjectMapper mapper, SearchOperationResult result) throws JsonProcessingException {
@@ -581,26 +575,25 @@ public class DocumentApi {
         return output.toString();
     }
 
-    private ResponseEntity handleError(HttpServletRequest request, String message, HttpStatus status) {
+    private ResponseEntity<String> handleError(HttpServletRequest request, String message, HttpStatus status) {
         logResult(request, status);
         return ResponseEntity.status(status).contentType(MediaType.APPLICATION_JSON).body(message);
     }
 
     void logResult(HttpServletRequest request, HttpStatus status) {
 
-        logger.info(SearchDbMsgs.PROCESS_REST_REQUEST, (request != null) ? request.getMethod().toString() : "",
+        logger.info(SearchDbMsgs.PROCESS_REST_REQUEST, (request != null) ? request.getMethod() : "",
                 (request != null) ? request.getRequestURL().toString() : "",
                 (request != null) ? request.getRemoteHost() : "", Integer.toString(status.value()));
 
         auditLogger.info(SearchDbMsgs.PROCESS_REST_REQUEST,
                 new LogFields().setField(LogLine.DefinedFields.RESPONSE_CODE, status.value())
                         .setField(LogLine.DefinedFields.RESPONSE_DESCRIPTION, status.getReasonPhrase()),
-                (request != null) ? request.getMethod().toString() : "",
+                (request != null) ? request.getMethod() : "",
                 (request != null) ? request.getRequestURL().toString() : "",
                 (request != null) ? request.getRemoteHost() : "", Integer.toString(status.value()));
 
-        // Clear the MDC context so that no other transaction inadvertently
-        // uses our transaction id.
+        // Clear the MDC context so that no other transaction inadvertently uses our transaction id.
         ApiUtils.clearMdcContext();
     }
 }