SimpleNNTPHeader
Date: 2016-06-23

org.apache.commons.net.nntp

## Class SimpleNNTPHeader

- java.lang.Object
- - org.apache.commons.net.nntp.SimpleNNTPHeader

-     public class SimpleNNTPHeader
      extends java.lang.Object

  This class is used to construct the bare minimum acceptable header for most news readers. To construct more complicated headers you should refer to RFC 822. When the Java Mail API is finalized, you will be able to use it to compose fully compliant Internet text messages.

  The main purpose of the class is to faciliatate the article posting process, by relieving the programmer from having to explicitly format an article header. For example:

       writer = client.postArticle();
       if(writer == null) // failure
         return false;
       header = new SimpleNNTPHeader("foobar@foo.com", "Just testing");
       header.addNewsgroup("alt.test");
       header.addHeaderField("Organization", "Foobar, Inc.");
       writer.write(header.toString());
       writer.write("This is just a test");
       writer.close();
       if(!client.completePendingCommand()) // failure
         return false;

  See Also:
    `NNTPClient`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SimpleNNTPHeader(java.lang.String from, java.lang.String subject)` Creates a new SimpleNNTPHeader instance initialized with the given from and subject header field values.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addHeaderField(java.lang.String headerField, java.lang.String value)` Adds an arbitrary header field with the given value to the article header.
    `void` | `addNewsgroup(java.lang.String newsgroup)` Adds a newsgroup to the article `Newsgroups:` field.
    `java.lang.String` | `getFromAddress()` Returns the address used in the `From:` header field.
    `java.lang.String` | `getNewsgroups()` Returns the contents of the `Newsgroups:` header field.
    `java.lang.String` | `getSubject()` Returns the subject used in the `Subject:` header field.
    `java.lang.String` | `toString()` Converts the SimpleNNTPHeader to a properly formatted header in the form of a String, including the blank line used to separate the header from the article body.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### SimpleNNTPHeader

          public SimpleNNTPHeader(java.lang.String from,
                          java.lang.String subject)

      Creates a new SimpleNNTPHeader instance initialized with the given from and subject header field values.

      Parameters:
        `from` - The value of the `From:` header field. This should be the article poster's email address.
        `subject` - The value of the `Subject:` header field. This should be the subject of the article.

  - ### Method Detail

    - #### addNewsgroup

          public void addNewsgroup(java.lang.String newsgroup)

      Adds a newsgroup to the article `Newsgroups:` field.

      Parameters:
        `newsgroup` - The newsgroup to add to the article's newsgroup distribution list.

    - #### addHeaderField

          public void addHeaderField(java.lang.String headerField,
                            java.lang.String value)

      Adds an arbitrary header field with the given value to the article header. These headers will be written after the From, Newsgroups, and Subject fields when the SimpleNNTPHeader is convertered to a string. An example use would be:

           header.addHeaderField("Organization", "Foobar, Inc.");

      Parameters:
        `headerField` - The header field to add, not including the colon.
        `value` - The value of the added header field.

    - #### getFromAddress

          public java.lang.String getFromAddress()

      Returns the address used in the `From:` header field.

      Returns:
        The from address.

    - #### getSubject

          public java.lang.String getSubject()

      Returns the subject used in the `Subject:` header field.

      Returns:
        The subject.

    - #### getNewsgroups

          public java.lang.String getNewsgroups()

      Returns the contents of the `Newsgroups:` header field.

      Returns:
        The comma-separated list of newsgroups to which the article is being posted.

    - #### toString

          public java.lang.String toString()

      Converts the SimpleNNTPHeader to a properly formatted header in the form of a String, including the blank line used to separate the header from the article body.

      Overrides:
        `toString` in class `java.lang.Object`
      Returns:
        The article header in the form of a String.