Class ODataResponse


  • public abstract class ODataResponse
    extends Object

    An ODataResponse is usually created by an ODataProcessor during request handling.

    The handler can use a serializer to create an OData body (== response entity) and can set various response headers. A response can be created using the builder pattern:

     
     ODataResponse response = ODataResponse.entity("hello world").setStatus(HttpStatusCodes.OK).build();
      
    • Field Detail

      • CHARSET_MATCHER_PATTERN

        public static final Pattern CHARSET_MATCHER_PATTERN
    • Constructor Detail

      • ODataResponse

        protected ODataResponse()
        Do not subclass ODataResponse!
    • Method Detail

      • getStatus

        public abstract HttpStatusCodes getStatus()
        Returns:
        HTTP status code of this response
      • getEntity

        public abstract Object getEntity()
        Returns:
        a response entity which becomes the body part of a response message
      • getEntityAsStream

        public InputStream getEntityAsStream()
                                      throws ODataException
        Returns:
        a response entity as inputStream which becomes the body part of a response message
        Throws:
        ODataException - throws ODataException in case of entity is not a stream (internal ClassCastException)
      • close

        public abstract void close()
                            throws IOException
        Close the underlying entity input stream (if such a stream is available) and release all with this repsonse associated resources.
        Throws:
        IOException - if something goes wrong during close of ODataResponse
      • getHeader

        public abstract String getHeader​(String name)
        Parameters:
        name - HTTP response header name
        Returns:
        a header value or null if not set
      • getContentHeader

        public abstract String getContentHeader()
        Returns:
        Content-Type header value or null if not set
      • getIdLiteral

        public abstract String getIdLiteral()
        Returns:
        Location header value or null if not set
      • getETag

        public abstract String getETag()
        Returns:
        ETag header value or null if not available
      • getHeaderNames

        public abstract Set<String> getHeaderNames()
        Returns:
        a set of all available header names
      • containsHeader

        public abstract boolean containsHeader​(String header)
        Case insensitive check if the header is available in this ODataResponse
        Parameters:
        header - header name
        Returns:
        true/false