grendel.util
Class MessageIDGenerator

java.lang.Object
  |
  +--grendel.util.MessageIDGenerator

public class MessageIDGenerator
extends java.lang.Object

This class generates globally-unique message IDs. These IDs conform to RFC 822, RFC 1036, and the so-called son-of-1036 draft.


Method Summary
static java.lang.String generate(java.lang.String host_name)
          Generates a new Message-ID string.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

generate

public static java.lang.String generate(java.lang.String host_name)
Generates a new Message-ID string.
Parameters:
hostname - The `domain' part of the ID to generate.

Generally, this should be the fully-qualified name of the local host. In situations where that is impossible to determine, or where the local host name might be considered confidential information, the host part of the return address of the authoring user will do.

If the provided host name is not syntactically valid, an error is signalled.

The host name may be null; in that case, a random sequence of characters will be used for the host name, resulting in a syntactically valid Message-ID. Note, however, that this is strongly discouraged by the relevant RFCs: Message-IDs should have valid host names in them if at all possible.

Returns:
The new ID, a String.