Package org.apache.druid.frame.wire
Class FrameWireTransferable
java.lang.Object
org.apache.druid.frame.wire.FrameWireTransferable
- All Implemented Interfaces:
WireTransferable
A
WireTransferable implementation for frames, used to serialize
RowBasedFrameRowsAndColumns and ColumnBasedFrameRowsAndColumns.
Signature-included format is:
1) 0x05 (length of type code)
2) "frame" (type code)
3) flags byte
4) signature length, if signature is present (little-endian int)
5) signature bytes, encoded with object mapper, if signature is present
6) frame bytes-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classDeserializer for frames.Nested classes/interfaces inherited from interface org.apache.druid.query.rowsandcols.semantic.WireTransferable
WireTransferable.ByteArrayOffsetAndLen, WireTransferable.ConcreteDeserializer -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionserializedBytes(com.fasterxml.jackson.databind.ObjectMapper mapper) Serializes the object into bytes.
-
Field Details
-
TYPE
- See Also:
-
TYPE_BYTES
public static final byte[] TYPE_BYTES
-
-
Constructor Details
-
FrameWireTransferable
-
-
Method Details
-
serializedBytes
public WireTransferable.ByteArrayOffsetAndLen serializedBytes(com.fasterxml.jackson.databind.ObjectMapper mapper) throws IOException Description copied from interface:WireTransferableSerializes the object into bytes. This method is passed a jackson ObjectMapper that can be used to serialize objects if needed. In general, it's better to generate binary serializations and not rely on the mapper but it's there as an expediency layer to support some compatibility stuff. Hopefully it goes away at some point.- Specified by:
serializedBytesin interfaceWireTransferable- Parameters:
mapper- ObjectMapper- Returns:
- bytes that represent the wire-format of this object
- Throws:
IOException- a problem with IO
-