|
CoherenceTM v3.3 Copyright© 2000-2007 by Oracle Corporation |
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Objectcom.tangosol.io.AbstractWriteBuffer.AbstractBufferOutput
com.tangosol.io.MultiBufferWriteBuffer.MultiBufferOutput
public class MultiBufferWriteBuffer.MultiBufferOutput
The MultiBufferOutput implementation extends the AbstractBufferOutput to provide "pass through" operations to the underlying buffer if the operation is guaranteed to fit in the underlying buffer; otherwise, it vitualizes the operation onto the MultiBufferWriteBuffer itself so that the over-run of one underlying WriteBuffer will end up being written to the next underlying WriteBuffer.
This implementation is fairly tightly bound to the super-class implementation; changes to AbstractBufferOutput should be carefully evaluated for potential impacts on this class.
| Field Summary |
|---|
| Fields inherited from class com.tangosol.io.AbstractWriteBuffer.AbstractBufferOutput |
|---|
m_ofWrite |
| Constructor Summary | |
|---|---|
MultiBufferWriteBuffer.MultiBufferOutput(int of)
Construct an AbstractBufferOutput that will begin writing at the specified offset within the containing WriteBuffer. |
|
| Method Summary | |
|---|---|
protected void |
adjust(int cb)
Adjust the offset of this BufferOutput based on a write that by-passed this BufferOutput's own super-class implementation that is responsible for maintaining the offset. |
protected WriteBuffer.BufferOutput |
getOut()
Obtain the underlying BufferOutput. |
protected boolean |
hasRemaining(int cb)
Determine if it is possible to write something of a specified length to the underlying buffer. |
void |
setOffset(int of)
Specify the offset of the next byte to write to the underlying WriteBuffer. |
protected void |
sync()
After traversing an underlying WriteBuffer boundary, or otherwise changing the offset significantly, sync between this BufferOutput's absolute position and an underlying BufferOutput's relative position. |
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 |
writeBuffer(ReadBuffer buf)
Write all the bytes from the passed ReadBuffer object. |
void |
writeBuffer(ReadBuffer buf,
int of,
int cb)
Write cb bytes from the passed ReadBuffer object starting at offset of within the passed ReadBuffer. |
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 |
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 |
writeStream(InputStreaming stream)
Write the remaining contents of the specified InputStreaming object. |
void |
writeStream(InputStreaming stream,
int cb)
Write the specified number of bytes of the specified InputStreaming object. |
| Methods inherited from class com.tangosol.io.AbstractWriteBuffer.AbstractBufferOutput |
|---|
calcUTF, close, flush, formatUTF, getBuffer, getCharBuf, getOffset, writeBoolean, writeByte, writeBytes, writeChars, writePackedInt, writePackedLong, writeSafeUTF, writeUTF |
| Constructor Detail |
|---|
public MultiBufferWriteBuffer.MultiBufferOutput(int of)
of - the offset at which to begin writing| Method Detail |
|---|
public void write(int b)
throws IOException
write in interface OutputStreamingwrite in interface DataOutputwrite in class AbstractWriteBuffer.AbstractBufferOutputb - the byte to write (passed as an integer)
IOException - if an I/O error occurs
public void write(byte[] ab)
throws IOException
write in interface OutputStreamingwrite in interface DataOutputwrite in class AbstractWriteBuffer.AbstractBufferOutputab - the byte array to write
IOException - if an I/O error occurs
public void write(byte[] ab,
int of,
int cb)
throws IOException
write in interface OutputStreamingwrite in interface DataOutputwrite in class AbstractWriteBuffer.AbstractBufferOutputab - the byte array to write fromof - the offset into ab to start writing fromcb - the number of bytes from ab to write
IOException - if an I/O error occurs
public void writeShort(int n)
throws IOException
writeShort in interface DataOutputwriteShort in class AbstractWriteBuffer.AbstractBufferOutputn - the short to write (passed as an integer)
IOException - if an I/O error occurs
public void writeChar(int ch)
throws IOException
writeChar in interface DataOutputwriteChar in class AbstractWriteBuffer.AbstractBufferOutputch - the char to write (passed as an integer)
IOException - if an I/O error occurs
public void writeInt(int n)
throws IOException
writeInt in interface DataOutputwriteInt in class AbstractWriteBuffer.AbstractBufferOutputn - the int to write
IOException - if an I/O error occurs
public void writeLong(long l)
throws IOException
writeLong in interface DataOutputwriteLong in class AbstractWriteBuffer.AbstractBufferOutputl - the long to write
IOException - if an I/O error occurs
public void writeFloat(float fl)
throws IOException
writeFloat in interface DataOutputwriteFloat in class AbstractWriteBuffer.AbstractBufferOutputfl - the float to write
IOException - if an I/O error occurs
public void writeDouble(double dfl)
throws IOException
writeDouble in interface DataOutputwriteDouble in class AbstractWriteBuffer.AbstractBufferOutputdfl - the double to write
IOException - if an I/O error occurs
public void writeBuffer(ReadBuffer buf)
throws IOException
This is functionally equivalent to the following code:
getBuffer().write(getOffset(), buf);
writeBuffer in interface WriteBuffer.BufferOutputwriteBuffer in class AbstractWriteBuffer.AbstractBufferOutputbuf - a ReadBuffer object
IOException - if an I/O error occurs
public void writeBuffer(ReadBuffer buf,
int of,
int cb)
throws IOException
This is functionally equivalent to the following code:
getBuffer().write(getOffset(), buf, of, cb);
writeBuffer in interface WriteBuffer.BufferOutputwriteBuffer in class AbstractWriteBuffer.AbstractBufferOutputbuf - a ReadBuffer objectof - the offset within the ReadBuffer of the first byte to
write to this BufferOutputcb - the number of bytes to write
IOException - if an I/O error occurs
public void writeStream(InputStreaming stream)
throws IOException
This is functionally equivalent to the following code:
getBuffer().write(getOffset(), stream);
writeStream in interface WriteBuffer.BufferOutputwriteStream in class AbstractWriteBuffer.AbstractBufferOutputstream - the stream of bytes to write to this BufferOutput
IOException - if an I/O error occurs, specifically if an
IOException occurs reading from the passed stream
public void writeStream(InputStreaming stream,
int cb)
throws IOException
This is functionally equivalent to the following code:
getBuffer().write(getOffset(), stream, cb);
writeStream in interface WriteBuffer.BufferOutputwriteStream in class AbstractWriteBuffer.AbstractBufferOutputstream - the stream of bytes to write to this BufferOutputcb - the exact number of bytes to read from the stream
and write to this BufferOutput
EOFException - if the stream is exhausted before
the number of bytes indicated could be read
IOException - if an I/O error occurs, specifically if an
IOException occurs reading from the passed streampublic void setOffset(int of)
setOffset in interface WriteBuffer.BufferOutputsetOffset in class AbstractWriteBuffer.AbstractBufferOutputof - the offset of the next byte to write to the
WriteBufferprotected WriteBuffer.BufferOutput getOut()
protected boolean hasRemaining(int cb)
cb - the length to write
protected void adjust(int cb)
cb - the number of bytes that were just written directly to
the underlying BufferOutputprotected void sync()
|
CoherenceTM v3.3 Copyright© 2000-2007 by Oracle Corporation |
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||