Package org.apache.druid.segment.data
Class VSizeColumnarInts
- java.lang.Object
-
- org.apache.druid.segment.data.VSizeColumnarInts
-
- All Implemented Interfaces:
com.google.common.base.Supplier<ColumnarInts>
,Closeable
,AutoCloseable
,Comparable<VSizeColumnarInts>
,Supplier<ColumnarInts>
,HotLoopCallee
,ColumnarInts
,IndexedInts
,WritableSupplier<ColumnarInts>
,Serializer
public class VSizeColumnarInts extends Object implements ColumnarInts, Comparable<VSizeColumnarInts>, WritableSupplier<ColumnarInts>
-
-
Field Summary
Fields Modifier and Type Field Description static byte
VERSION
-
Constructor Summary
Constructors Constructor Description VSizeColumnarInts(ByteBuffer buffer, int numBytes)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
int
compareTo(VSizeColumnarInts o)
static VSizeColumnarInts
fromArray(int[] array)
static VSizeColumnarInts
fromArray(int[] array, int maxValue)
static VSizeColumnarInts
fromIndexedInts(IndexedInts ints, int maxValue)
ColumnarInts
get()
int
get(int index)
int
getNumBytes()
static byte
getNumBytesForMax(int maxValue)
int
getNumBytesNoPadding()
long
getSerializedSize()
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.void
inspectRuntimeShape(RuntimeShapeInspector inspector)
Implementations of this method should callinspector.visit()
with all fields of this class, which meet two conditions: 1.static VSizeColumnarInts
readFromByteBuffer(ByteBuffer buffer)
int
size()
void
writeBytesNoPaddingTo(HeapByteBufferWriteOutBytes out)
void
writeTo(WritableByteChannel channel, FileSmoosher smoosher)
Writes serialized form of this object to the given channel.-
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.data.IndexedInts
debugToString, forEach, get, get
-
-
-
-
Field Detail
-
VERSION
public static final byte VERSION
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
VSizeColumnarInts
public VSizeColumnarInts(ByteBuffer buffer, int numBytes)
-
-
Method Detail
-
fromArray
public static VSizeColumnarInts fromArray(int[] array)
-
fromArray
public static VSizeColumnarInts fromArray(int[] array, int maxValue)
-
fromIndexedInts
public static VSizeColumnarInts fromIndexedInts(IndexedInts ints, int maxValue)
-
getNumBytesForMax
public static byte getNumBytesForMax(int maxValue)
-
size
public int size()
- Specified by:
size
in interfaceIndexedInts
-
get
public int get(int index)
- Specified by:
get
in interfaceIndexedInts
-
getNumBytesNoPadding
public int getNumBytesNoPadding()
-
writeBytesNoPaddingTo
public void writeBytesNoPaddingTo(HeapByteBufferWriteOutBytes out)
-
compareTo
public int compareTo(VSizeColumnarInts o)
- Specified by:
compareTo
in interfaceComparable<VSizeColumnarInts>
-
getNumBytes
public int getNumBytes()
-
getSerializedSize
public long getSerializedSize()
Description copied from interface:Serializer
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.- Specified by:
getSerializedSize
in interfaceSerializer
-
writeTo
public void writeTo(WritableByteChannel channel, FileSmoosher smoosher) throws IOException
Description copied from interface:Serializer
Writes serialized form of this object to the given channel. If parallel data streams are needed, they could be created with the provided smoosher.- Specified by:
writeTo
in interfaceSerializer
- Throws:
IOException
-
get
public ColumnarInts get()
- Specified by:
get
in interfacecom.google.common.base.Supplier<ColumnarInts>
- Specified by:
get
in interfaceSupplier<ColumnarInts>
-
readFromByteBuffer
public static VSizeColumnarInts readFromByteBuffer(ByteBuffer buffer)
-
close
public void close()
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
-
inspectRuntimeShape
public void inspectRuntimeShape(RuntimeShapeInspector inspector)
Description copied from interface:HotLoopCallee
Implementations of this method should callinspector.visit()
with all fields of this class, which meet two conditions: 1. They are used in methods of this class, annotated withCalledFromHotLoop
2. They are either: a. Nullable objects b. Instances of HotLoopCallee c. Objects, which don't always have a specific class in runtime. For example, a field of typeSet
could beHashSet
orTreeSet
in runtime, depending on how this instance (the instance on which inspectRuntimeShape() is called) is configured. d. ByteBuffer or similar objects, where byte order matters e. boolean flags, affecting branch taking f. Arrays of objects, meeting any of conditions a-e.- Specified by:
inspectRuntimeShape
in interfaceHotLoopCallee
-
-