Class EmptyContent

  • All Implemented Interfaces:
    HttpContent, StreamingContent

    public class EmptyContent
    extends java.lang.Object
    implements HttpContent
    Empty HTTP content of length zero just to force HttpRequest.execute() to add the header Content-Length: 0.

    Note that there is no Content-Length header if the HTTP request content is null . However, when making a request like PUT or POST without a Content-Length header, some servers may respond with a 411 Length Required error. Specifying the Content-Length: 0 header may work around that problem.

    Since:
    1.11
    • Constructor Summary

      Constructors 
      Constructor Description
      EmptyContent()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      long getLength()
      Returns the content length or less than zero if not known.
      java.lang.String getType()
      Returns the content type or null for none.
      boolean retrySupported()
      Returns whether or not retry is supported on this content type.
      void writeTo​(java.io.OutputStream out)
      Writes the byte content to the given output stream.
      • Methods inherited from class java.lang.Object

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

      • EmptyContent

        public EmptyContent()
    • Method Detail

      • getLength

        public long getLength()
                       throws java.io.IOException
        Description copied from interface: HttpContent
        Returns the content length or less than zero if not known.
        Specified by:
        getLength in interface HttpContent
        Throws:
        java.io.IOException
      • getType

        public java.lang.String getType()
        Description copied from interface: HttpContent
        Returns the content type or null for none.
        Specified by:
        getType in interface HttpContent
      • writeTo

        public void writeTo​(java.io.OutputStream out)
                     throws java.io.IOException
        Description copied from interface: StreamingContent
        Writes the byte content to the given output stream.

        Implementations must not close the output stream, and instead should flush the output stream. Some callers may assume that the the output stream has not been closed, and will fail to work if it has been closed.

        Specified by:
        writeTo in interface HttpContent
        Specified by:
        writeTo in interface StreamingContent
        Parameters:
        out - output stream
        Throws:
        java.io.IOException
      • retrySupported

        public boolean retrySupported()
        Description copied from interface: HttpContent
        Returns whether or not retry is supported on this content type.
        Specified by:
        retrySupported in interface HttpContent