Class HttpHeader


  • public class HttpHeader
    extends java.lang.Object
    Class HttpHeader represents a http header block
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  HttpHeader.HeaderEntry
      Class HeaderEntry represents a single header field
    • Constructor Summary

      Constructors 
      Constructor Description
      HttpHeader()
      Ctor.
      HttpHeader​(java.io.InputStream pReader)
      Ctor.
      HttpHeader​(java.io.InputStream pReader, long pTimeout)
      Ctor.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addField​(java.lang.String pName, java.lang.String pValue)
      Adds a header field for client output (this means duplicate header entries are replaced)
      void addParsedField​(java.lang.String pName, java.lang.String pValue)
      Adds a header field from parsed server input (this means duplicate header entries are appended in comma-separated list as defined by RFC 2616)
      void clear()
      Clears all header fields
      static java.lang.String encode​(byte[] pData)
      Encodes raw data
      static java.lang.String encode​(byte[] pData, java.lang.String pEnc)
      Encodes raw data for a given character set
      static java.lang.String encode​(java.lang.String pData, java.lang.String pSourceEnc, java.lang.String pTargetEnc)
      Encodes a given string for a given character set
      void examineTrailer()
      Throws a TrailerException if it contains recognized CIM errors in http trailer entries.
      void examineTrailer​(java.lang.String pOrigin)
      Throws a TrailerException if it contains recognized CIM errors in http trailer entries.
      java.lang.String getField​(java.lang.String pName)
      Returns a field from the header
      java.util.Iterator<java.util.Map.Entry<HttpHeader.HeaderEntry,​java.lang.String>> iterator()
      Return an iterator over the header fields
      static HttpHeader parse​(java.lang.String pLine)
      Parses a line from a header block
      void removeField​(java.lang.String pName)
      Removes a field from the header
      java.lang.String toString()  
      void write​(ASCIIPrintStream pWriter)
      Writes a header block to a stream
      • Methods inherited from class java.lang.Object

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

      • HttpHeader

        public HttpHeader()
        Ctor.
      • HttpHeader

        public HttpHeader​(java.io.InputStream pReader)
                   throws java.io.IOException
        Ctor. Parses the header from an input stream
        Parameters:
        pReader - The input stream
        Throws:
        java.io.IOException
      • HttpHeader

        public HttpHeader​(java.io.InputStream pReader,
                          long pTimeout)
                   throws java.io.IOException
        Ctor. Parses the header from an input stream
        Parameters:
        pReader - The input stream
        pTimeout - Maximum allowable time to read header
        Throws:
        java.io.IOException
    • Method Detail

      • addField

        public void addField​(java.lang.String pName,
                             java.lang.String pValue)
        Adds a header field for client output (this means duplicate header entries are replaced)
        Parameters:
        pName - The name of the header field
        pValue - The value
      • addParsedField

        public void addParsedField​(java.lang.String pName,
                                   java.lang.String pValue)
        Adds a header field from parsed server input (this means duplicate header entries are appended in comma-separated list as defined by RFC 2616)
        Parameters:
        pName - The name of the header field
        pValue - The value
      • clear

        public void clear()
        Clears all header fields
      • iterator

        public java.util.Iterator<java.util.Map.Entry<HttpHeader.HeaderEntry,​java.lang.String>> iterator()
        Return an iterator over the header fields
        Returns:
        The iterator
      • parse

        public static HttpHeader parse​(java.lang.String pLine)
        Parses a line from a header block
        Parameters:
        pLine - The line
        Returns:
        The http header
      • toString

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

        public void removeField​(java.lang.String pName)
        Removes a field from the header
        Parameters:
        pName - The name of the field
      • getField

        public java.lang.String getField​(java.lang.String pName)
        Returns a field from the header
        Parameters:
        pName - The name of the field
        Returns:
        The value
      • write

        public void write​(ASCIIPrintStream pWriter)
        Writes a header block to a stream
        Parameters:
        pWriter - The stream
      • encode

        public static java.lang.String encode​(byte[] pData)
        Encodes raw data
        Parameters:
        pData - The raw data
        Returns:
        The encoded data
      • encode

        public static java.lang.String encode​(byte[] pData,
                                              java.lang.String pEnc)
                                       throws java.io.UnsupportedEncodingException
        Encodes raw data for a given character set
        Parameters:
        pData - The raw data
        pEnc - The character set
        Returns:
        The encoded data
        Throws:
        java.io.UnsupportedEncodingException
      • encode

        public static java.lang.String encode​(java.lang.String pData,
                                              java.lang.String pSourceEnc,
                                              java.lang.String pTargetEnc)
                                       throws java.io.UnsupportedEncodingException
        Encodes a given string for a given character set
        Parameters:
        pData - The source string
        pSourceEnc - The source character set
        pTargetEnc - The target character set
        Returns:
        The encoded string
        Throws:
        java.io.UnsupportedEncodingException
      • examineTrailer

        public void examineTrailer()
                            throws TrailerException
        Throws a TrailerException if it contains recognized CIM errors in http trailer entries.
        Throws:
        TrailerException
      • examineTrailer

        public void examineTrailer​(java.lang.String pOrigin)
                            throws TrailerException
        Throws a TrailerException if it contains recognized CIM errors in http trailer entries.
        Parameters:
        pOrigin - The origin of the trailer (response, request, etc.)
        Throws:
        TrailerException