ERXRefByteArrayOutputStream Class Reference

Inherits java::io::OutputStream.

Collaboration diagram for ERXRefByteArrayOutputStream:

Collaboration graph
[legend]

List of all members.

Public Member Functions

void close ()
 ERXRefByteArrayOutputStream (int size)
 ERXRefByteArrayOutputStream ()
synchronized byte[] getBuffer ()
synchronized void reset ()
int size ()
synchronized byte toByteArray ()[]
synchronized NSData toNSData ()
String toString (int hibyte)
String toString (String enc) throws UnsupportedEncodingException
String toString ()
synchronized void write (byte b[], int off, int len)
synchronized void write (int b)
synchronized void writeTo (OutputStream out) throws IOException

Protected Attributes

byte buf []
int count


Detailed Description

This class is uh ... inspired ... by ByteArrayOutputStream, except that it gives direct access to the underlying byte buffer for performing operations on the buffer without a byte array copying penalty.

Author:
Arthur van Hoff

mschrag


Constructor & Destructor Documentation

Creates a new byte array output stream. The buffer capacity is initially 32 bytes, though its size increases if necessary.

ERXRefByteArrayOutputStream ( int  size  ) 

Creates a new byte array output stream, with a buffer capacity of the specified size, in bytes.

Parameters:
size the initial size.
Exceptions:
IllegalArgumentException if size is negative.


Member Function Documentation

void close (  ) 

Closing a ByteArrayOutputStream has no effect. The methods in this class can be called after the stream has been closed without generating an IOException.

synchronized byte [] getBuffer (  ) 

Returns the underlying byte buffer for this stream.

Returns:
the underlying byte buffer for this stream

synchronized void reset (  ) 

Resets the count field of this byte array output stream to zero, so that all currently accumulated output in the ouput stream is discarded. The output stream can be used again, reusing the already allocated buffer space.

See also:
java.io.ByteArrayInputStream.count

int size (  ) 

Returns the current size of the buffer.

Returns:
the value of the count field, which is the number of valid bytes in this output stream.
See also:
java.io.ByteArrayOutputStream.count

synchronized byte toByteArray (  ) 

Creates a newly allocated byte array. Its size is the current size of this output stream and the valid contents of the buffer have been copied into it.

Returns:
the current contents of this output stream, as a byte array.
See also:
java.io.ByteArrayOutputStream.size()

synchronized NSData toNSData (  ) 

Returns a no-copy NSData of the byte buffer for this stream.

Returns:
a no-copy NSData of the byte buffer for this stream

String toString ( int  hibyte  ) 

Creates a newly allocated string. Its size is the current size of the output stream and the valid contents of the buffer have been copied into it. Each character c in the resulting string is constructed from the corresponding element b in the byte array such that: <blockquote>

     c == (char)(((hibyte & 0xff) << 8) | (b & 0xff))
 
</blockquote>

Deprecated:
This method does not properly convert bytes into characters. As of JDK 1.1, the preferred way to do this is via the toString(String enc) method, which takes an encoding-name argument, or the toString() method, which uses the platform's default character encoding.
Parameters:
hibyte the high byte of each resulting Unicode character.
Returns:
the current contents of the output stream, as a string.
See also:
java.io.ByteArrayOutputStream.size()

java.io.ByteArrayOutputStream.toString(String)

java.io.ByteArrayOutputStream.toString()

String toString ( String  enc  )  throws UnsupportedEncodingException

Converts the buffer's contents into a string, translating bytes into characters according to the specified character encoding.

Parameters:
enc a character-encoding name.
Returns:
String translated from the buffer's contents.
Exceptions:
UnsupportedEncodingException If the named encoding is not supported.
Since:
JDK1.1

String toString (  ) 

Converts the buffer's contents into a string, translating bytes into characters according to the platform's default character encoding.

Returns:
String translated from the buffer's contents.
Since:
JDK1.1

synchronized void write ( byte  b[],
int  off,
int  len 
)

Writes len bytes from the specified byte array starting at offset off to this byte array output stream.

Parameters:
b the data.
off the start offset in the data.
len the number of bytes to write.

synchronized void write ( int  b  ) 

Writes the specified byte to this byte array output stream.

Parameters:
b the byte to be written.

synchronized void writeTo ( OutputStream  out  )  throws IOException

Writes the complete contents of this byte array output stream to the specified output stream argument, as if by calling the output stream's write method using out.write(buf, 0, count).

Parameters:
out the output stream to which to write the data.
Exceptions:
IOException if an I/O error occurs.


Member Data Documentation

byte buf[] [protected]

The buffer where data is stored.

int count [protected]

The number of valid bytes in the buffer.


The documentation for this class was generated from the following file:

Generated on Sat May 26 06:43:13 2012 for Project Wonder by  doxygen 1.5.8