Interface MessageWriter
-
public interface MessageWriter
Communication message writer.Allows to customize the binary format of communication messages.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
afterInnerMessageWrite(boolean finished)
Callback called after inner message is written.void
beforeInnerMessageWrite()
Callback called before inner message is written.void
incrementState()
Increments state.boolean
isHeaderWritten()
void
onHeaderWritten()
Callback called when header of the message is written.void
reset()
Resets this writer.void
setBuffer(ByteBuffer buf)
Sets but buffer to write to.void
setCurrentWriteClass(Class<? extends Message> msgCls)
Sets type of message currently written.int
state()
Gets current message state.boolean
writeAffinityTopologyVersion(String name, org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion val)
WritesAffinityTopologyVersion
.boolean
writeBitSet(String name, BitSet val)
WritesBitSet
.boolean
writeBoolean(String name, boolean val)
Writesboolean
value.boolean
writeBooleanArray(String name, boolean[] val)
Writesboolean
array.boolean
writeByte(String name, byte val)
Writesbyte
value.boolean
writeByteArray(String name, byte[] val)
Writesbyte
array.boolean
writeByteArray(String name, byte[] val, long off, int len)
Writesbyte
array.boolean
writeChar(String name, char val)
Writeschar
value.boolean
writeCharArray(String name, char[] val)
Writeschar
array.<T> boolean
writeCollection(String name, Collection<T> col, MessageCollectionItemType itemType)
Writes collection.boolean
writeDouble(String name, double val)
Writesdouble
value.boolean
writeDoubleArray(String name, double[] val)
Writesdouble
array.boolean
writeFloat(String name, float val)
Writesfloat
value.boolean
writeFloatArray(String name, float[] val)
Writesfloat
array.boolean
writeHeader(short type, byte fieldCnt)
Writes message header.boolean
writeIgniteUuid(String name, IgniteUuid val)
WritesIgniteUuid
.boolean
writeInt(String name, int val)
Writesint
value.boolean
writeIntArray(String name, int[] val)
Writesint
array.boolean
writeLong(String name, long val)
Writeslong
value.boolean
writeLongArray(String name, long[] val)
Writeslong
array.boolean
writeLongArray(String name, long[] val, int len)
Writeslong
array.<K,V>
booleanwriteMap(String name, Map<K,V> map, MessageCollectionItemType keyType, MessageCollectionItemType valType)
Writes map.boolean
writeMessage(String name, Message val)
Writes nested message.<T> boolean
writeObjectArray(String name, T[] arr, MessageCollectionItemType itemType)
Writes array of objects.boolean
writeShort(String name, short val)
Writesshort
value.boolean
writeShortArray(String name, short[] val)
Writesshort
array.boolean
writeString(String name, String val)
WritesString
.boolean
writeUuid(String name, UUID val)
WritesUUID
.
-
-
-
Method Detail
-
setBuffer
void setBuffer(ByteBuffer buf)
Sets but buffer to write to.- Parameters:
buf
- Byte buffer.
-
setCurrentWriteClass
void setCurrentWriteClass(Class<? extends Message> msgCls)
Sets type of message currently written.- Parameters:
msgCls
- Message type.
-
writeHeader
boolean writeHeader(short type, byte fieldCnt)
Writes message header.- Parameters:
type
- Message type.fieldCnt
- Fields count.- Returns:
true
if successfully. Otherwise returnsfalse
.
-
writeByte
boolean writeByte(String name, byte val)
Writesbyte
value.- Parameters:
name
- Field name.val
-byte
value.- Returns:
- Whether value was fully written.
-
writeShort
boolean writeShort(String name, short val)
Writesshort
value.- Parameters:
name
- Field name.val
-short
value.- Returns:
- Whether value was fully written.
-
writeInt
boolean writeInt(String name, int val)
Writesint
value.- Parameters:
name
- Field name.val
-int
value.- Returns:
- Whether value was fully written.
-
writeLong
boolean writeLong(String name, long val)
Writeslong
value.- Parameters:
name
- Field name.val
-long
value.- Returns:
- Whether value was fully written.
-
writeFloat
boolean writeFloat(String name, float val)
Writesfloat
value.- Parameters:
name
- Field name.val
-float
value.- Returns:
- Whether value was fully written.
-
writeDouble
boolean writeDouble(String name, double val)
Writesdouble
value.- Parameters:
name
- Field name.val
-double
value.- Returns:
- Whether value was fully written.
-
writeChar
boolean writeChar(String name, char val)
Writeschar
value.- Parameters:
name
- Field name.val
-char
value.- Returns:
- Whether value was fully written.
-
writeBoolean
boolean writeBoolean(String name, boolean val)
Writesboolean
value.- Parameters:
name
- Field name.val
-boolean
value.- Returns:
- Whether value was fully written.
-
writeByteArray
boolean writeByteArray(String name, byte[] val)
Writesbyte
array.- Parameters:
name
- Field name.val
-byte
array.- Returns:
- Whether array was fully written.
-
writeByteArray
boolean writeByteArray(String name, byte[] val, long off, int len)
Writesbyte
array.- Parameters:
name
- Field name.val
-byte
array.off
- Offset.len
- Length.- Returns:
- Whether array was fully written.
-
writeShortArray
boolean writeShortArray(String name, short[] val)
Writesshort
array.- Parameters:
name
- Field name.val
-short
array.- Returns:
- Whether array was fully written.
-
writeIntArray
boolean writeIntArray(String name, int[] val)
Writesint
array.- Parameters:
name
- Field name.val
-int
array.- Returns:
- Whether array was fully written.
-
writeLongArray
boolean writeLongArray(String name, long[] val)
Writeslong
array.- Parameters:
name
- Field name.val
-long
array.- Returns:
- Whether array was fully written.
-
writeLongArray
boolean writeLongArray(String name, long[] val, int len)
Writeslong
array.- Parameters:
name
- Field name.val
-long
array.len
- Length.- Returns:
- Whether array was fully written.
-
writeFloatArray
boolean writeFloatArray(String name, float[] val)
Writesfloat
array.- Parameters:
name
- Field name.val
-float
array.- Returns:
- Whether array was fully written.
-
writeDoubleArray
boolean writeDoubleArray(String name, double[] val)
Writesdouble
array.- Parameters:
name
- Field name.val
-double
array.- Returns:
- Whether array was fully written.
-
writeCharArray
boolean writeCharArray(String name, char[] val)
Writeschar
array.- Parameters:
name
- Field name.val
-char
array.- Returns:
- Whether array was fully written.
-
writeBooleanArray
boolean writeBooleanArray(String name, boolean[] val)
Writesboolean
array.- Parameters:
name
- Field name.val
-boolean
array.- Returns:
- Whether array was fully written.
-
writeString
boolean writeString(String name, String val)
WritesString
.- Parameters:
name
- Field name.val
-String
.- Returns:
- Whether value was fully written.
-
writeBitSet
boolean writeBitSet(String name, BitSet val)
WritesBitSet
.- Parameters:
name
- Field name.val
-BitSet
.- Returns:
- Whether value was fully written.
-
writeUuid
boolean writeUuid(String name, UUID val)
WritesUUID
.- Parameters:
name
- Field name.val
-UUID
.- Returns:
- Whether value was fully written.
-
writeIgniteUuid
boolean writeIgniteUuid(String name, IgniteUuid val)
WritesIgniteUuid
.- Parameters:
name
- Field name.val
-IgniteUuid
.- Returns:
- Whether value was fully written.
-
writeAffinityTopologyVersion
boolean writeAffinityTopologyVersion(String name, org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion val)
WritesAffinityTopologyVersion
.- Parameters:
name
- Field name.val
-AffinityTopologyVersion
.- Returns:
- Whether value was fully written.
-
writeMessage
boolean writeMessage(String name, Message val)
Writes nested message.- Parameters:
name
- Field name.val
- Message.- Returns:
- Whether value was fully written.
-
writeObjectArray
<T> boolean writeObjectArray(String name, T[] arr, MessageCollectionItemType itemType)
Writes array of objects.- Type Parameters:
T
- Type of the objects that array contains.- Parameters:
name
- Field name.arr
- Array of objects.itemType
- Array component type.- Returns:
- Whether array was fully written.
-
writeCollection
<T> boolean writeCollection(String name, Collection<T> col, MessageCollectionItemType itemType)
Writes collection.- Type Parameters:
T
- Type of the objects that collection contains.- Parameters:
name
- Field name.col
- Collection.itemType
- Collection item type.- Returns:
- Whether value was fully written.
-
writeMap
<K,V> boolean writeMap(String name, Map<K,V> map, MessageCollectionItemType keyType, MessageCollectionItemType valType)
Writes map.- Type Parameters:
K
- Initial key types of the map to write.V
- Initial value types of the map to write.- Parameters:
name
- Field name.map
- Map.keyType
- Map key type.valType
- Map value type.- Returns:
- Whether value was fully written.
-
isHeaderWritten
boolean isHeaderWritten()
- Returns:
- Whether header of current message is already written.
-
onHeaderWritten
void onHeaderWritten()
Callback called when header of the message is written.
-
state
int state()
Gets current message state.- Returns:
- State.
-
incrementState
void incrementState()
Increments state.
-
beforeInnerMessageWrite
void beforeInnerMessageWrite()
Callback called before inner message is written.
-
afterInnerMessageWrite
void afterInnerMessageWrite(boolean finished)
Callback called after inner message is written.- Parameters:
finished
- Whether message was fully written.
-
reset
void reset()
Resets this writer.
-
-