Package com.tangosol.io.pof
Class PofOutputStream
- java.lang.Object
-
- java.io.OutputStream
-
- com.tangosol.io.pof.PofOutputStream
-
- All Implemented Interfaces:
com.oracle.coherence.common.io.OutputStreaming
,OutputStreaming
,Closeable
,DataOutput
,Flushable
,ObjectOutput
,AutoCloseable
public class PofOutputStream extends OutputStream implements OutputStreaming, DataOutput, ObjectOutput
An ObjectOutput implementation suitable for writing Externalizable and ExternalizableLite objects to a POF stream, although without support for schema evolution and other advanced POF features.- Author:
- cp 2006.07.29
-
-
Constructor Summary
Constructors Constructor Description PofOutputStream(PofWriter out)
Construct a PofOutputStream that will write its information to an underlyingPofWriter
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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.PofWriter
getPofWriter()
Obtain the underlying PofWriter.int
nextIndex()
Determine the next property index to write to.void
write(byte[] ab)
Writes all the bytes in the arrayab
.void
write(byte[] ab, int of, int cb)
Writescb
bytes starting at offsetof
from the arrayab
.void
write(int b)
Writes the eight low-order bits of the argumentb
.void
writeBoolean(boolean f)
Writes the boolean valuef
.void
writeByte(int b)
Writes the eight low-order bits of the argumentb
.void
writeBytes(String s)
Writes the Strings
, 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 argumentch
; the 16 high-order bits ofch
are ignored.void
writeChars(String s)
Writes the Strings
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
writeObject(Object o)
Writes the Objecto
so that the correspondingObjectInput.readObject()
method can reconstitute an Object from the written data.void
writeShort(int n)
Writes a short value, comprised of the 16 low-order bits of the argumentn
; the 16 high-order bits ofn
are ignored.void
writeUTF(String s)
Writes the Strings
as a sequence of characters, but using UTF-8 encoding for the characters, and including the String length data so that the correspondingDataInput.readUTF()
method can reconstitute a String from the written data.-
Methods inherited from class java.io.OutputStream
nullOutputStream
-
-
-
-
Method Detail
-
write
public void write(int b) throws IOException
Writes the eight low-order bits of the argumentb
. The 24 high-order bits ofb
are ignored.- Specified by:
write
in interfaceDataOutput
- Specified by:
write
in interfaceObjectOutput
- Specified by:
write
in interfacecom.oracle.coherence.common.io.OutputStreaming
- Specified by:
write
in classOutputStream
- 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 arrayab
.- Specified by:
write
in interfaceDataOutput
- Specified by:
write
in interfaceObjectOutput
- Specified by:
write
in interfacecom.oracle.coherence.common.io.OutputStreaming
- Overrides:
write
in classOutputStream
- Parameters:
ab
- the byte array to write- Throws:
IOException
- if an I/O error occursNullPointerException
- ifab
isnull
-
write
public void write(byte[] ab, int of, int cb) throws IOException
Writescb
bytes starting at offsetof
from the arrayab
.- Specified by:
write
in interfaceDataOutput
- Specified by:
write
in interfaceObjectOutput
- Specified by:
write
in interfacecom.oracle.coherence.common.io.OutputStreaming
- Overrides:
write
in classOutputStream
- Parameters:
ab
- the byte array to write fromof
- the offset intoab
to start writing fromcb
- the number of bytes fromab
to write- Throws:
IOException
- if an I/O error occursNullPointerException
- ifab
isnull
IndexOutOfBoundsException
- ifof
is negative, orcb
is negative, orof+cb
is greater thanab.length
-
flush
public void flush() throws IOException
Flushes this OutputStream and forces any buffered output bytes to be written.- Specified by:
flush
in interfaceFlushable
- Specified by:
flush
in interfaceObjectOutput
- Specified by:
flush
in interfacecom.oracle.coherence.common.io.OutputStreaming
- Overrides:
flush
in classOutputStream
- 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 interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in interfaceObjectOutput
- Specified by:
close
in interfacecom.oracle.coherence.common.io.OutputStreaming
- Overrides:
close
in classOutputStream
- Throws:
IOException
- if an I/O error occurs
-
writeBoolean
public void writeBoolean(boolean f) throws IOException
Writes the boolean valuef
.- Specified by:
writeBoolean
in interfaceDataOutput
- 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 argumentb
. The 24 high-order bits ofb
are ignored.- Specified by:
writeByte
in interfaceDataOutput
- 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 argumentn
; the 16 high-order bits ofn
are ignored.- Specified by:
writeShort
in interfaceDataOutput
- 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 argumentch
; the 16 high-order bits ofch
are ignored.- Specified by:
writeChar
in interfaceDataOutput
- 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 interfaceDataOutput
- 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 interfaceDataOutput
- 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 interfaceDataOutput
- 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 interfaceDataOutput
- Parameters:
dfl
- the double to write- Throws:
IOException
- if an I/O error occurs
-
writeBytes
public void writeBytes(String s) throws IOException
Writes the Strings
, but only the low-order byte from each character of the String is written.- Specified by:
writeBytes
in interfaceDataOutput
- Parameters:
s
- the String to write- Throws:
IOException
- if an I/O error occursNullPointerException
- ifs
isnull
-
writeChars
public void writeChars(String s) throws IOException
Writes the Strings
as a sequence of characters.- Specified by:
writeChars
in interfaceDataOutput
- Parameters:
s
- the String to write- Throws:
IOException
- if an I/O error occursNullPointerException
- ifs
isnull
-
writeUTF
public void writeUTF(String s) throws IOException
Writes the Strings
as a sequence of characters, but using UTF-8 encoding for the characters, and including the String length data so that the correspondingDataInput.readUTF()
method can reconstitute a String from the written data.- Specified by:
writeUTF
in interfaceDataOutput
- Parameters:
s
- the String to write- Throws:
IOException
- if an I/O error occursNullPointerException
- ifs
isnull
-
writeObject
public void writeObject(Object o) throws IOException
Writes the Objecto
so that the correspondingObjectInput.readObject()
method can reconstitute an Object from the written data.- Specified by:
writeObject
in interfaceObjectOutput
- Parameters:
o
- the Object to write- Throws:
IOException
- if an I/O error occurs
-
getPofWriter
public PofWriter getPofWriter()
Obtain the underlying PofWriter.- Returns:
- the PofWriter
-
nextIndex
public int nextIndex()
Determine the next property index to write to.- Returns:
- the next property index to write to
-
-