Rename Path search-db to search-data-service.
[aai/search-data-service.git] / src / test / java / org / onap / aai / sa / rest / SearchServiceApiHarness.java
index f6a9693..f7a281a 100644 (file)
@@ -2,8 +2,8 @@
  * ============LICENSE_START=======================================================
  * org.onap.aai
  * ================================================================================
- * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017 Amdocs
+ * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
+ * Copyright © 2017-2018 Amdocs
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  * ============LICENSE_END=========================================================
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
  */
 package org.onap.aai.sa.rest;
 
+ import org.springframework.http.HttpHeaders;
+import org.springframework.http.ResponseEntity;
+import org.springframework.stereotype.Component;
+import org.springframework.web.bind.annotation.*;
+
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import javax.ws.rs.*;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.HttpHeaders;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
 
-import org.onap.aai.sa.rest.ApiUtils;
-import org.onap.aai.sa.rest.SearchServiceApi;
-
-@Path("test/")
+@Component
+@RestController
+@RequestMapping("/test")
 public class SearchServiceApiHarness extends SearchServiceApi {
 
 
@@ -52,131 +49,140 @@ public class SearchServiceApiHarness extends SearchServiceApi {
     documentStore = new StubEsController();
   }
 
+  @Override
+  @RequestMapping (value="/indexes/dynamic/{index}",
+          method = RequestMethod.PUT,
+          consumes = { "application/json"})
+  public ResponseEntity<String> processCreateDynamicIndex(@RequestBody String requestBody,
+                                            HttpServletRequest request,
+                                            @RequestHeader HttpHeaders headers,
+                                            @PathVariable("index") String index) {
+
+    return super.processCreateDynamicIndex(requestBody, request, headers, index);
+  }
+
 
-  @PUT
-  @Path("/indexes/{index}")
-  @Consumes({MediaType.APPLICATION_JSON})
   @Override
-  public Response processCreateIndex(String requestBody,
-                                     @Context HttpServletRequest request,
-                                     @Context HttpHeaders headers,
-                                     @PathParam("index") String index) {
+  @RequestMapping (value="/indexes/{index}",
+          method = RequestMethod.PUT,
+          consumes = { "application/json"})
+  public ResponseEntity<String> processCreateIndex(@RequestBody  String requestBody,
+                                     HttpServletRequest request,
+                                     @RequestHeader HttpHeaders headers,
+                                     @PathVariable("index") String index) {
 
     return super.processCreateIndex(requestBody, request, headers, index);
   }
 
-  @DELETE
-  @Path("/indexes/{index}")
-  @Consumes({MediaType.APPLICATION_JSON})
   @Override
-  public Response processDeleteIndex(String requestBody,
-                                     @Context HttpServletRequest request,
-                                     @Context HttpHeaders headers,
-                                     @PathParam("index") String index) {
-
-    return super.processDeleteIndex(requestBody, request, headers, index);
+  @RequestMapping (value="/indexes/{index}",
+          method = RequestMethod.DELETE,
+          consumes = { "application/json"})
+  public ResponseEntity<String> processDeleteIndex(HttpServletRequest request,
+                                     @RequestHeader HttpHeaders headers,
+                                     @PathVariable("index") String index) {
+
+    return super.processDeleteIndex(request, headers, index);
   }
 
-  @GET
-  @Path("/indexes/{index}/documents/{id}")
-  @Consumes({MediaType.APPLICATION_JSON})
   @Override
-  public Response processGetDocument(String requestBody,
-                                     @Context HttpServletRequest request,
-                                     @Context HttpServletResponse httpResponse,
-                                     @Context HttpHeaders headers,
-                                     @PathParam("index") String index,
-                                     @PathParam("id") String id) {
-
-    return super.processGetDocument(requestBody, request, httpResponse, headers, index, id);
+  @RequestMapping (value="/indexes/{index}/documents/{id}",
+          method = RequestMethod.GET,
+          produces = { "application/json"},
+          consumes = { "application/json", "application/xml" })
+  public ResponseEntity<String> processGetDocument(
+          HttpServletRequest request,
+          HttpServletResponse httpResponse,
+          @RequestHeader HttpHeaders headers,
+          @PathVariable("index") String index,
+          @PathVariable("id") String id) {
+
+    return super.processGetDocument(request, httpResponse, headers, index, id);
   }
 
-  @POST
-  @Path("/indexes/{index}/documents")
-  @Consumes({MediaType.APPLICATION_JSON})
   @Override
-  public Response processCreateDocWithoutId(String requestBody,
-                                            @Context HttpServletRequest request,
-                                            @Context HttpServletResponse httpResponse,
-                                            @Context HttpHeaders headers,
-                                            @PathParam("index") String index) {
+  @RequestMapping (value="/indexes/{index}/documents",
+                   method = RequestMethod.POST,
+                   consumes = { "application/json", "application/xml" })
+  public ResponseEntity<String> processCreateDocWithoutId(@RequestBody String requestBody,
+                                                          HttpServletRequest request,
+                                                          HttpServletResponse httpResponse,
+                                                          @RequestHeader HttpHeaders headers,
+                                                          @PathVariable("index") String index) {
 
     return super.processCreateDocWithoutId(requestBody, request, httpResponse, headers, index);
   }
 
-  @PUT
-  @Path("/indexes/{index}/documents/{id}")
-  @Consumes({MediaType.APPLICATION_JSON})
   @Override
-  public Response processUpsertDoc(String requestBody,
-                                   @Context HttpServletRequest request,
-                                   @Context HttpServletResponse httpResponse,
-                                   @Context HttpHeaders headers,
-                                   @PathParam("index") String index,
-                                   @PathParam("id") String id) {
+  @RequestMapping (value="/indexes/{index}/documents/{id}",
+          method = RequestMethod.PUT,
+          consumes = { "application/json", "application/xml" })
+  public ResponseEntity<String> processUpsertDoc(@RequestBody  String requestBody,
+                                    HttpServletRequest request,
+                                   HttpServletResponse httpResponse,
+                                   @RequestHeader  HttpHeaders headers,
+                                   @PathVariable("index") String index,
+                                   @PathVariable("id") String id) {
 
     return super.processUpsertDoc(requestBody, request, httpResponse, headers, index, id);
   }
 
-  @DELETE
-  @Path("/indexes/{index}/documents/{id}")
-  @Consumes({MediaType.APPLICATION_JSON})
   @Override
-  public Response processDeleteDoc(String requestBody,
-                                   @Context HttpServletRequest request,
-                                   @Context HttpServletResponse httpResponse,
-                                   @Context HttpHeaders headers,
-                                   @PathParam("index") String index,
-                                   @PathParam("id") String id) {
-
-    return super.processDeleteDoc(requestBody, request, httpResponse, headers, index, id);
+  @RequestMapping(value = "/indexes/{index}/documents/{id}",
+          method = RequestMethod.DELETE,
+          consumes = { "application/json"})
+  public ResponseEntity<String> processDeleteDoc(HttpServletRequest request,
+                                   HttpServletResponse httpResponse,
+                                   @RequestHeader HttpHeaders headers,
+                                   @PathVariable("index") String index,
+                                   @PathVariable("id") String id) {
+
+    return super.processDeleteDoc(request, httpResponse, headers, index, id);
   }
 
-  @GET
-  @Path("/indexes/{index}/query/{queryText}")
-  @Consumes({MediaType.APPLICATION_JSON})
   @Override
-  public Response processInlineQuery(String requestBody,
-                                     @Context HttpServletRequest request,
-                                     @Context HttpHeaders headers,
-                                     @PathParam("index") String index,
-                                     @PathParam("queryText") String queryText) {
-
-    return super.processInlineQuery(requestBody, request, headers, index, queryText);
+  @RequestMapping(value = "/indexes/{index}/query/{queryText}",
+          method = RequestMethod.GET,
+          consumes = { "application/json"})
+  public ResponseEntity<String> processInlineQuery(HttpServletRequest request,
+                                     @RequestHeader HttpHeaders headers,
+                                     @PathVariable("index") String index,
+                                     @PathVariable("queryText") String queryText) {
+
+    return super.processInlineQuery(request, headers, index, queryText);
   }
 
-  @GET
-  @Path("/indexes/{index}/query")
-  @Consumes({MediaType.APPLICATION_JSON})
   @Override
-  public Response processQueryWithGet(String requestBody,
-                                      @Context HttpServletRequest request,
-                                      @Context HttpHeaders headers,
-                                      @PathParam("index") String index) {
+  @RequestMapping(value = "/indexes/{index}/query",
+          method = RequestMethod.GET,
+          consumes = { "application/json"})
+  public ResponseEntity<String> processQueryWithGet(@RequestBody String requestBody,
+                                                    HttpServletRequest request,
+                                      @RequestHeader HttpHeaders headers,
+                                      @PathVariable("index") String index) {
 
     return super.processQueryWithGet(requestBody, request, headers, index);
   }
 
-  @POST
-  @Path("/indexes/{index}/query")
-  @Consumes({MediaType.APPLICATION_JSON})
   @Override
-  public Response processQuery(String requestBody,
-                               @Context HttpServletRequest request,
-                               @Context HttpHeaders headers,
-                               @PathParam("index") String index) {
+  @RequestMapping(value = "/indexes/{index}/query",
+          method = RequestMethod.POST,
+          consumes = { "application/json"})
+  public ResponseEntity<String> processQuery(@RequestBody String requestBody,
+                                             HttpServletRequest request,
+                                             @RequestHeader HttpHeaders headers,
+                                             @PathVariable("index") String index) {
 
     return super.processQuery(requestBody, request, headers, index);
   }
 
-  @POST
-  @Path("/bulk")
-  @Consumes({MediaType.APPLICATION_JSON})
   @Override
-  public Response processBulkRequest(String requestBody,
-                                     @Context HttpServletRequest request,
-                                     @Context HttpHeaders headers,
-                                     @PathParam("index") String index) {
+  @RequestMapping(value = "/bulk",
+                  method = RequestMethod.POST,
+                  consumes = { "application/json", "application/xml" })
+  public ResponseEntity<String> processBulkRequest(@RequestBody String requestBody,
+                                                   HttpServletRequest request,
+                                                   @RequestHeader HttpHeaders headers) {
 
     // If the operations string contains a special keyword, set the
     // harness to fail the authentication validation.
@@ -187,7 +193,7 @@ public class SearchServiceApiHarness extends SearchServiceApi {
     // Just pass the request up to the parent, since that is the code
     // that we really want to test.
     //return super.processPost(operations, request, headers, index);
-    return super.processBulkRequest(requestBody, request, headers, index);
+    return super.processBulkRequest(requestBody, request, headers);
   }
 
   @Override