Class RESTEndpoint

java.lang.Object
org.codice.ddf.endpoints.rest.RESTEndpoint
All Implemented Interfaces:
RESTService

public class RESTEndpoint extends Object implements RESTService
  • Field Summary

    Fields inherited from interface org.codice.ddf.endpoints.rest.RESTService

    CONTEXT_ROOT, SOURCES_PATH
  • Constructor Summary

    Constructors
    Constructor
    Description
    RESTEndpoint(org.codice.ddf.rest.api.CatalogService catalogService)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    javax.ws.rs.core.Response
    addDocument(javax.ws.rs.core.HttpHeaders headers, javax.ws.rs.core.UriInfo requestUriInfo, javax.servlet.http.HttpServletRequest httpRequest, String transformerParam, InputStream message)
    REST Post.
    javax.ws.rs.core.Response
    addDocument(javax.ws.rs.core.HttpHeaders headers, javax.ws.rs.core.UriInfo requestUriInfo, javax.servlet.http.HttpServletRequest httpRequest, org.apache.cxf.jaxrs.ext.multipart.MultipartBody multipartBody, String transformerParam, InputStream message)
    REST Post.
    javax.ws.rs.core.Response
    createMetacard(org.apache.cxf.jaxrs.ext.multipart.MultipartBody multipartBody, javax.ws.rs.core.UriInfo requestUriInfo, String transformerParam)
     
    javax.ws.rs.core.Response
    deleteDocument(String id, javax.servlet.http.HttpServletRequest httpRequest)
    REST Delete.
    javax.ws.rs.core.Response
    doesResourceExist(String encodedId, String encodedSourceId, javax.ws.rs.core.UriInfo uriInfo, javax.servlet.http.HttpServletRequest httpRequest)
    REST Get.
    javax.ws.rs.core.Response
    getDocument(String encodedSourceId, String encodedId, String transformerParam, javax.ws.rs.core.UriInfo uriInfo, javax.servlet.http.HttpServletRequest httpRequest)
    REST Get.
    javax.ws.rs.core.Response
    getDocument(String id, String transformerParam, javax.ws.rs.core.UriInfo uriInfo, javax.servlet.http.HttpServletRequest httpRequest)
    REST Get.
    javax.ws.rs.core.Response
    getDocument(javax.ws.rs.core.UriInfo uriInfo, javax.servlet.http.HttpServletRequest httpRequest)
    REST Get.
    javax.ws.rs.core.Response
    getHeaders(String sourceid, String id, javax.ws.rs.core.UriInfo uriInfo, javax.servlet.http.HttpServletRequest httpRequest)
    REST Head.
    javax.ws.rs.core.Response
    getHeaders(String id, javax.ws.rs.core.UriInfo uriInfo, javax.servlet.http.HttpServletRequest httpRequest)
    REST Head.
    javax.ws.rs.core.Response
     
    javax.ws.rs.core.Response
    updateDocument(String id, javax.ws.rs.core.HttpHeaders headers, javax.servlet.http.HttpServletRequest httpRequest, String transformerParam, InputStream message)
    REST Put.
    javax.ws.rs.core.Response
    updateDocument(String id, javax.ws.rs.core.HttpHeaders headers, javax.servlet.http.HttpServletRequest httpRequest, org.apache.cxf.jaxrs.ext.multipart.MultipartBody multipartBody, String transformerParam, InputStream message)
    REST Put.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • RESTEndpoint

      public RESTEndpoint(org.codice.ddf.rest.api.CatalogService catalogService)
  • Method Details

    • ping

      @HEAD @Path("") public javax.ws.rs.core.Response ping()
    • getHeaders

      @HEAD @Path("/{id}") public javax.ws.rs.core.Response getHeaders(@PathParam("id") String id, @Context javax.ws.rs.core.UriInfo uriInfo, @Context javax.servlet.http.HttpServletRequest httpRequest)
      REST Head. Retrieves information regarding the entry specified by the id. This can be used to verify that the Range header is supported (the Accept-Ranges header is returned) and to get the size of the requested resource for use in Content-Range requests.
      Parameters:
      id -
      uriInfo -
      httpRequest -
      Returns:
    • getHeaders

      @HEAD @Path("/sources/{sourceid}/{id}") public javax.ws.rs.core.Response getHeaders(@PathParam("sourceid") String sourceid, @PathParam("id") String id, @Context javax.ws.rs.core.UriInfo uriInfo, @Context javax.servlet.http.HttpServletRequest httpRequest)
      REST Head. Returns headers only. Primarily used to let the client know that range requests (though limited) are accepted.
      Parameters:
      sourceid -
      id -
      uriInfo -
      httpRequest -
      Returns:
    • getDocument

      @GET @Path("/{id}") public javax.ws.rs.core.Response getDocument(@PathParam("id") String id, @QueryParam("transform") String transformerParam, @Context javax.ws.rs.core.UriInfo uriInfo, @Context javax.servlet.http.HttpServletRequest httpRequest)
      REST Get. Retrieves the metadata entry specified by the id. Transformer argument is optional, but is used to specify what format the data should be returned.
      Specified by:
      getDocument in interface RESTService
      Parameters:
      id -
      transformerParam - (OPTIONAL)
      uriInfo -
      Returns:
    • getDocument

      @GET @Path("/sources") public javax.ws.rs.core.Response getDocument(@Context javax.ws.rs.core.UriInfo uriInfo, @Context javax.servlet.http.HttpServletRequest httpRequest)
      REST Get. Retrieves information regarding sources available.
      Specified by:
      getDocument in interface RESTService
      Parameters:
      uriInfo -
      httpRequest -
      Returns:
    • getDocument

      @GET @Path("/sources/{sourceid}/{id}") public javax.ws.rs.core.Response getDocument(@Encoded @PathParam("sourceid") String encodedSourceId, @Encoded @PathParam("id") String encodedId, @QueryParam("transform") String transformerParam, @Context javax.ws.rs.core.UriInfo uriInfo, @Context javax.servlet.http.HttpServletRequest httpRequest)
      REST Get. Retrieves the metadata entry specified by the id from the federated source specified by sourceid. Transformer argument is optional, but is used to specify what format the data should be returned.
      Specified by:
      getDocument in interface RESTService
      Parameters:
      encodedSourceId -
      encodedId -
      transformerParam -
      uriInfo -
      Returns:
    • doesResourceExist

      @GET @Path("/doesExist/{id}/{sourceId}") public javax.ws.rs.core.Response doesResourceExist(@PathParam("id") String encodedId, @PathParam("sourceId") String encodedSourceId, @Context javax.ws.rs.core.UriInfo uriInfo, @Context javax.servlet.http.HttpServletRequest httpRequest)
      Description copied from interface: RESTService
      REST Get. Returns HTTP 200 with checksum if the local resource can be downloaded. Otherwise, HTTP 404. Returns HTTP 500 if unable to determine if the resource can be downloaded.
      Specified by:
      doesResourceExist in interface RESTService
      Parameters:
      encodedId -
      uriInfo -
      httpRequest -
      Returns:
    • createMetacard

      @POST @Path("/metacard") public javax.ws.rs.core.Response createMetacard(org.apache.cxf.jaxrs.ext.multipart.MultipartBody multipartBody, @Context javax.ws.rs.core.UriInfo requestUriInfo, @QueryParam("transform") String transformerParam)
    • updateDocument

      @PUT @Path("/{id}") @Consumes({"text/*","application/*"}) public javax.ws.rs.core.Response updateDocument(@PathParam("id") String id, @Context javax.ws.rs.core.HttpHeaders headers, @Context javax.servlet.http.HttpServletRequest httpRequest, @QueryParam("transform") String transformerParam, InputStream message)
      REST Put. Updates the specified entry with the provided document.
      Specified by:
      updateDocument in interface RESTService
      Parameters:
      id -
      message -
      Returns:
    • updateDocument

      @PUT @Path("/{id}") @Consumes("multipart/*") public javax.ws.rs.core.Response updateDocument(@PathParam("id") String id, @Context javax.ws.rs.core.HttpHeaders headers, @Context javax.servlet.http.HttpServletRequest httpRequest, org.apache.cxf.jaxrs.ext.multipart.MultipartBody multipartBody, @QueryParam("transform") String transformerParam, InputStream message)
      REST Put. Updates the specified entry with the provided document.
      Specified by:
      updateDocument in interface RESTService
      Parameters:
      id -
      message -
      Returns:
    • addDocument

      @POST @Consumes({"text/*","application/*"}) public javax.ws.rs.core.Response addDocument(@Context javax.ws.rs.core.HttpHeaders headers, @Context javax.ws.rs.core.UriInfo requestUriInfo, @Context javax.servlet.http.HttpServletRequest httpRequest, @QueryParam("transform") String transformerParam, InputStream message)
      Description copied from interface: RESTService
      REST Post. Creates a new metadata entry in the catalog.
      Specified by:
      addDocument in interface RESTService
      Parameters:
      message -
      Returns:
    • addDocument

      @POST @Consumes("multipart/*") public javax.ws.rs.core.Response addDocument(@Context javax.ws.rs.core.HttpHeaders headers, @Context javax.ws.rs.core.UriInfo requestUriInfo, @Context javax.servlet.http.HttpServletRequest httpRequest, org.apache.cxf.jaxrs.ext.multipart.MultipartBody multipartBody, @QueryParam("transform") String transformerParam, InputStream message)
      REST Post. Creates a new metadata entry in the catalog.
      Specified by:
      addDocument in interface RESTService
      Parameters:
      message -
      Returns:
    • deleteDocument

      @DELETE @Path("/{id}") public javax.ws.rs.core.Response deleteDocument(@PathParam("id") String id, @Context javax.servlet.http.HttpServletRequest httpRequest)
      REST Delete. Deletes a record from the catalog.
      Specified by:
      deleteDocument in interface RESTService
      Parameters:
      id -
      Returns: