public static class

Base64.OutputStream

extends FilterOutputStream
java.lang.Object
   ↳ java.io.OutputStream
     ↳ java.io.FilterOutputStream
       ↳ net.schmizz.sshj.common.Base64.OutputStream

Class Overview

A Base64.OutputStream will write data to another java.io.OutputStream, given in the constructor, and encode/decode to/from Base64 notation on the fly.

See Also

Summary

Fields
private final byte[] b4
private final boolean breakLines
private byte[] buffer
private final int bufferLength
private final byte[] decodabet
private final boolean encode
private int lineLength
private final int options
private int position
private boolean suspendEncoding
[Expand]
Inherited Fields
From class java.io.FilterOutputStream
Public Constructors
Base64.OutputStream(OutputStream out)
Constructs a Base64.OutputStream in ENCODE mode.
Base64.OutputStream(OutputStream out, int options)
Constructs a Base64.OutputStream in either ENCODE or DECODE mode.
Public Methods
void close()
Flushes and closes (I think, in the superclass) the stream.
void flush()
Flushes the stream (and the enclosing streams).
void flushBase64()
Method added by PHIL.
void resumeEncoding()
Resumes encoding of the stream.
void suspendEncoding()
Suspends encoding of the stream.
void write(byte[] theBytes, int off, int len)
Calls write(int) repeatedly until len bytes are written.
void write(int theByte)
Writes the byte to the output stream after converting to/from Base64 notation.
[Expand]
Inherited Methods
From class java.io.FilterOutputStream
From class java.io.OutputStream
From class java.lang.Object
From interface java.io.Closeable
From interface java.io.Flushable

Fields

private final byte[] b4

private final boolean breakLines

private byte[] buffer

private final int bufferLength

private final byte[] decodabet

private final boolean encode

private int lineLength

private final int options

private int position

private boolean suspendEncoding

Public Constructors

public Base64.OutputStream (OutputStream out)

Constructs a Base64.OutputStream in ENCODE mode.

Parameters
out The java.io.OutputStream to which data will be written.

public Base64.OutputStream (OutputStream out, int options)

Constructs a Base64.OutputStream in either ENCODE or DECODE mode.

Valid options:

   ENCODE or DECODE: Encode or Decode as data is read.
   DO_BREAK_LINES: don't break lines at 76 characters
     (only meaningful when encoding)</i>
 

Example: new Base64.OutputStream( out, Base64.ENCODE )

Parameters
out The java.io.OutputStream to which data will be written.
options Specified options.

Public Methods

public void close ()

Flushes and closes (I think, in the superclass) the stream.

Throws
IOException

public void flush ()

Flushes the stream (and the enclosing streams).

Throws
IOException

public void flushBase64 ()

Method added by PHIL. [Thanks, PHIL. -Rob] This pads the buffer without closing the stream.

Throws
IOException if there's an error.

public void resumeEncoding ()

Resumes encoding of the stream. May be helpful if you need to embed a piece of base64-encoded data in a stream.

public void suspendEncoding ()

Suspends encoding of the stream. May be helpful if you need to embed a piece of base64-encoded data in a stream.

Throws
IOException if there's an error flushing

public void write (byte[] theBytes, int off, int len)

Calls write(int) repeatedly until len bytes are written.

Parameters
theBytes Array from which to read bytes
off Offset for array
len Max number of bytes to read into array
Throws
IOException

public void write (int theByte)

Writes the byte to the output stream after converting to/from Base64 notation. When encoding, bytes are buffered three at a time before the output stream actually gets a write() call. When decoding, bytes are buffered four at a time.

Parameters
theByte The byte to write
Throws
IOException