Class AbstractBuiltResponse

  • All Implemented Interfaces:
    AutoCloseable
    Direct Known Subclasses:
    BuiltResponse

    public abstract class AbstractBuiltResponse
    extends javax.ws.rs.core.Response
    A response object not attached to a client or server invocation.
    Version:
    $Revision: 1 $
    Author:
    Bill Burke
    • Field Detail

      • entity

        protected Object entity
      • status

        protected int status
      • reason

        protected String reason
      • entityClass

        protected Class entityClass
      • genericType

        protected Type genericType
      • isClosed

        protected volatile boolean isClosed
      • bufferedEntity

        protected byte[] bufferedEntity
      • streamRead

        protected volatile boolean streamRead
      • streamFullyRead

        protected volatile boolean streamFullyRead
    • Constructor Detail

      • AbstractBuiltResponse

        public AbstractBuiltResponse()
    • Method Detail

      • getInputStream

        protected abstract InputStream getInputStream()
      • setInputStream

        protected abstract void setInputStream​(InputStream is)
      • getEntityStream

        protected abstract InputStream getEntityStream()
      • releaseConnection

        public abstract void releaseConnection()
                                        throws IOException
        Release underlying connection but do not close.
        Throws:
        IOException - if I/O error occurred
      • releaseConnection

        public abstract void releaseConnection​(boolean consumeInputStream)
                                        throws IOException
        Release underlying connection but do not close.
        Parameters:
        consumeInputStream - boolean to indicate either the underlying input stream must be fully read before releasing the connection or not.

        For most HTTP connection implementations, consuming the underlying input stream before releasing the connection will help to ensure connection reusability with respect of Keep-Alive policy.

        Throws:
        IOException - if I/O error occured
      • getEntityClass

        public Class getEntityClass()
      • setEntityClass

        public void setEntityClass​(Class entityClass)
      • getEntity

        public Object getEntity()
        Specified by:
        getEntity in class javax.ws.rs.core.Response
      • getStatus

        public int getStatus()
        Specified by:
        getStatus in class javax.ws.rs.core.Response
      • getReasonPhrase

        public String getReasonPhrase()
      • getStatusInfo

        public javax.ws.rs.core.Response.StatusType getStatusInfo()
        Specified by:
        getStatusInfo in class javax.ws.rs.core.Response
      • getMetadata

        public javax.ws.rs.core.MultivaluedMap<String,​Object> getMetadata()
        Specified by:
        getMetadata in class javax.ws.rs.core.Response
      • setEntity

        public void setEntity​(Object entity)
      • setStatus

        public void setStatus​(int status)
      • setReasonPhrase

        public void setReasonPhrase​(String reason)
      • setMetadata

        public void setMetadata​(javax.ws.rs.core.MultivaluedMap<String,​Object> metadata)
      • getAnnotations

        public Annotation[] getAnnotations()
      • addMethodAnnotations

        public void addMethodAnnotations​(Annotation[] methodAnnotations)
      • setAnnotations

        public void setAnnotations​(Annotation[] annotations)
      • getGenericType

        public Type getGenericType()
      • setGenericType

        public void setGenericType​(Type genericType)
      • readEntity

        public <T> T readEntity​(Class<T> type,
                                Annotation[] annotations)
        Specified by:
        readEntity in class javax.ws.rs.core.Response
      • readEntity

        public <T> T readEntity​(javax.ws.rs.core.GenericType<T> entityType,
                                Annotation[] annotations)
        Specified by:
        readEntity in class javax.ws.rs.core.Response
      • readEntity

        public <T> T readEntity​(Class<T> type)
        Specified by:
        readEntity in class javax.ws.rs.core.Response
      • readEntity

        public <T> T readEntity​(javax.ws.rs.core.GenericType<T> entityType)
        Specified by:
        readEntity in class javax.ws.rs.core.Response
      • readEntity

        public abstract <T> T readEntity​(Class<T> type,
                                         Type genericType,
                                         Annotation[] anns)
      • resetEntity

        protected void resetEntity()
      • setStreamRead

        public void setStreamRead​(Boolean b)
      • setStreamFullyRead

        public void setStreamFullyRead​(Boolean b)
      • hasEntity

        public boolean hasEntity()
        Specified by:
        hasEntity in class javax.ws.rs.core.Response
      • isClosed

        public boolean isClosed()
      • abortIfClosed

        public void abortIfClosed()
      • close

        public void close()
        Specified by:
        close in interface AutoCloseable
        Specified by:
        close in class javax.ws.rs.core.Response
      • getLanguage

        public Locale getLanguage()
        Specified by:
        getLanguage in class javax.ws.rs.core.Response
      • getLength

        public int getLength()
        Specified by:
        getLength in class javax.ws.rs.core.Response
      • getMediaType

        public javax.ws.rs.core.MediaType getMediaType()
        Specified by:
        getMediaType in class javax.ws.rs.core.Response
      • getCookies

        public Map<String,​javax.ws.rs.core.NewCookie> getCookies()
        Specified by:
        getCookies in class javax.ws.rs.core.Response
      • getEntityTag

        public javax.ws.rs.core.EntityTag getEntityTag()
        Specified by:
        getEntityTag in class javax.ws.rs.core.Response
      • getDate

        public Date getDate()
        Specified by:
        getDate in class javax.ws.rs.core.Response
      • getLastModified

        public Date getLastModified()
        Specified by:
        getLastModified in class javax.ws.rs.core.Response
      • getAllowedMethods

        public Set<String> getAllowedMethods()
        Specified by:
        getAllowedMethods in class javax.ws.rs.core.Response
      • toHeaderString

        protected String toHeaderString​(Object header)
      • getStringHeaders

        public javax.ws.rs.core.MultivaluedMap<String,​String> getStringHeaders()
        Specified by:
        getStringHeaders in class javax.ws.rs.core.Response
      • getHeaderString

        public String getHeaderString​(String name)
        Specified by:
        getHeaderString in class javax.ws.rs.core.Response
      • getLocation

        public URI getLocation()
        Specified by:
        getLocation in class javax.ws.rs.core.Response
      • getLinks

        public Set<javax.ws.rs.core.Link> getLinks()
        Specified by:
        getLinks in class javax.ws.rs.core.Response
      • hasLink

        public boolean hasLink​(String relation)
        Specified by:
        hasLink in class javax.ws.rs.core.Response
      • getLink

        public javax.ws.rs.core.Link getLink​(String relation)
        Specified by:
        getLink in class javax.ws.rs.core.Response
      • getLinkBuilder

        public javax.ws.rs.core.Link.Builder getLinkBuilder​(String relation)
        Specified by:
        getLinkBuilder in class javax.ws.rs.core.Response