|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.ibm.misc.CharacterEncoder
This class defines the encoding half of character encoders. A character encoder is an algorithim for transforming 8 bit binary data into text (generally 7 bit ASCII or 8 bit ISO-Latin-1 text) for transmition over text channels such as e-mail and network news. The character encoders have been structured around a central theme that, in general, the encoded text has the form:
[Buffer Prefix] [Line Prefix][encoded data atoms][Line Suffix] [Buffer Suffix]In the CharacterEncoder and CharacterDecoder classes, one complete chunk of data is referred to as a buffer. Encoded buffers are all text, and decoded buffers (sometimes just referred to as buffers) are binary octets. To create a custom encoder, you must, at a minimum, overide three abstract methods in this class.
Field Summary | |
protected PrintStream |
pStream
Stream that understands "printing" |
Constructor Summary | |
CharacterEncoder()
|
Method Summary | |
protected abstract int |
bytesPerAtom()
Return the number of bytes per atom of encoding |
protected abstract int |
bytesPerLine()
Return the number of bytes that can be encoded per line |
String |
encode(byte[] aBuffer)
A 'streamless' version of encode that simply takes a buffer of bytes and returns a string containing the encoded buffer. |
void |
encode(byte[] aBuffer,
OutputStream aStream)
Encode the buffer in aBuffer and write the encoded result to the OutputStream aStream. |
void |
encode(InputStream inStream,
OutputStream outStream)
Encode bytes from the input stream, and write them as text characters to the output stream. |
protected abstract void |
encodeAtom(OutputStream aStream,
byte[] someBytes,
int anOffset,
int aLength)
Encode one "atom" of information into characters. |
String |
encodeBuffer(byte[] aBuffer)
A 'streamless' version of encode that simply takes a buffer of bytes and returns a string containing the encoded buffer. |
void |
encodeBuffer(byte[] aBuffer,
OutputStream aStream)
Encode the buffer in aBuffer and write the encoded result to the OutputStream aStream. |
void |
encodeBuffer(InputStream inStream,
OutputStream outStream)
Encode bytes from the input stream, and write them as text characters to the output stream. |
protected void |
encodeBufferPrefix(OutputStream aStream)
Encode the prefix for the entire buffer. |
protected void |
encodeBufferSuffix(OutputStream aStream)
Encode the suffix for the entire buffer. |
protected void |
encodeLinePrefix(OutputStream aStream,
int aLength)
Encode the prefix that starts every output line. |
protected void |
encodeLineSuffix(OutputStream aStream)
Encode the suffix that ends every output line. |
protected int |
readFully(InputStream in,
byte[] buffer)
This method works around the bizarre semantics of BufferedInputStream's read method. |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
Field Detail |
protected PrintStream pStream
Constructor Detail |
public CharacterEncoder()
Method Detail |
protected abstract int bytesPerAtom()
protected abstract int bytesPerLine()
protected void encodeBufferPrefix(OutputStream aStream) throws IOException
protected void encodeBufferSuffix(OutputStream aStream) throws IOException
protected void encodeLinePrefix(OutputStream aStream, int aLength) throws IOException
protected void encodeLineSuffix(OutputStream aStream) throws IOException
protected abstract void encodeAtom(OutputStream aStream, byte[] someBytes, int anOffset, int aLength) throws IOException
protected int readFully(InputStream in, byte[] buffer) throws IOException
public void encode(InputStream inStream, OutputStream outStream) throws IOException
public void encode(byte[] aBuffer, OutputStream aStream) throws IOException
public String encode(byte[] aBuffer)
public void encodeBuffer(InputStream inStream, OutputStream outStream) throws IOException
public void encodeBuffer(byte[] aBuffer, OutputStream aStream) throws IOException
public String encodeBuffer(byte[] aBuffer)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |