Apache CXF API

org.apache.cxf.helpers
Class LoadingByteArrayOutputStream

java.lang.Object
  extended by java.io.OutputStream
      extended by java.io.ByteArrayOutputStream
          extended by org.apache.cxf.helpers.LoadingByteArrayOutputStream
All Implemented Interfaces:
Closeable, Flushable

public class LoadingByteArrayOutputStream
extends ByteArrayOutputStream

Subclass of ByteArrayOutputStream that allows creation of a ByteArrayInputStream directly without creating a copy of the byte[]. Also, on "toByteArray()" it truncates it's buffer to the current size and returns the new buffer directly. Multiple calls to toByteArray() will return the exact same byte[] unless a write is called in between. Note: once the InputStream is created, the output stream should no longer be used. In particular, make sure not to call reset() and then write as that may overwrite the data that the InputStream is using.


Field Summary
 
Fields inherited from class java.io.ByteArrayOutputStream
buf, count
 
Constructor Summary
LoadingByteArrayOutputStream()
           
LoadingByteArrayOutputStream(int i)
           
 
Method Summary
 ByteArrayInputStream createInputStream()
           
 byte[] getRawBytes()
           
 byte[] toByteArray()
           
 
Methods inherited from class java.io.ByteArrayOutputStream
close, reset, size, toString, toString, toString, write, write, writeTo
 
Methods inherited from class java.io.OutputStream
flush, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LoadingByteArrayOutputStream

public LoadingByteArrayOutputStream()

LoadingByteArrayOutputStream

public LoadingByteArrayOutputStream(int i)
Method Detail

createInputStream

public ByteArrayInputStream createInputStream()

toByteArray

public byte[] toByteArray()
Overrides:
toByteArray in class ByteArrayOutputStream

getRawBytes

public byte[] getRawBytes()

Apache CXF API

Apache CXF