Quadcap Embeddable Server

com.quadcap.io.HeaderEnumeration Class Reference

Inheritance diagram for com.quadcap.io.HeaderEnumeration:

Enumeration List of all members.

Detailed Description

Return an enumeration of the headers of an RFC-822 style message.

This implementation assumes that the headers have already been separated from the body, so that the input stream passed to the HeaderEnumeration constructor returns only the header portion of the message.

XXX It would be pretty easy to have this class detect the CRLF, CRLF sequence that ends the headers, as well....

Author:
Stan Bailes

Definition at line 62 of file HeaderEnumeration.java.

Public Member Functions

 HeaderEnumeration (InputStream is)
boolean hasMoreElements ()
 Tests if this enumeration contains more elements.

Object nextElement ()
 Returns the next element of this enumeration.

void getHeaderMap (Map headerMap) throws IOException
 Helper function to build map for header (name -> value).


Package Functions

void getNext ()
 Run the state machine to produce the next header.


Package Attributes

String next
PushbackInputStream is
StringBuffer sb = new StringBuffer()

Static Package Attributes

final byte CR = 0x0d
final byte LF = 0x0a


Constructor & Destructor Documentation

com.quadcap.io.HeaderEnumeration.HeaderEnumeration InputStream  is  ) 
 

Definition at line 70 of file HeaderEnumeration.java.


Member Function Documentation

void com.quadcap.io.HeaderEnumeration.getHeaderMap Map  headerMap  )  throws IOException
 

Helper function to build map for header (name -> value).

Exceptions:
IOException may be thrown.

Definition at line 153 of file HeaderEnumeration.java.

References com.quadcap.io.HeaderEnumeration.getHeaderMap(), com.quadcap.io.HeaderEnumeration.hasMoreElements(), and com.quadcap.io.HeaderEnumeration.nextElement().

Referenced by com.quadcap.io.HeaderEnumeration.getHeaderMap().

void com.quadcap.io.HeaderEnumeration.getNext  )  [package]
 

Run the state machine to produce the next header.

Definition at line 102 of file HeaderEnumeration.java.

References com.quadcap.io.HeaderEnumeration.CR, com.quadcap.io.HeaderEnumeration.is, com.quadcap.io.HeaderEnumeration.LF, com.quadcap.io.HeaderEnumeration.next, and com.quadcap.io.HeaderEnumeration.sb.

Referenced by com.quadcap.io.HeaderEnumeration.hasMoreElements(), and com.quadcap.io.HeaderEnumeration.nextElement().

boolean com.quadcap.io.HeaderEnumeration.hasMoreElements  ) 
 

Tests if this enumeration contains more elements.

Returns:
true if this enumeration contains more elements; false otherwise.

Definition at line 80 of file HeaderEnumeration.java.

References com.quadcap.io.HeaderEnumeration.getNext(), and com.quadcap.io.HeaderEnumeration.next.

Referenced by com.quadcap.io.HeaderEnumeration.getHeaderMap().

Object com.quadcap.io.HeaderEnumeration.nextElement  ) 
 

Returns the next element of this enumeration.

Returns:
the next element of this enumeration.
Exceptions:
NoSuchElementException if no more elements exist.

Definition at line 91 of file HeaderEnumeration.java.

References com.quadcap.io.HeaderEnumeration.getNext(), and com.quadcap.io.HeaderEnumeration.next.

Referenced by com.quadcap.io.HeaderEnumeration.getHeaderMap().


Member Data Documentation

final byte com.quadcap.io.HeaderEnumeration.CR = 0x0d [static, package]
 

Definition at line 67 of file HeaderEnumeration.java.

Referenced by com.quadcap.io.HeaderEnumeration.getNext().

PushbackInputStream com.quadcap.io.HeaderEnumeration.is [package]
 

Definition at line 64 of file HeaderEnumeration.java.

Referenced by com.quadcap.io.HeaderEnumeration.getNext().

final byte com.quadcap.io.HeaderEnumeration.LF = 0x0a [static, package]
 

Definition at line 68 of file HeaderEnumeration.java.

Referenced by com.quadcap.io.HeaderEnumeration.getNext().

String com.quadcap.io.HeaderEnumeration.next [package]
 

Definition at line 63 of file HeaderEnumeration.java.

Referenced by com.quadcap.io.HeaderEnumeration.getNext(), com.quadcap.io.HeaderEnumeration.hasMoreElements(), and com.quadcap.io.HeaderEnumeration.nextElement().

StringBuffer com.quadcap.io.HeaderEnumeration.sb = new StringBuffer() [package]
 

Definition at line 65 of file HeaderEnumeration.java.

Referenced by com.quadcap.io.HeaderEnumeration.getNext().