org.apache.commons.net.nntp
Class SimpleNNTPHeader

java.lang.Object
  extended by org.apache.commons.net.nntp.SimpleNNTPHeader

public class SimpleNNTPHeader
extends 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;
 

Author:
Daniel F. Savarese
See Also:
NNTPClient

Constructor Summary
SimpleNNTPHeader(String from, String subject)
          Creates a new SimpleNNTPHeader instance initialized with the given from and subject header field values.
 
Method Summary
 void addHeaderField(String headerField, String value)
          Adds an arbitrary header field with the given value to the article header.
 void addNewsgroup(String newsgroup)
          Adds a newsgroup to the article Newsgroups: field.
 String getFromAddress()
          Returns the address used in the From: header field.
 String getNewsgroups()
          Returns the contents of the Newsgroups: header field.
 String getSubject()
          Returns the subject used in the Subject: header field.
 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(String from,
                        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(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(String headerField,
                           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 String getFromAddress()
Returns the address used in the From: header field.

Returns:
The from address.

getSubject

public String getSubject()
Returns the subject used in the Subject: header field.

Returns:
The subject.

getNewsgroups

public 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 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 Object
Returns:
The article header in the form of a String.


Copyright © 1997-2010 The Apache Software Foundation. All Rights Reserved.