Class AbstractSerializablePairLongObjectColumnSerializer<T extends SerializablePair<Long,?>>
- java.lang.Object
-
- org.apache.druid.query.aggregation.AbstractSerializablePairLongObjectColumnSerializer<T>
-
- All Implemented Interfaces:
GenericColumnSerializer<T>,Serializer
- Direct Known Subclasses:
SerializablePairLongDoubleColumnSerializer,SerializablePairLongFloatColumnSerializer,SerializablePairLongLongColumnSerializer,SerializablePairLongStringColumnSerializer
public abstract class AbstractSerializablePairLongObjectColumnSerializer<T extends SerializablePair<Long,?>> extends Object implements GenericColumnSerializer<T>
valid call sequenceopen()+serialize()*(getSerializedSize()|writeTo())*
getSerializedSize() / writeTo() effectively function as a close call, but each may be called multiple times and has no effect on one another.
-
-
Field Summary
Fields Modifier and Type Field Description StagedSerde<T>stagedSerde
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description longgetSerializedSize()Returns the number of bytes, that this Serializer will write to the output _channel_ (not smoosher) on aSerializer.writeTo(java.nio.channels.WritableByteChannel, org.apache.druid.java.util.common.io.smoosh.FileSmoosher)call.voidserialize(ColumnValueSelector<? extends T> selector)voidwriteTo(WritableByteChannel channel, FileSmoosher smoosher)Writes the serialized form of this object.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.druid.segment.GenericColumnSerializer
open
-
-
-
-
Field Detail
-
stagedSerde
public final StagedSerde<T extends SerializablePair<Long,?>> stagedSerde
-
-
Method Detail
-
serialize
public void serialize(ColumnValueSelector<? extends T> selector) throws IOException
- Specified by:
serializein interfaceGenericColumnSerializer<T extends SerializablePair<Long,?>>- Throws:
IOException
-
getSerializedSize
public long getSerializedSize() throws IOExceptionDescription copied from interface:SerializerReturns the number of bytes, that this Serializer will write to the output _channel_ (not smoosher) on aSerializer.writeTo(java.nio.channels.WritableByteChannel, org.apache.druid.java.util.common.io.smoosh.FileSmoosher)call.- Specified by:
getSerializedSizein interfaceSerializer- Throws:
IOException
-
writeTo
public void writeTo(WritableByteChannel channel, FileSmoosher smoosher) throws IOException
Description copied from interface:SerializerWrites the serialized form of this object. The entire object may be written to the provided channel, or the object may be split over the provided channel and files added to the {@link FileSmoosher], where additional channels can be created viaFileSmoosher.addWithSmooshedWriter(String, long). The latter approach is useful when the serialized form of the object is too large for a single smoosh container. At the time this javadoc was written, the max smoosh container size is limit to the maxByteBuffersize.- Specified by:
writeToin interfaceSerializer- Throws:
IOException
-
-