Class EntityEnclosingMethod

  • All Implemented Interfaces:
    HttpMethod
    Direct Known Subclasses:
    PostMethod, PutMethod

    public abstract class EntityEnclosingMethod
    extends ExpectContinueMethod
    This abstract class serves as a foundation for all HTTP methods that can enclose an entity within requests
    Since:
    2.0beta1
    • Constructor Detail

      • EntityEnclosingMethod

        public EntityEnclosingMethod()
        No-arg constructor.
        Since:
        2.0
      • EntityEnclosingMethod

        public EntityEnclosingMethod​(java.lang.String uri)
        Constructor specifying a URI.
        Parameters:
        uri - either an absolute or relative URI
        Since:
        2.0
    • Method Detail

      • setFollowRedirects

        public void setFollowRedirects​(boolean followRedirects)
        Entity enclosing requests cannot be redirected without user intervention according to RFC 2616.
        Specified by:
        setFollowRedirects in interface HttpMethod
        Overrides:
        setFollowRedirects in class HttpMethodBase
        Parameters:
        followRedirects - must always be false
      • setRequestContentLength

        public void setRequestContentLength​(int length)
        Sets length information about the request body.

        Note: If you specify a content length the request is unbuffered. This prevents redirection and automatic retry if a request fails the first time. This means that the HttpClient can not perform authorization automatically but will throw an Exception. You will have to set the necessary 'Authorization' or 'Proxy-Authorization' headers manually.

        Parameters:
        length - size in bytes or any of CONTENT_LENGTH_AUTO, CONTENT_LENGTH_CHUNKED. If number of bytes or CONTENT_LENGTH_CHUNKED is specified the content will not be buffered internally and the Content-Length header of the request will be used. In this case the user is responsible to supply the correct content length. If CONTENT_LENGTH_AUTO is specified the request will be buffered before it is sent over the network.
      • getRequestCharSet

        public java.lang.String getRequestCharSet()
        Returns the request's charset. The charset is parsed from the request entity's content type, unless the content type header has been set manually.
        Overrides:
        getRequestCharSet in class HttpMethodBase
        Returns:
        String The character set.
        Since:
        3.0
        See Also:
        RequestEntity.getContentType()
      • setRequestContentLength

        public void setRequestContentLength​(long length)
        Sets length information about the request body.

        Note: If you specify a content length the request is unbuffered. This prevents redirection and automatic retry if a request fails the first time. This means that the HttpClient can not perform authorization automatically but will throw an Exception. You will have to set the necessary 'Authorization' or 'Proxy-Authorization' headers manually.

        Parameters:
        length - size in bytes or any of CONTENT_LENGTH_AUTO, CONTENT_LENGTH_CHUNKED. If number of bytes or CONTENT_LENGTH_CHUNKED is specified the content will not be buffered internally and the Content-Length header of the request will be used. In this case the user is responsible to supply the correct content length. If CONTENT_LENGTH_AUTO is specified the request will be buffered before it is sent over the network.
      • setContentChunked

        public void setContentChunked​(boolean chunked)
        Sets whether or not the content should be chunked.
        Parameters:
        chunked - true if the content should be chunked
        Since:
        3.0
      • setRequestBody

        public void setRequestBody​(java.io.InputStream body)
        Sets the request body to be the specified inputstream.
        Parameters:
        body - Request body content as InputStream
      • setRequestBody

        public void setRequestBody​(java.lang.String body)
        Sets the request body to be the specified string. The string will be submitted, using the encoding specified in the Content-Type request header.
        Example: setRequestHeader("Content-type", "text/xml; charset=UTF-8");
        Would use the UTF-8 encoding. If no charset is specified, the default content encoding is used (ISO-8859-1).
        Parameters:
        body - Request body content as a string
      • recycle

        public void recycle()
        Deprecated.
        no longer supported and will be removed in the future version of HttpClient
        Recycles the HTTP method so that it can be used again. Note that all of the instance variables will be reset once this method has been called. This method will also release the connection being used by this HTTP method.
        Specified by:
        recycle in interface HttpMethod
        Overrides:
        recycle in class HttpMethodBase
        See Also:
        HttpMethodBase.releaseConnection()
      • getRequestEntity

        public RequestEntity getRequestEntity()
        Returns:
        Returns the requestEntity.
        Since:
        3.0
      • setRequestEntity

        public void setRequestEntity​(RequestEntity requestEntity)
        Parameters:
        requestEntity - The requestEntity to set.
        Since:
        3.0