CoherenceTM v3.3
Copyright© 2000-2007 by Oracle Corporation

com.tangosol.io
Class WrapperDataOutputStream

java.lang.Object
  extended by java.io.OutputStream
      extended by com.tangosol.io.WrapperDataOutputStream
All Implemented Interfaces:
OutputStreaming, Closeable, DataOutput, Flushable
Direct Known Subclasses:
WrapperObjectOutputStream

public class WrapperDataOutputStream
extends OutputStream
implements DataOutput, OutputStreaming

This is an imitation DataOutputStream class that provides the DataOutput interface by delegating to an object that implements the DataOutput interface. Primarily, this is intended as a base class for building specific-purpose DataOutput wrappers.

Author:
cp 2004.08.20

Constructor Summary
WrapperDataOutputStream(DataOutput out)
          Construct a WrapperDataOutputStream that will output to the specified object implementing the DataOutput interface.
 
Method Summary
 void close()
          Closes this OutputStream and releases any associated system resources.
 void flush()
          Flushes this OutputStream and forces any buffered output bytes to be written.
 long getBytesWritten()
          Return the total number of bytes written to the wrapped DataOutput object.
 DataOutput getDataOutput()
          Obtain the underlying object providing the DataOutput interface that this object is delegating to.
protected  void incBytesWritten(int cb)
          Increment the count of total number of bytes written to the wrapped DataOutput object by the specified number of bytes.
 void write(byte[] ab)
          Writes all the bytes in the array ab.
 void write(byte[] ab, int of, int cb)
          Writes cb bytes starting at offset of from the array ab.
 void write(int b)
          Writes the eight low-order bits of the argument b.
 void writeBoolean(boolean f)
          Writes the boolean value f.
 void writeByte(int b)
          Writes the eight low-order bits of the argument b.
 void writeBytes(String s)
          Writes the String s, but only the low-order byte from each character of the String is written.
 void writeChar(int ch)
          Writes a char value, comprised of the 16 low-order bits of the argument ch; the 16 high-order bits of ch are ignored.
 void writeChars(String s)
          Writes the String s as a sequence of characters.
 void writeDouble(double dfl)
          Writes a double value.
 void writeFloat(float fl)
          Writes a float value.
 void writeInt(int n)
          Writes an int value.
 void writeLong(long l)
          Writes a long value.
 void writeShort(int n)
          Writes a short value, comprised of the 16 low-order bits of the argument n; the 16 high-order bits of n are ignored.
 void writeUTF(String s)
          Writes the String s as a sequence of characters, but using UTF-8 encoding for the characters, and including the String length data so that the corresponding DataInput.readUTF() method can reconstitute a String from the written data.
 

Constructor Detail

WrapperDataOutputStream

public WrapperDataOutputStream(DataOutput out)
Construct a WrapperDataOutputStream that will output to the specified object implementing the DataOutput interface.

Parameters:
out - an object implementing DataOutput to write to
Method Detail

getDataOutput

public DataOutput getDataOutput()
Obtain the underlying object providing the DataOutput interface that this object is delegating to.

Returns:
the underlying DataOutput

getBytesWritten

public long getBytesWritten()
Return the total number of bytes written to the wrapped DataOutput object.

Returns:
the total number of bytes written

incBytesWritten

protected void incBytesWritten(int cb)
Increment the count of total number of bytes written to the wrapped DataOutput object by the specified number of bytes.

If the count has reached Long.MAX_VALUE, the count is not incremented.

Parameters:
cb - the number of bytes to increment the count by

write

public void write(int b)
           throws IOException
Writes the eight low-order bits of the argument b. The 24 high-order bits of b are ignored.

Specified by:
write in interface OutputStreaming
Specified by:
write in interface DataOutput
Specified by:
write in class OutputStream
Parameters:
b - the byte to write (passed as an integer)
Throws:
IOException - if an I/O error occurs

write

public void write(byte[] ab)
           throws IOException
Writes all the bytes in the array ab.

Specified by:
write in interface OutputStreaming
Specified by:
write in interface DataOutput
Overrides:
write in class OutputStream
Parameters:
ab - the byte array to write
Throws:
IOException - if an I/O error occurs
NullPointerException - if ab is null

write

public void write(byte[] ab,
                  int of,
                  int cb)
           throws IOException
Writes cb bytes starting at offset of from the array ab.

Specified by:
write in interface OutputStreaming
Specified by:
write in interface DataOutput
Overrides:
write in class OutputStream
Parameters:
ab - the byte array to write from
of - the offset into ab to start writing from
cb - the number of bytes from ab to write
Throws:
IOException - if an I/O error occurs
NullPointerException - if ab is null
IndexOutOfBoundsException - if of is negative, or cb is negative, or of+cb is greater than ab.length

writeBoolean

public void writeBoolean(boolean f)
                  throws IOException
Writes the boolean value f.

Specified by:
writeBoolean in interface DataOutput
Parameters:
f - the boolean to be written
Throws:
IOException - if an I/O error occurs

writeByte

public void writeByte(int b)
               throws IOException
Writes the eight low-order bits of the argument b. The 24 high-order bits of b are ignored.

Specified by:
writeByte in interface DataOutput
Parameters:
b - the byte to write (passed as an integer)
Throws:
IOException - if an I/O error occurs

writeShort

public void writeShort(int n)
                throws IOException
Writes a short value, comprised of the 16 low-order bits of the argument n; the 16 high-order bits of n are ignored.

Specified by:
writeShort in interface DataOutput
Parameters:
n - the short to write (passed as an integer)
Throws:
IOException - if an I/O error occurs

writeChar

public void writeChar(int ch)
               throws IOException
Writes a char value, comprised of the 16 low-order bits of the argument ch; the 16 high-order bits of ch are ignored.

Specified by:
writeChar in interface DataOutput
Parameters:
ch - the char to write (passed as an integer)
Throws:
IOException - if an I/O error occurs

writeInt

public void writeInt(int n)
              throws IOException
Writes an int value.

Specified by:
writeInt in interface DataOutput
Parameters:
n - the int to write
Throws:
IOException - if an I/O error occurs

writeLong

public void writeLong(long l)
               throws IOException
Writes a long value.

Specified by:
writeLong in interface DataOutput
Parameters:
l - the long to write
Throws:
IOException - if an I/O error occurs

writeFloat

public void writeFloat(float fl)
                throws IOException
Writes a float value.

Specified by:
writeFloat in interface DataOutput
Parameters:
fl - the float to write
Throws:
IOException - if an I/O error occurs

writeDouble

public void writeDouble(double dfl)
                 throws IOException
Writes a double value.

Specified by:
writeDouble in interface DataOutput
Parameters:
dfl - the double to write
Throws:
IOException - if an I/O error occurs

writeBytes

public void writeBytes(String s)
                throws IOException
Writes the String s, but only the low-order byte from each character of the String is written.

Specified by:
writeBytes in interface DataOutput
Parameters:
s - the String to write
Throws:
IOException - if an I/O error occurs
NullPointerException - if s is null

writeChars

public void writeChars(String s)
                throws IOException
Writes the String s as a sequence of characters.

Specified by:
writeChars in interface DataOutput
Parameters:
s - the String to write
Throws:
IOException - if an I/O error occurs
NullPointerException - if s is null

writeUTF

public void writeUTF(String s)
              throws IOException
Writes the String s as a sequence of characters, but using UTF-8 encoding for the characters, and including the String length data so that the corresponding DataInput.readUTF() method can reconstitute a String from the written data.

Specified by:
writeUTF in interface DataOutput
Parameters:
s - the String to write
Throws:
IOException - if an I/O error occurs
NullPointerException - if s is null

flush

public void flush()
           throws IOException
Flushes this OutputStream and forces any buffered output bytes to be written.

Specified by:
flush in interface OutputStreaming
Specified by:
flush in interface Flushable
Overrides:
flush in class OutputStream
Throws:
IOException - if an I/O error occurs

close

public void close()
           throws IOException
Closes this OutputStream and releases any associated system resources.

Specified by:
close in interface OutputStreaming
Specified by:
close in interface Closeable
Overrides:
close in class OutputStream
Throws:
IOException - if an I/O error occurs

CoherenceTM v3.3
Copyright© 2000-2007 by Oracle Corporation