org.apache.james.util
Class DotStuffingInputStream
java.lang.Object
java.io.InputStream
java.io.FilterInputStream
org.apache.james.util.DotStuffingInputStream
- All Implemented Interfaces:
- java.io.Closeable
public class DotStuffingInputStream
- extends java.io.FilterInputStream
Removes the dot-stuffing happening during the NNTP and SMTP message
transfer
Field Summary |
protected int[] |
last
An array to hold the last two bytes read off the stream. |
Fields inherited from class java.io.FilterInputStream |
in |
Method Summary |
int |
read()
Read through the stream, checking for '\r\n.' |
int |
read(byte[] b,
int off,
int len)
Read through the stream, checking for '\r\n.' |
Methods inherited from class java.io.FilterInputStream |
available, close, mark, markSupported, read, reset, skip |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
last
protected int[] last
- An array to hold the last two bytes read off the stream.
This allows the stream to detect '\r\n' sequences even
when they occur across read boundaries.
DotStuffingInputStream
public DotStuffingInputStream(java.io.InputStream in)
read
public int read()
throws java.io.IOException
- Read through the stream, checking for '\r\n.'
- Overrides:
read
in class java.io.FilterInputStream
- Returns:
- the byte read from the stream
- Throws:
java.io.IOException
read
public int read(byte[] b,
int off,
int len)
throws java.io.IOException
- Read through the stream, checking for '\r\n.'
- Overrides:
read
in class java.io.FilterInputStream
- Parameters:
b
- the byte array into which the bytes will be readoff
- the offset into the byte array where the bytes will be insertedlen
- the maximum number of bytes to be read off the stream
- Returns:
- the number of bytes read
- Throws:
java.io.IOException
Copyright ? 2002-2009 The Apache Software Foundation. All Rights Reserved.