-/**
+/**
* ============LICENSE_START=======================================================
* org.onap.aai
* ================================================================================
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";
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
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()));
}
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
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()));
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();
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 {
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
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()));
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
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);
}
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);
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);
* @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();
// 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
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
* @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 {
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();
}
}