Package com.sun.mail.util
Class BASE64EncoderStream
- java.lang.Object
 - 
- java.io.OutputStream
 - 
- java.io.FilterOutputStream
 - 
- com.sun.mail.util.BASE64EncoderStream
 
 
 
 
- 
- All Implemented Interfaces:
 java.io.Closeable,java.io.Flushable,java.lang.AutoCloseable
- Direct Known Subclasses:
 BEncoderStream
public class BASE64EncoderStream extends java.io.FilterOutputStreamThis class implements a BASE64 encoder. It is implemented as a FilterOutputStream, so one can just wrap this class around any output stream and write bytes into this filter. The encoding is done as the bytes are written out. 
- 
- 
Constructor Summary
Constructors Constructor Description BASE64EncoderStream(java.io.OutputStream out)Create a BASE64 encoder that encodes the specified input stream.BASE64EncoderStream(java.io.OutputStream out, int bytesPerLine)Create a BASE64 encoder that encodes the specified output stream. 
- 
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Forces any buffered output bytes to be encoded out to the stream and closes this output streamstatic byte[]encode(byte[] inbuf)Base64 encode a byte array.voidflush()Flushes this output stream and forces any buffered output bytes to be encoded out to the stream.voidwrite(byte[] b)Encodesb.lengthbytes to this output stream.voidwrite(byte[] b, int off, int len)Encodeslenbytes from the specifiedbytearray starting at offsetoffto this output stream.voidwrite(int c)Encodes the specifiedbyteto this output stream. 
 - 
 
- 
- 
Constructor Detail
- 
BASE64EncoderStream
public BASE64EncoderStream(java.io.OutputStream out, int bytesPerLine)Create a BASE64 encoder that encodes the specified output stream.- Parameters:
 out- the output streambytesPerLine- number of bytes per line. The encoder inserts a CRLF sequence after the specified number of bytes, unless bytesPerLine is Integer.MAX_VALUE, in which case no CRLF is inserted. bytesPerLine is rounded down to a multiple of 4.
 
- 
BASE64EncoderStream
public BASE64EncoderStream(java.io.OutputStream out)
Create a BASE64 encoder that encodes the specified input stream. Inserts the CRLF sequence after outputting 76 bytes.- Parameters:
 out- the output stream
 
 - 
 
- 
Method Detail
- 
write
public void write(byte[] b, int off, int len) throws java.io.IOExceptionEncodeslenbytes from the specifiedbytearray starting at offsetoffto this output stream.- Overrides:
 writein classjava.io.FilterOutputStream- Parameters:
 b- the data.off- the start offset in the data.len- the number of bytes to write.- Throws:
 java.io.IOException- if an I/O error occurs.
 
- 
write
public void write(byte[] b) throws java.io.IOExceptionEncodesb.lengthbytes to this output stream.- Overrides:
 writein classjava.io.FilterOutputStream- Parameters:
 b- the data to be written.- Throws:
 java.io.IOException- if an I/O error occurs.
 
- 
write
public void write(int c) throws java.io.IOExceptionEncodes the specifiedbyteto this output stream.- Overrides:
 writein classjava.io.FilterOutputStream- Parameters:
 c- thebyte.- Throws:
 java.io.IOException- if an I/O error occurs.
 
- 
flush
public void flush() throws java.io.IOExceptionFlushes this output stream and forces any buffered output bytes to be encoded out to the stream.- Specified by:
 flushin interfacejava.io.Flushable- Overrides:
 flushin classjava.io.FilterOutputStream- Throws:
 java.io.IOException- if an I/O error occurs.
 
- 
close
public void close() throws java.io.IOExceptionForces any buffered output bytes to be encoded out to the stream and closes this output stream- Specified by:
 closein interfacejava.lang.AutoCloseable- Specified by:
 closein interfacejava.io.Closeable- Overrides:
 closein classjava.io.FilterOutputStream- Throws:
 java.io.IOException
 
- 
encode
public static byte[] encode(byte[] inbuf)
Base64 encode a byte array. No line breaks are inserted. This method is suitable for short strings, such as those in the IMAP AUTHENTICATE protocol, but not to encode the entire content of a MIME part.- Parameters:
 inbuf- the byte array- Returns:
 - the encoded byte array
 
 
 - 
 
 -