Class HttpHeaders

java.lang.Object
io.netty.handler.codec.http.HttpHeaders
All Implemented Interfaces:
java.lang.Iterable<java.util.Map.Entry<java.lang.String, java.lang.String>>
Direct Known Subclasses:
DefaultHttpHeaders, EmptyHttpHeaders, ReadOnlyHttpHeaders

public abstract class HttpHeaders extends java.lang.Object implements java.lang.Iterable<java.util.Map.Entry<java.lang.String, java.lang.String>>
Provides the constants for the standard HTTP header names and values and commonly used utility methods that accesses an HttpMessage.

Concrete instances of this class are most easily obtained from its default factory: DefaultHttpHeadersFactory.headersFactory().

  • Field Details

  • Constructor Details

    • HttpHeaders

      protected HttpHeaders()
  • Method Details

    • isKeepAlive

      @Deprecated public static boolean isKeepAlive(HttpMessage message)
      Deprecated.
      Use HttpUtil.isKeepAlive(HttpMessage) instead. Returns true if and only if the connection can remain open and thus 'kept alive'. This methods respects the value of the "Connection" header first and then the return value of HttpVersion.isKeepAliveDefault().
    • setKeepAlive

      @Deprecated public static void setKeepAlive(HttpMessage message, boolean keepAlive)
      Deprecated.
      Use HttpUtil.setKeepAlive(HttpMessage, boolean) instead. Sets the value of the "Connection" header depending on the protocol version of the specified message. This getMethod sets or removes the "Connection" header depending on what the default keep alive mode of the message's protocol version is, as specified by HttpVersion.isKeepAliveDefault().
      • If the connection is kept alive by default:
        • set to "close" if keepAlive is false.
        • remove otherwise.
      • If the connection is closed by default:
        • set to "keep-alive" if keepAlive is true.
        • remove otherwise.
    • getHeader

      @Deprecated public static java.lang.String getHeader(HttpMessage message, java.lang.String name)
      Deprecated.
      Use get(CharSequence) instead.
    • getHeader

      @Deprecated public static java.lang.String getHeader(HttpMessage message, java.lang.CharSequence name)
      Deprecated.
      Use get(CharSequence) instead. Returns the header value with the specified header name. If there are more than one header value for the specified header name, the first value is returned.
      Returns:
      the header value or null if there is no such header
    • getHeader

      @Deprecated public static java.lang.String getHeader(HttpMessage message, java.lang.String name, java.lang.String defaultValue)
      Deprecated.
      See Also:
    • getHeader

      @Deprecated public static java.lang.String getHeader(HttpMessage message, java.lang.CharSequence name, java.lang.String defaultValue)
      Deprecated.
      Use get(CharSequence, String) instead. Returns the header value with the specified header name. If there are more than one header value for the specified header name, the first value is returned.
      Returns:
      the header value or the defaultValue if there is no such header
    • setHeader

      @Deprecated public static void setHeader(HttpMessage message, java.lang.String name, java.lang.Object value)
      Deprecated.
      See Also:
    • setHeader

      @Deprecated public static void setHeader(HttpMessage message, java.lang.CharSequence name, java.lang.Object value)
      Deprecated.
      Use set(CharSequence, Object) instead. Sets a new header with the specified name and value. If there is an existing header with the same name, the existing header is removed. If the specified value is not a String, it is converted into a String by Object.toString(), except for Date and Calendar which are formatted to the date format defined in RFC2616.
    • setHeader

      @Deprecated public static void setHeader(HttpMessage message, java.lang.String name, java.lang.Iterable<?> values)
      Deprecated.
      See Also:
    • setHeader

      @Deprecated public static void setHeader(HttpMessage message, java.lang.CharSequence name, java.lang.Iterable<?> values)
      Deprecated.
      Use set(CharSequence, Iterable) instead. Sets a new header with the specified name and values. If there is an existing header with the same name, the existing header is removed. This getMethod can be represented approximately as the following code:
      removeHeader(message, name);
      for (Object v: values) {
          if (v == null) {
              break;
          }
          addHeader(message, name, v);
      }
      
    • addHeader

      @Deprecated public static void addHeader(HttpMessage message, java.lang.String name, java.lang.Object value)
      Deprecated.
      See Also:
    • addHeader

      @Deprecated public static void addHeader(HttpMessage message, java.lang.CharSequence name, java.lang.Object value)
      Deprecated.
      Use add(CharSequence, Object) instead. Adds a new header with the specified name and value. If the specified value is not a String, it is converted into a String by Object.toString(), except for Date and Calendar which are formatted to the date format defined in RFC2616.
    • removeHeader

      @Deprecated public static void removeHeader(HttpMessage message, java.lang.String name)
      Deprecated.
      See Also:
    • removeHeader

      @Deprecated public static void removeHeader(HttpMessage message, java.lang.CharSequence name)
      Deprecated.
      Use remove(CharSequence) instead. Removes the header with the specified name.
    • clearHeaders

      @Deprecated public static void clearHeaders(HttpMessage message)
      Deprecated.
      Use clear() instead. Removes all headers from the specified message.
    • getIntHeader

      @Deprecated public static int getIntHeader(HttpMessage message, java.lang.String name)
      Deprecated.
      See Also:
    • getIntHeader

      @Deprecated public static int getIntHeader(HttpMessage message, java.lang.CharSequence name)
      Deprecated.
      Use getInt(CharSequence) instead. Returns the integer header value with the specified header name. If there are more than one header value for the specified header name, the first value is returned.
      Returns:
      the header value
      Throws:
      java.lang.NumberFormatException - if there is no such header or the header value is not a number
    • getIntHeader

      @Deprecated public static int getIntHeader(HttpMessage message, java.lang.String name, int defaultValue)
      Deprecated.
      See Also:
    • getIntHeader

      @Deprecated public static int getIntHeader(HttpMessage message, java.lang.CharSequence name, int defaultValue)
      Deprecated.
      Use getInt(CharSequence, int) instead. Returns the integer header value with the specified header name. If there are more than one header value for the specified header name, the first value is returned.
      Returns:
      the header value or the defaultValue if there is no such header or the header value is not a number
    • setIntHeader

      @Deprecated public static void setIntHeader(HttpMessage message, java.lang.String name, int value)
      Deprecated.
      See Also:
    • setIntHeader

      @Deprecated public static void setIntHeader(HttpMessage message, java.lang.CharSequence name, int value)
      Deprecated.
      Use setInt(CharSequence, int) instead. Sets a new integer header with the specified name and value. If there is an existing header with the same name, the existing header is removed.
    • setIntHeader

      @Deprecated public static void setIntHeader(HttpMessage message, java.lang.String name, java.lang.Iterable<java.lang.Integer> values)
      Deprecated.
      See Also:
    • setIntHeader

      @Deprecated public static void setIntHeader(HttpMessage message, java.lang.CharSequence name, java.lang.Iterable<java.lang.Integer> values)
      Deprecated.
      Use set(CharSequence, Iterable) instead. Sets a new integer header with the specified name and values. If there is an existing header with the same name, the existing header is removed.
    • addIntHeader

      @Deprecated public static void addIntHeader(HttpMessage message, java.lang.String name, int value)
      Deprecated.
      See Also:
    • addIntHeader

      @Deprecated public static void addIntHeader(HttpMessage message, java.lang.CharSequence name, int value)
      Deprecated.
      Use addInt(CharSequence, int) instead. Adds a new integer header with the specified name and value.
    • getDateHeader

      @Deprecated public static java.util.Date getDateHeader(HttpMessage message, java.lang.String name) throws java.text.ParseException
      Deprecated.
      Throws:
      java.text.ParseException
      See Also:
    • getDateHeader

      @Deprecated public static java.util.Date getDateHeader(HttpMessage message, java.lang.CharSequence name) throws java.text.ParseException
      Deprecated.
      Use getTimeMillis(CharSequence) instead. Returns the date header value with the specified header name. If there are more than one header value for the specified header name, the first value is returned.
      Returns:
      the header value
      Throws:
      java.text.ParseException - if there is no such header or the header value is not a formatted date
    • getDateHeader

      @Deprecated public static java.util.Date getDateHeader(HttpMessage message, java.lang.String name, java.util.Date defaultValue)
      Deprecated.
      See Also:
    • getDateHeader

      @Deprecated public static java.util.Date getDateHeader(HttpMessage message, java.lang.CharSequence name, java.util.Date defaultValue)
      Deprecated.
      Use getTimeMillis(CharSequence, long) instead. Returns the date header value with the specified header name. If there are more than one header value for the specified header name, the first value is returned.
      Returns:
      the header value or the defaultValue if there is no such header or the header value is not a formatted date
    • setDateHeader

      @Deprecated public static void setDateHeader(HttpMessage message, java.lang.String name, java.util.Date value)
      Deprecated.
      See Also:
    • setDateHeader

      @Deprecated public static void setDateHeader(HttpMessage message, java.lang.CharSequence name, java.util.Date value)
      Deprecated.
      Use set(CharSequence, Object) instead. Sets a new date header with the specified name and value. If there is an existing header with the same name, the existing header is removed. The specified value is formatted as defined in RFC2616
    • setDateHeader

      @Deprecated public static void setDateHeader(HttpMessage message, java.lang.String name, java.lang.Iterable<java.util.Date> values)
      Deprecated.
      See Also:
    • setDateHeader

      @Deprecated public static void setDateHeader(HttpMessage message, java.lang.CharSequence name, java.lang.Iterable<java.util.Date> values)
      Deprecated.
      Use set(CharSequence, Iterable) instead. Sets a new date header with the specified name and values. If there is an existing header with the same name, the existing header is removed. The specified values are formatted as defined in RFC2616
    • addDateHeader

      @Deprecated public static void addDateHeader(HttpMessage message, java.lang.String name, java.util.Date value)
      Deprecated.
      See Also:
    • addDateHeader

      @Deprecated public static void addDateHeader(HttpMessage message, java.lang.CharSequence name, java.util.Date value)
      Deprecated.
      Use add(CharSequence, Object) instead. Adds a new date header with the specified name and value. The specified value is formatted as defined in RFC2616
    • getContentLength

      @Deprecated public static long getContentLength(HttpMessage message)
      Deprecated.
      Use HttpUtil.getContentLength(HttpMessage) instead. Returns the length of the content. Please note that this value is not retrieved from ByteBufHolder.content() but from the "Content-Length" header, and thus they are independent from each other.
      Returns:
      the content length
      Throws:
      java.lang.NumberFormatException - if the message does not have the "Content-Length" header or its value is not a number
    • getContentLength

      @Deprecated public static long getContentLength(HttpMessage message, long defaultValue)
      Deprecated.
      Use HttpUtil.getContentLength(HttpMessage, long) instead. Returns the length of the content. Please note that this value is not retrieved from ByteBufHolder.content() but from the "Content-Length" header, and thus they are independent from each other.
      Returns:
      the content length or defaultValue if this message does not have the "Content-Length" header or its value is not a number
    • setContentLength

      @Deprecated public static void setContentLength(HttpMessage message, long length)
    • getHost

      @Deprecated public static java.lang.String getHost(HttpMessage message)
      Deprecated.
      Use get(CharSequence) instead. Returns the value of the "Host" header.
    • getHost

      @Deprecated public static java.lang.String getHost(HttpMessage message, java.lang.String defaultValue)
      Deprecated.
      Use get(CharSequence, String) instead. Returns the value of the "Host" header. If there is no such header, the defaultValue is returned.
    • setHost

      @Deprecated public static void setHost(HttpMessage message, java.lang.String value)
      Deprecated.
      See Also:
    • setHost

      @Deprecated public static void setHost(HttpMessage message, java.lang.CharSequence value)
      Deprecated.
      Use set(CharSequence, Object) instead. Sets the "Host" header.
    • getDate

      @Deprecated public static java.util.Date getDate(HttpMessage message) throws java.text.ParseException
      Deprecated.
      Use getTimeMillis(CharSequence) instead. Returns the value of the "Date" header.
      Throws:
      java.text.ParseException - if there is no such header or the header value is not a formatted date
    • getDate

      @Deprecated public static java.util.Date getDate(HttpMessage message, java.util.Date defaultValue)
      Deprecated.
      Use getTimeMillis(CharSequence, long) instead. Returns the value of the "Date" header. If there is no such header or the header is not a formatted date, the defaultValue is returned.
    • setDate

      @Deprecated public static void setDate(HttpMessage message, java.util.Date value)
      Deprecated.
      Use set(CharSequence, Object) instead. Sets the "Date" header.
    • is100ContinueExpected

      @Deprecated public static boolean is100ContinueExpected(HttpMessage message)
      Deprecated.
      Use HttpUtil.is100ContinueExpected(HttpMessage) instead. Returns true if and only if the specified message contains the "Expect: 100-continue" header.
    • set100ContinueExpected

      @Deprecated public static void set100ContinueExpected(HttpMessage message)
      Deprecated.
      Use HttpUtil.set100ContinueExpected(HttpMessage, boolean) instead. Sets the "Expect: 100-continue" header to the specified message. If there is any existing "Expect" header, they are replaced with the new one.
    • set100ContinueExpected

      @Deprecated public static void set100ContinueExpected(HttpMessage message, boolean set)
      Deprecated.
      Use HttpUtil.set100ContinueExpected(HttpMessage, boolean) instead. Sets or removes the "Expect: 100-continue" header to / from the specified message. If set is true, the "Expect: 100-continue" header is set and all other previous "Expect" headers are removed. Otherwise, all "Expect" headers are removed completely.
    • isTransferEncodingChunked

      @Deprecated public static boolean isTransferEncodingChunked(HttpMessage message)
      Deprecated.
      Use HttpUtil.isTransferEncodingChunked(HttpMessage) instead. Checks to see if the transfer encoding in a specified HttpMessage is chunked
      Parameters:
      message - The message to check
      Returns:
      True if transfer encoding is chunked, otherwise false
    • removeTransferEncodingChunked

      @Deprecated public static void removeTransferEncodingChunked(HttpMessage m)
    • setTransferEncodingChunked

      @Deprecated public static void setTransferEncodingChunked(HttpMessage m)
    • isContentLengthSet

      @Deprecated public static boolean isContentLengthSet(HttpMessage m)
    • equalsIgnoreCase

      @Deprecated public static boolean equalsIgnoreCase(java.lang.CharSequence name1, java.lang.CharSequence name2)
    • encodeAscii

      @Deprecated public static void encodeAscii(java.lang.CharSequence seq, ByteBuf buf)
      Deprecated.
    • newEntity

      @Deprecated public static java.lang.CharSequence newEntity(java.lang.String name)
      Deprecated.
      Use AsciiString instead.

      Create a new CharSequence which is optimized for reuse as HttpHeaders name or value. So if you have a Header name or value that you want to reuse you should make use of this.

    • get

      public abstract java.lang.String get(java.lang.String name)
      See Also:
    • get

      public java.lang.String get(java.lang.CharSequence name)
      Returns the value of a header with the specified name. If there are more than one values for the specified name, the first value is returned.
      Parameters:
      name - The name of the header to search
      Returns:
      The first header value or null if there is no such header
      See Also:
    • get

      public java.lang.String get(java.lang.CharSequence name, java.lang.String defaultValue)
      Returns the value of a header with the specified name. If there are more than one values for the specified name, the first value is returned.
      Parameters:
      name - The name of the header to search
      Returns:
      The first header value or defaultValue if there is no such header
    • getInt

      public abstract java.lang.Integer getInt(java.lang.CharSequence name)
      Returns the integer value of a header with the specified name. If there are more than one values for the specified name, the first value is returned.
      Parameters:
      name - the name of the header to search
      Returns:
      the first header value if the header is found and its value is an integer. null if there's no such header or its value is not an integer.
    • getInt

      public abstract int getInt(java.lang.CharSequence name, int defaultValue)
      Returns the integer value of a header with the specified name. If there are more than one values for the specified name, the first value is returned.
      Parameters:
      name - the name of the header to search
      defaultValue - the default value
      Returns:
      the first header value if the header is found and its value is an integer. defaultValue if there's no such header or its value is not an integer.
    • getShort

      public abstract java.lang.Short getShort(java.lang.CharSequence name)
      Returns the short value of a header with the specified name. If there are more than one values for the specified name, the first value is returned.
      Parameters:
      name - the name of the header to search
      Returns:
      the first header value if the header is found and its value is a short. null if there's no such header or its value is not a short.
    • getShort

      public abstract short getShort(java.lang.CharSequence name, short defaultValue)
      Returns the short value of a header with the specified name. If there are more than one values for the specified name, the first value is returned.
      Parameters:
      name - the name of the header to search
      defaultValue - the default value
      Returns:
      the first header value if the header is found and its value is a short. defaultValue if there's no such header or its value is not a short.
    • getTimeMillis

      public abstract java.lang.Long getTimeMillis(java.lang.CharSequence name)
      Returns the date value of a header with the specified name. If there are more than one values for the specified name, the first value is returned.
      Parameters:
      name - the name of the header to search
      Returns:
      the first header value if the header is found and its value is a date. null if there's no such header or its value is not a date.
    • getTimeMillis

      public abstract long getTimeMillis(java.lang.CharSequence name, long defaultValue)
      Returns the date value of a header with the specified name. If there are more than one values for the specified name, the first value is returned.
      Parameters:
      name - the name of the header to search
      defaultValue - the default value
      Returns:
      the first header value if the header is found and its value is a date. defaultValue if there's no such header or its value is not a date.
    • getAll

      public abstract java.util.List<java.lang.String> getAll(java.lang.String name)
      See Also:
    • getAll

      public java.util.List<java.lang.String> getAll(java.lang.CharSequence name)
      Returns the values of headers with the specified name
      Parameters:
      name - The name of the headers to search
      Returns:
      A List of header values which will be empty if no values are found
      See Also:
    • entries

      public abstract java.util.List<java.util.Map.Entry<java.lang.String, java.lang.String>> entries()
      Returns a new List that contains all headers in this object. Note that modifying the returned List will not affect the state of this object. If you intend to enumerate over the header entries only, use iterator() instead, which has much less overhead.
      See Also:
    • contains

      public abstract boolean contains(java.lang.String name)
      See Also:
    • iterator

      @Deprecated public abstract java.util.Iterator<java.util.Map.Entry<java.lang.String, java.lang.String>> iterator()
      Deprecated.
      It is preferred to use iteratorCharSequence() unless you need String. If String is required then use iteratorAsString().
      Specified by:
      iterator in interface java.lang.Iterable<java.util.Map.Entry<java.lang.String, java.lang.String>>
    • iteratorCharSequence

      public abstract java.util.Iterator<java.util.Map.Entry<java.lang.CharSequence, java.lang.CharSequence>> iteratorCharSequence()
      Returns:
      Iterator over the name/value header pairs.
    • valueStringIterator

      public java.util.Iterator<java.lang.String> valueStringIterator(java.lang.CharSequence name)
      Equivalent to getAll(String) but it is possible that no intermediate list is generated.
      Parameters:
      name - the name of the header to retrieve
      Returns:
      an Iterator of header values corresponding to name.
    • valueCharSequenceIterator

      public java.util.Iterator<? extends java.lang.CharSequence> valueCharSequenceIterator(java.lang.CharSequence name)
      Equivalent to getAll(String) but it is possible that no intermediate list is generated.
      Parameters:
      name - the name of the header to retrieve
      Returns:
      an Iterator of header values corresponding to name.
    • contains

      public boolean contains(java.lang.CharSequence name)
      Checks to see if there is a header with the specified name
      Parameters:
      name - The name of the header to search for
      Returns:
      True if at least one header is found
    • isEmpty

      public abstract boolean isEmpty()
      Checks if no header exists.
    • size

      public abstract int size()
      Returns the number of headers in this object.
    • names

      public abstract java.util.Set<java.lang.String> names()
      Returns a new Set that contains the names of all headers in this object. Note that modifying the returned Set will not affect the state of this object. If you intend to enumerate over the header entries only, use iterator() instead, which has much less overhead.
    • add

      public abstract HttpHeaders add(java.lang.String name, java.lang.Object value)
      See Also:
    • add

      public HttpHeaders add(java.lang.CharSequence name, java.lang.Object value)
      Adds a new header with the specified name and value. If the specified value is not a String, it is converted into a String by Object.toString(), except in the cases of Date and Calendar, which are formatted to the date format defined in RFC2616.
      Parameters:
      name - The name of the header being added
      value - The value of the header being added
      Returns:
      this
    • add

      public abstract HttpHeaders add(java.lang.String name, java.lang.Iterable<?> values)
      See Also:
    • add

      public HttpHeaders add(java.lang.CharSequence name, java.lang.Iterable<?> values)
      Adds a new header with the specified name and values. This getMethod can be represented approximately as the following code:
      for (Object v: values) {
          if (v == null) {
              break;
          }
          headers.add(name, v);
      }
      
      Parameters:
      name - The name of the headers being set
      values - The values of the headers being set
      Returns:
      this
    • add

      public HttpHeaders add(HttpHeaders headers)
      Adds all header entries of the specified headers.
      Returns:
      this
    • addInt

      public abstract HttpHeaders addInt(java.lang.CharSequence name, int value)
      Add the name to value.
      Parameters:
      name - The name to modify
      value - The value
      Returns:
      this
    • addShort

      public abstract HttpHeaders addShort(java.lang.CharSequence name, short value)
      Add the name to value.
      Parameters:
      name - The name to modify
      value - The value
      Returns:
      this
    • set

      public abstract HttpHeaders set(java.lang.String name, java.lang.Object value)
      See Also:
    • set

      public HttpHeaders set(java.lang.CharSequence name, java.lang.Object value)
      Sets a header with the specified name and value. If there is an existing header with the same name, it is removed. If the specified value is not a String, it is converted into a String by Object.toString(), except for Date and Calendar, which are formatted to the date format defined in RFC2616.
      Parameters:
      name - The name of the header being set
      value - The value of the header being set
      Returns:
      this
    • set

      public abstract HttpHeaders set(java.lang.String name, java.lang.Iterable<?> values)
      See Also:
    • set

      public HttpHeaders set(java.lang.CharSequence name, java.lang.Iterable<?> values)
      Sets a header with the specified name and values. If there is an existing header with the same name, it is removed. This getMethod can be represented approximately as the following code:
      headers.remove(name);
      for (Object v: values) {
          if (v == null) {
              break;
          }
          headers.add(name, v);
      }
      
      Parameters:
      name - The name of the headers being set
      values - The values of the headers being set
      Returns:
      this
    • set

      public HttpHeaders set(HttpHeaders headers)
      Cleans the current header entries and copies all header entries of the specified headers.
      Returns:
      this
    • setAll

      public HttpHeaders setAll(HttpHeaders headers)
      Retains all current headers but calls set(String, Object) for each entry in headers
      Parameters:
      headers - The headers used to set(String, Object) values in this instance
      Returns:
      this
    • setInt

      public abstract HttpHeaders setInt(java.lang.CharSequence name, int value)
      Set the name to value. This will remove all previous values associated with name.
      Parameters:
      name - The name to modify
      value - The value
      Returns:
      this
    • setShort

      public abstract HttpHeaders setShort(java.lang.CharSequence name, short value)
      Set the name to value. This will remove all previous values associated with name.
      Parameters:
      name - The name to modify
      value - The value
      Returns:
      this
    • remove

      public abstract HttpHeaders remove(java.lang.String name)
      See Also:
    • remove

      public HttpHeaders remove(java.lang.CharSequence name)
      Removes the header with the specified name.
      Parameters:
      name - The name of the header to remove
      Returns:
      this
    • clear

      public abstract HttpHeaders clear()
      Removes all headers from this HttpMessage.
      Returns:
      this
    • contains

      public boolean contains(java.lang.String name, java.lang.String value, boolean ignoreCase)
      See Also:
    • containsValue

      public boolean containsValue(java.lang.CharSequence name, java.lang.CharSequence value, boolean ignoreCase)
      Returns true if a header with the name and value exists, false otherwise. This also handles multiple values that are separated with a ,.

      If ignoreCase is true then a case insensitive compare is done on the value.

      Parameters:
      name - the name of the header to find
      value - the value of the header to find
      ignoreCase - true then a case insensitive compare is run to compare values. otherwise a case sensitive compare is run to compare values.
    • containsCommaSeparatedTrimmed

      static boolean containsCommaSeparatedTrimmed(java.lang.CharSequence rawNext, java.lang.CharSequence expected, boolean ignoreCase)
    • getAsString

      public final java.lang.String getAsString(java.lang.CharSequence name)
      Headers.get(Object) and convert the result to a String.
      Parameters:
      name - the name of the header to retrieve
      Returns:
      the first header value if the header is found. null if there's no such header.
    • getAllAsString

      public final java.util.List<java.lang.String> getAllAsString(java.lang.CharSequence name)
      Headers.getAll(Object) and convert each element of List to a String.
      Parameters:
      name - the name of the header to retrieve
      Returns:
      a List of header values or an empty List if no values are found.
    • iteratorAsString

      public final java.util.Iterator<java.util.Map.Entry<java.lang.String, java.lang.String>> iteratorAsString()
      Iterator that converts each Map.Entry's key and value to a String.
    • contains

      public boolean contains(java.lang.CharSequence name, java.lang.CharSequence value, boolean ignoreCase)
      Returns true if a header with the name and value exists, false otherwise.

      If ignoreCase is true then a case insensitive compare is done on the value.

      Parameters:
      name - the name of the header to find
      value - the value of the header to find
      ignoreCase - true then a case insensitive compare is run to compare values. otherwise a case sensitive compare is run to compare values.
    • toString

      public java.lang.String toString()
      Overrides:
      toString in class java.lang.Object
    • copy

      public HttpHeaders copy()
      Returns a deep copy of the passed in HttpHeaders.