Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.james.mime4j.message
Class Header

    java.lang.Object
      org.apache.james.mime4j.message.Header

    public class Header

extends java.lang.Object

The header of an entity (see RFC 2045).

Version:
  $Id: Header.java,v 1.3 2004/10/04 15:36:44 ntherning Exp $

Constructor Summary
`Header()` Creates a new empty `Header`.
`Header(java.io.InputStream is)` Creates a new `Header` from the specified stream.

Method Summary
`void` | `addField(Field field)` Adds a field to the end of the list of fields.
`Field` | `getField(java.lang.String name)` Gets a `Field` given a field name.
`java.util.List` | `getFields()` Gets the fields of this header.
`java.util.List` | `getFields(java.lang.String name)` Gets all `Field`s having the specified field name.
`int` | `removeFields(java.lang.String name)` Removes all `Field`s having the specified field name.
`void` | `setField(Field field)` Sets or replaces a field.
`java.lang.String` | `toString()` Return Header Object as String representation.
`void` | `writeTo(java.io.OutputStream out, int mode)` Write the Header to the given OutputStream.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### Header

    public Header()

  Creates a new empty `Header`.

### Header

    public Header(java.io.InputStream is)
           throws MimeException,
                  java.io.IOException

  Creates a new `Header` from the specified stream.

  Parameters:
    `is` - the stream to read the header from.
  Throws:
    `MimeException`
    `java.io.IOException`

Method Detail

### addField

    public void addField(Field field)

  Adds a field to the end of the list of fields.

  Parameters:
    `field` - the field to add.

### getFields

    public java.util.List getFields()

  Gets the fields of this header. The returned list will not be modifiable.

  Returns:
    the list of `Field` objects.

### getField

    public Field getField(java.lang.String name)

  Gets a `Field` given a field name. If there are multiple such fields defined in this header the first one will be returned.

  Parameters:
    `name` - the field name (e.g. From, Subject).
  Returns:
    the field or `null` if none found.

### getFields

    public java.util.List getFields(java.lang.String name)

  Gets all `Field`s having the specified field name.

  Parameters:
    `name` - the field name (e.g. From, Subject).
  Returns:
    the list of fields.

### removeFields

    public int removeFields(java.lang.String name)

  Removes all `Field`s having the specified field name.

  Parameters:
    `name` - the field name (e.g. From, Subject).
  Returns:
    number of fields removed.

### setField

    public void setField(Field field)

  Sets or replaces a field. This method is useful for header fields such as Subject or Message-ID that should not occur more than once in a message. If this `Header` does not already contain a header field of the same name as the given field then it is added to the end of the list of fields (same behavior as `addField(Field)`). Otherwise the first occurrence of a field with the same name is replaced by the given field and all further occurrences are removed.

  Parameters:
    `field` - the field to set.

### toString

    public java.lang.String toString()

  Return Header Object as String representation. Each headerline is seperated by "\r\n"

  Overrides:
    `toString` in class `java.lang.Object`
  Returns:
    headers

### writeTo

    public void writeTo(java.io.OutputStream out,
                        int mode)
                 throws java.io.IOException,
                        MimeException

  Write the Header to the given OutputStream.

  Compatibility mode:

  - `MessageUtils.LENIENT`: use charset of the Content-Type header
  - `MessageUtils.STRICT_ERROR`: use US-ASCII and throw `MimeException` if a non ASCII character is encountered
  - `MessageUtils.STRICT_ERROR`: ignore non ASCII characters if encountered

  Parameters:
    `out` - the OutputStream to write to
    `mode` - compatibility mode: `MessageUtils.LENIENT`, `MessageUtils.STRICT_ERROR`, `MessageUtils.STRICT_IGNORE`
  Throws:
    `java.io.IOException` - if case of an I/O error
    `MimeException` - if case of a MIME protocol violation

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2004-2008 The Apache Software Foundation. All Rights Reserved.