Class FastByteArrayOutputStream
- java.lang.Object
-
- java.io.OutputStream
-
- java.io.ByteArrayOutputStream
-
- com.opensymphony.module.sitemesh.util.FastByteArrayOutputStream
-
- All Implemented Interfaces:
java.io.Closeable,java.io.Flushable,java.lang.AutoCloseable
public class FastByteArrayOutputStream extends java.io.ByteArrayOutputStreamA speedy implementation of ByteArrayOutputStream. It's not synchronized, and it does not copy buffers when it's expanded. There's also no copying of the internal buffer if it's contents is extracted with the writeTo(stream) method.- Version:
- $Revision: 1.2 $
- Author:
- Rickard Oberg, Scott Farquhar
-
-
Constructor Summary
Constructors Constructor Description FastByteArrayOutputStream()FastByteArrayOutputStream(int aSize)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()voidflush()voidreset()intsize()byte[]toByteArray()java.lang.StringtoString()java.lang.StringtoString(java.lang.String enc)voidwrite(byte[] data, int offset, int length)voidwrite(int datum)voidwriteTo(java.io.OutputStream out)
-
-
-
Field Detail
-
DEFAULT_BLOCK_SIZE
private static final int DEFAULT_BLOCK_SIZE
- See Also:
- Constant Field Values
-
buffer
private byte[] buffer
Internal buffer.
-
buffers
private java.util.LinkedList buffers
-
index
private int index
-
size
private int size
-
blockSize
private int blockSize
-
-
Method Detail
-
writeTo
public void writeTo(java.io.OutputStream out) throws java.io.IOException- Overrides:
writeToin classjava.io.ByteArrayOutputStream- Throws:
java.io.IOException
-
size
public int size()
- Overrides:
sizein classjava.io.ByteArrayOutputStream
-
toByteArray
public byte[] toByteArray()
- Overrides:
toByteArrayin classjava.io.ByteArrayOutputStream
-
write
public void write(int datum)
- Overrides:
writein classjava.io.ByteArrayOutputStream
-
write
public void write(byte[] data, int offset, int length)- Overrides:
writein classjava.io.ByteArrayOutputStream
-
reset
public void reset()
- Overrides:
resetin classjava.io.ByteArrayOutputStream
-
toString
public java.lang.String toString(java.lang.String enc) throws java.io.UnsupportedEncodingException- Overrides:
toStringin classjava.io.ByteArrayOutputStream- Throws:
java.io.UnsupportedEncodingException
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.io.ByteArrayOutputStream
-
flush
public void flush() throws java.io.IOException- Specified by:
flushin interfacejava.io.Flushable- Overrides:
flushin classjava.io.OutputStream- Throws:
java.io.IOException
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Overrides:
closein classjava.io.ByteArrayOutputStream- Throws:
java.io.IOException
-
-