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
ConstructorDescriptionPofOutputStream
(PofWriter out) Construct a PofOutputStream that will write its information to an underlyingPofWriter
. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Closes this OutputStream and releases any associated system resources.void
flush()
Flushes this OutputStream and forces any buffered output bytes to be written.Obtain the underlying PofWriter.int
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
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
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
-
Constructor Details
-
Method Details
-
write
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
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
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
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
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
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
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
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
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
Writes an int value.- Specified by:
writeInt
in interfaceDataOutput
- Parameters:
n
- the int to write- Throws:
IOException
- if an I/O error occurs
-
writeLong
Writes a long value.- Specified by:
writeLong
in interfaceDataOutput
- Parameters:
l
- the long to write- Throws:
IOException
- if an I/O error occurs
-
writeFloat
Writes a float value.- Specified by:
writeFloat
in interfaceDataOutput
- Parameters:
fl
- the float to write- Throws:
IOException
- if an I/O error occurs
-
writeDouble
Writes a double value.- Specified by:
writeDouble
in interfaceDataOutput
- Parameters:
dfl
- the double to write- Throws:
IOException
- if an I/O error occurs
-
writeBytes
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
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
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
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
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
-