Class HttpHeader

java.lang.Object
org.sblim.cimclient.internal.http.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 
    Class HeaderEntry represents a single header field
  • Constructor Summary

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

    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
    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
    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>>
    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
     
    void
    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 Details

    • 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 Details

    • 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