|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Object
|
+--java.io.OutputStream
|
+--com.cafesoft.core.message.MessageOutputStream
The MessageOutputStream stream object extends the abstract class OutputStream. In essence, this class is responsible for writing data to the OutputStream transport.
More specifically it is responsible for writing data into data envelopes the Messaging Framework calls Packets. The OutputStream writes data to the packets and understands various data limits imposed as well as error conditions that could occur while writing to a packet. The end result is that every packet that the OutputStream constructs is sent to a PacketQueue where it is later removed for processing.
| Constructor Summary | |
MessageOutputStream(PacketObjectPool objectPool)
Create a new MessageOutputStream |
|
| Method Summary | |
void |
close()
Close the MessageOutputStream Flush the MessageOutputStream and mark it as closed. |
void |
flush()
Flush the MessageOutputStream Mark the current packet being written to as the end of message packet and place the current packet on the packet queue. |
void |
setMessageId(int messageId)
Set the message id of the message being sent |
void |
setMessageType(int messageType)
Set the message type of the message being sent |
void |
setPacketConsumer(PacketConsumer packetConsumer)
Set the PacketConsumer that will consume full packets |
void |
setReceiverId(int receiverId)
Set the receiver id of the message being sent |
void |
setSenderId(int senderId)
Set the sender id of the message being sent |
void |
write(byte[] b)
Writes b.length bytes from the specified byte array
to this output stream. |
void |
write(byte[] b,
int off,
int len)
Writes len bytes from the specified byte array
starting at offset off to this output stream.
|
void |
write(int b)
Writes the specified byte to this output stream. |
void |
writeInteger(int value)
Write an integer to the MessageOutputStream |
void |
writeString(String string)
Write a String to the MessageOutputStream |
void |
writeUnsignedShort(int value)
Write an unsigned short to the MessageOutputStream The value to be written to the output stream must be between the range of 0 and 65535. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public MessageOutputStream(PacketObjectPool objectPool)
objectPool - KRJ| Method Detail |
public void setMessageId(int messageId)
messageId - the new message idpublic void setSenderId(int senderId)
senderId - the new sender idpublic void setReceiverId(int receiverId)
receiverId - the new receiver idpublic void setMessageType(int messageType)
messageType - the new message typepublic void setPacketConsumer(PacketConsumer packetConsumer)
packetConsumer - the new PacketConsumer
public void writeUnsignedShort(int value)
throws IOException
The value to be written to the output stream must be between the range of 0 and 65535. If it is not an IllegalArgumentException is thrown.
value - the value to be written
IOException - thrown if the output stream is closed.
public void writeInteger(int value)
throws IOException
value - the value to be written
IOException - thrown if the output stream is closed
public void writeString(String string)
throws IOException
string - the String to write to the output stream
IOException - thrown if the stream has been closed, or if the
encoding type used to write the String to the stream is not supported
public void write(int b)
throws IOException
write is that one byte is written
to the output stream. The byte to be written is the eight
low-order bits of the argument b. The 24
high-order bits of b are ignored.
write in class OutputStreamb - the byte.
IOException - if an I/O error occurs. In particular, an
IOException is thrown if the output stream has been closed
public void write(byte[] b)
throws IOException
b.length bytes from the specified byte array
to this output stream. The general contract for write(b)
is that it should have exactly the same effect as the call
write(b, 0, b.length).
write in class OutputStreamb - the data.
IOException - if an I/O error occurs.OutputStream.write(byte[], int, int)
public void write(byte[] b,
int off,
int len)
throws IOException
len bytes from the specified byte array
starting at offset off to this output stream.
The general contract for write(b, off, len) is that
some of the bytes in the array b are written to the
output stream in order; element b[off] is the first
byte written and b[off+len-1] is the last byte written
by this operation.
The write method of OutputStream calls
the write method of one argument on each of the bytes to be
written out. Subclasses are encouraged to override this method and
provide a more efficient implementation.
If b is null, a
NullPointerException is thrown.
If off is negative, or len is negative, or
off+len is greater than the length of the array
b, then an IndexOutOfBoundsException is thrown.
write in class OutputStreamb - the data.off - the start offset in the data.len - the number of bytes to write.
IOException - if an I/O error occurs. In particular,
an IOException is thrown if the output
stream is closed.
public void flush()
throws IOException
Mark the current packet being written to as the end of message packet and place the current packet on the packet queue.
Flushes this output stream and forces any buffered output bytes
to be written out. The general contract of flush is
that calling it is an indication that, if any bytes previously
written have been buffered by the implementation of the output
stream, such bytes should immediately be written to their
intended destination.
flush in class OutputStreamIOException - if an I/O error occurs. In particular, the stream
is closed.
public void close()
throws IOException
Flush the MessageOutputStream and mark it as closed.
Closes this output stream and releases any system resources
associated with this stream. The general contract of close
is that it closes the output stream. A closed stream cannot perform
output operations and cannot be reopened.
close in class OutputStreamIOException - if an I/O error occurs. In particular if the
stream has already been closed.
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||