gnu.mail.util
Class RFC2822OutputStream

java.lang.Object
  extended by java.io.OutputStream
      extended by java.io.FilterOutputStream
          extended by gnu.mail.util.RFC2822OutputStream
All Implemented Interfaces:
java.io.Closeable, java.io.Flushable

public class RFC2822OutputStream
extends java.io.FilterOutputStream

An output stream that ensures that lines of characters in the body are limited to 998 octets(excluding CRLF). This is required by RFC 2822, section 2.3.


Field Summary
protected  int count
          The number of bytes in the line.
static int CR
          The CR octet.
static int LF
          The LF octet.
 
Fields inherited from class java.io.FilterOutputStream
out
 
Constructor Summary
RFC2822OutputStream(java.io.OutputStream out)
          Constructs an RFC2822 output stream connected to the specified output stream.
 
Method Summary
 void write(byte[] b)
          Writes a byte array to the underlying stream.
 void write(byte[] b, int off, int len)
          Writes a portion of a byte array to the underlying stream.
 void write(int ch)
          Writes a character to the underlying stream.
 
Methods inherited from class java.io.FilterOutputStream
close, flush
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CR

public static final int CR
The CR octet.

See Also:
Constant Field Values

LF

public static final int LF
The LF octet.

See Also:
Constant Field Values

count

protected int count
The number of bytes in the line.

Constructor Detail

RFC2822OutputStream

public RFC2822OutputStream(java.io.OutputStream out)
Constructs an RFC2822 output stream connected to the specified output stream.

Parameters:
out - the underlying OutputStream
Method Detail

write

public void write(int ch)
           throws java.io.IOException
Writes a character to the underlying stream.

Overrides:
write in class java.io.FilterOutputStream
Throws:
java.io.IOException - if an I/O error occurred

write

public void write(byte[] b)
           throws java.io.IOException
Writes a byte array to the underlying stream.

Overrides:
write in class java.io.FilterOutputStream
Throws:
java.io.IOException - if an I/O error occurred

write

public void write(byte[] b,
                  int off,
                  int len)
           throws java.io.IOException
Writes a portion of a byte array to the underlying stream.

Overrides:
write in class java.io.FilterOutputStream
Throws:
java.io.IOException - if an I/O error occurred