Class DirectMessageWriter
- java.lang.Object
-
- org.apache.ignite.internal.direct.DirectMessageWriter
-
- All Implemented Interfaces:
MessageWriter
public class DirectMessageWriter extends Object implements MessageWriter
Message writer implementation.
-
-
Constructor Summary
Constructors Constructor Description DirectMessageWriter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidafterInnerMessageWrite(boolean finished)Callback called after inner message is written.voidbeforeInnerMessageWrite()Callback called before inner message is written.voidincrementState()Increments state.booleanisHeaderWritten()voidonHeaderWritten()Callback called when header of the message is written.voidreset()Resets this writer.voidsetBuffer(ByteBuffer buf)Sets but buffer to write to.voidsetCurrentWriteClass(Class<? extends Message> msgCls)Sets type of message currently written.intstate()Gets current message state.StringtoString()booleanwriteAffinityTopologyVersion(String name, AffinityTopologyVersion val)WritesAffinityTopologyVersion.booleanwriteBitSet(String name, BitSet val)WritesBitSet.booleanwriteBoolean(String name, boolean val)Writesbooleanvalue.booleanwriteBooleanArray(String name, @org.jetbrains.annotations.Nullable boolean[] val)Writesbooleanarray.booleanwriteByte(String name, byte val)Writesbytevalue.booleanwriteByteArray(String name, @org.jetbrains.annotations.Nullable byte[] val)Writesbytearray.booleanwriteByteArray(String name, byte[] val, long off, int len)Writesbytearray.booleanwriteChar(String name, char val)Writescharvalue.booleanwriteCharArray(String name, @org.jetbrains.annotations.Nullable char[] val)Writeschararray.<T> booleanwriteCollection(String name, Collection<T> col, MessageCollectionItemType itemType)Writes collection.booleanwriteDouble(String name, double val)Writesdoublevalue.booleanwriteDoubleArray(String name, @org.jetbrains.annotations.Nullable double[] val)Writesdoublearray.booleanwriteFloat(String name, float val)Writesfloatvalue.booleanwriteFloatArray(String name, @org.jetbrains.annotations.Nullable float[] val)Writesfloatarray.booleanwriteHeader(short type, byte fieldCnt)Writes message header.booleanwriteIgniteUuid(String name, IgniteUuid val)WritesIgniteUuid.booleanwriteInt(String name, int val)Writesintvalue.booleanwriteIntArray(String name, @org.jetbrains.annotations.Nullable int[] val)Writesintarray.booleanwriteLong(String name, long val)Writeslongvalue.booleanwriteLongArray(String name, @org.jetbrains.annotations.Nullable long[] val)Writeslongarray.booleanwriteLongArray(String name, long[] val, int len)Writeslongarray.<K,V>
booleanwriteMap(String name, Map<K,V> map, MessageCollectionItemType keyType, MessageCollectionItemType valType)Writes map.booleanwriteMessage(String name, @Nullable Message msg)Writes nested message.<T> booleanwriteObjectArray(String name, T[] arr, MessageCollectionItemType itemType)Writes array of objects.booleanwriteShort(String name, short val)Writesshortvalue.booleanwriteShortArray(String name, @org.jetbrains.annotations.Nullable short[] val)Writesshortarray.booleanwriteString(String name, String val)WritesString.booleanwriteUuid(String name, UUID val)WritesUUID.
-
-
-
Method Detail
-
setBuffer
public void setBuffer(ByteBuffer buf)
Sets but buffer to write to.- Specified by:
setBufferin interfaceMessageWriter- Parameters:
buf- Byte buffer.
-
setCurrentWriteClass
public void setCurrentWriteClass(Class<? extends Message> msgCls)
Sets type of message currently written.- Specified by:
setCurrentWriteClassin interfaceMessageWriter- Parameters:
msgCls- Message type.
-
writeHeader
public boolean writeHeader(short type, byte fieldCnt)Writes message header.- Specified by:
writeHeaderin interfaceMessageWriter- Parameters:
type- Message type.fieldCnt- Fields count.- Returns:
trueif successfully. Otherwise returnsfalse.
-
writeByte
public boolean writeByte(String name, byte val)
Writesbytevalue.- Specified by:
writeBytein interfaceMessageWriter- Parameters:
name- Field name.val-bytevalue.- Returns:
- Whether value was fully written.
-
writeShort
public boolean writeShort(String name, short val)
Writesshortvalue.- Specified by:
writeShortin interfaceMessageWriter- Parameters:
name- Field name.val-shortvalue.- Returns:
- Whether value was fully written.
-
writeInt
public boolean writeInt(String name, int val)
Writesintvalue.- Specified by:
writeIntin interfaceMessageWriter- Parameters:
name- Field name.val-intvalue.- Returns:
- Whether value was fully written.
-
writeLong
public boolean writeLong(String name, long val)
Writeslongvalue.- Specified by:
writeLongin interfaceMessageWriter- Parameters:
name- Field name.val-longvalue.- Returns:
- Whether value was fully written.
-
writeFloat
public boolean writeFloat(String name, float val)
Writesfloatvalue.- Specified by:
writeFloatin interfaceMessageWriter- Parameters:
name- Field name.val-floatvalue.- Returns:
- Whether value was fully written.
-
writeDouble
public boolean writeDouble(String name, double val)
Writesdoublevalue.- Specified by:
writeDoublein interfaceMessageWriter- Parameters:
name- Field name.val-doublevalue.- Returns:
- Whether value was fully written.
-
writeChar
public boolean writeChar(String name, char val)
Writescharvalue.- Specified by:
writeCharin interfaceMessageWriter- Parameters:
name- Field name.val-charvalue.- Returns:
- Whether value was fully written.
-
writeBoolean
public boolean writeBoolean(String name, boolean val)
Writesbooleanvalue.- Specified by:
writeBooleanin interfaceMessageWriter- Parameters:
name- Field name.val-booleanvalue.- Returns:
- Whether value was fully written.
-
writeByteArray
public boolean writeByteArray(String name, @Nullable @org.jetbrains.annotations.Nullable byte[] val)
Writesbytearray.- Specified by:
writeByteArrayin interfaceMessageWriter- Parameters:
name- Field name.val-bytearray.- Returns:
- Whether array was fully written.
-
writeByteArray
public boolean writeByteArray(String name, byte[] val, long off, int len)
Writesbytearray.- Specified by:
writeByteArrayin interfaceMessageWriter- Parameters:
name- Field name.val-bytearray.off- Offset.len- Length.- Returns:
- Whether array was fully written.
-
writeShortArray
public boolean writeShortArray(String name, @Nullable @org.jetbrains.annotations.Nullable short[] val)
Writesshortarray.- Specified by:
writeShortArrayin interfaceMessageWriter- Parameters:
name- Field name.val-shortarray.- Returns:
- Whether array was fully written.
-
writeIntArray
public boolean writeIntArray(String name, @Nullable @org.jetbrains.annotations.Nullable int[] val)
Writesintarray.- Specified by:
writeIntArrayin interfaceMessageWriter- Parameters:
name- Field name.val-intarray.- Returns:
- Whether array was fully written.
-
writeLongArray
public boolean writeLongArray(String name, @Nullable @org.jetbrains.annotations.Nullable long[] val)
Writeslongarray.- Specified by:
writeLongArrayin interfaceMessageWriter- Parameters:
name- Field name.val-longarray.- Returns:
- Whether array was fully written.
-
writeLongArray
public boolean writeLongArray(String name, long[] val, int len)
Writeslongarray.- Specified by:
writeLongArrayin interfaceMessageWriter- Parameters:
name- Field name.val-longarray.len- Length.- Returns:
- Whether array was fully written.
-
writeFloatArray
public boolean writeFloatArray(String name, @Nullable @org.jetbrains.annotations.Nullable float[] val)
Writesfloatarray.- Specified by:
writeFloatArrayin interfaceMessageWriter- Parameters:
name- Field name.val-floatarray.- Returns:
- Whether array was fully written.
-
writeDoubleArray
public boolean writeDoubleArray(String name, @Nullable @org.jetbrains.annotations.Nullable double[] val)
Writesdoublearray.- Specified by:
writeDoubleArrayin interfaceMessageWriter- Parameters:
name- Field name.val-doublearray.- Returns:
- Whether array was fully written.
-
writeCharArray
public boolean writeCharArray(String name, @Nullable @org.jetbrains.annotations.Nullable char[] val)
Writeschararray.- Specified by:
writeCharArrayin interfaceMessageWriter- Parameters:
name- Field name.val-chararray.- Returns:
- Whether array was fully written.
-
writeBooleanArray
public boolean writeBooleanArray(String name, @Nullable @org.jetbrains.annotations.Nullable boolean[] val)
Writesbooleanarray.- Specified by:
writeBooleanArrayin interfaceMessageWriter- Parameters:
name- Field name.val-booleanarray.- Returns:
- Whether array was fully written.
-
writeString
public boolean writeString(String name, String val)
WritesString.- Specified by:
writeStringin interfaceMessageWriter- Parameters:
name- Field name.val-String.- Returns:
- Whether value was fully written.
-
writeBitSet
public boolean writeBitSet(String name, BitSet val)
WritesBitSet.- Specified by:
writeBitSetin interfaceMessageWriter- Parameters:
name- Field name.val-BitSet.- Returns:
- Whether value was fully written.
-
writeUuid
public boolean writeUuid(String name, UUID val)
WritesUUID.- Specified by:
writeUuidin interfaceMessageWriter- Parameters:
name- Field name.val-UUID.- Returns:
- Whether value was fully written.
-
writeIgniteUuid
public boolean writeIgniteUuid(String name, IgniteUuid val)
WritesIgniteUuid.- Specified by:
writeIgniteUuidin interfaceMessageWriter- Parameters:
name- Field name.val-IgniteUuid.- Returns:
- Whether value was fully written.
-
writeAffinityTopologyVersion
public boolean writeAffinityTopologyVersion(String name, AffinityTopologyVersion val)
WritesAffinityTopologyVersion.- Specified by:
writeAffinityTopologyVersionin interfaceMessageWriter- Parameters:
name- Field name.val-AffinityTopologyVersion.- Returns:
- Whether value was fully written.
-
writeMessage
public boolean writeMessage(String name, @Nullable @Nullable Message msg)
Writes nested message.- Specified by:
writeMessagein interfaceMessageWriter- Parameters:
name- Field name.msg- Message.- Returns:
- Whether value was fully written.
-
writeObjectArray
public <T> boolean writeObjectArray(String name, T[] arr, MessageCollectionItemType itemType)
Writes array of objects.- Specified by:
writeObjectArrayin interfaceMessageWriter- 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
public <T> boolean writeCollection(String name, Collection<T> col, MessageCollectionItemType itemType)
Writes collection.- Specified by:
writeCollectionin interfaceMessageWriter- 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
public <K,V> boolean writeMap(String name, Map<K,V> map, MessageCollectionItemType keyType, MessageCollectionItemType valType)
Writes map.- Specified by:
writeMapin interfaceMessageWriter- 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
public boolean isHeaderWritten()
- Specified by:
isHeaderWrittenin interfaceMessageWriter- Returns:
- Whether header of current message is already written.
-
onHeaderWritten
public void onHeaderWritten()
Callback called when header of the message is written.- Specified by:
onHeaderWrittenin interfaceMessageWriter
-
state
public int state()
Gets current message state.- Specified by:
statein interfaceMessageWriter- Returns:
- State.
-
incrementState
public void incrementState()
Increments state.- Specified by:
incrementStatein interfaceMessageWriter
-
beforeInnerMessageWrite
public void beforeInnerMessageWrite()
Callback called before inner message is written.- Specified by:
beforeInnerMessageWritein interfaceMessageWriter
-
afterInnerMessageWrite
public void afterInnerMessageWrite(boolean finished)
Callback called after inner message is written.- Specified by:
afterInnerMessageWritein interfaceMessageWriter- Parameters:
finished- Whether message was fully written.
-
reset
public void reset()
Resets this writer.- Specified by:
resetin interfaceMessageWriter
-
-