Package com.sun.mail.smtp
Class SMTPOutputStream
java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
com.sun.mail.util.CRLFOutputStream
com.sun.mail.smtp.SMTPOutputStream
- All Implemented Interfaces:
Closeable
,Flushable
,AutoCloseable
In addition to converting lines into the canonical format,
i.e., terminating lines with the CRLF sequence, escapes the "."
by adding another "." to any "." that appears in the beginning
of a line. See RFC821 section 4.5.2.
- Author:
- Max Spivak
- See Also:
-
Field Summary
Fields inherited from class com.sun.mail.util.CRLFOutputStream
atBOL, lastb
Fields inherited from class java.io.FilterOutputStream
out
-
Constructor Summary
Constructors -
Method Summary
Methods inherited from class com.sun.mail.util.CRLFOutputStream
write, writeln
Methods inherited from class java.io.FilterOutputStream
close
Methods inherited from class java.io.OutputStream
nullOutputStream
-
Constructor Details
-
SMTPOutputStream
-
-
Method Details
-
write
- Overrides:
write
in classCRLFOutputStream
- Throws:
IOException
-
write
- Overrides:
write
in classCRLFOutputStream
- Throws:
IOException
-
flush
public void flush()Override flush method in FilterOutputStream. The MimeMessage writeTo method flushes its buffer at the end, but we don't want to flush data out to the socket until we've also written the terminating "\r\n.\r\n". We buffer nothing so there's nothing to flush. We depend on the fact that CRLFOutputStream also buffers nothing. SMTPTransport will manually flush the socket before reading the response.- Specified by:
flush
in interfaceFlushable
- Overrides:
flush
in classFilterOutputStream
-
ensureAtBOL
Ensure we're at the beginning of a line. Write CRLF if not.- Throws:
IOException
- if the write fails
-