Class SerializablePairLongStringSimpleStagedSerde
java.lang.Object
org.apache.druid.query.aggregation.AbstractSerializablePairLongObjectSimpleStagedSerde<SerializablePairLongString>
org.apache.druid.query.aggregation.SerializablePairLongStringSimpleStagedSerde
- All Implemented Interfaces:
StagedSerde<SerializablePairLongString>
public class SerializablePairLongStringSimpleStagedSerde
extends AbstractSerializablePairLongObjectSimpleStagedSerde<SerializablePairLongString>
serializes a Long/String pair as
Long:Integer:bytes
or Long:StringSize:StringData The StringSize can be following: -1 : Denotes an empty string 0 : Denotes a null string >0 : Denotes a non-empty string Mapping of null and empty string is done weirdly to preserve backward compatibility when nulls were returned all the time, and there was no distinction between empty and null string
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondeserialize(ByteBuffer byteBuffer) Useful method when some computation is necessary to prepare for serialization without actually writing out all the bytes in order to determine the serialized size.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.druid.segment.serde.cell.StagedSerde
deserialize, serialize
-
Constructor Details
-
SerializablePairLongStringSimpleStagedSerde
public SerializablePairLongStringSimpleStagedSerde()
-
-
Method Details
-
serializeDelayed
Description copied from interface:StagedSerdeUseful method when some computation is necessary to prepare for serialization without actually writing out all the bytes in order to determine the serialized size. It allows encapsulation of the size computation and the final logical to actually store into a ByteBuffer. It also allows for callers to pack multiple serialized objects into a single ByteBuffer without extra copies of a byte[]/ByteBuffer by using theStorableBufferinstance returned- Specified by:
serializeDelayedin interfaceStagedSerde<SerializablePairLongString>- Overrides:
serializeDelayedin classAbstractSerializablePairLongObjectSimpleStagedSerde<SerializablePairLongString>- Parameters:
value- - object to serialize- Returns:
- an object that reports its serialized size and how to serialize the object to a ByteBuffer
-
deserialize
-