public class UnionVector extends Object implements FieldVector
| Modifier and Type | Field and Description |
|---|---|
protected ArrowBuf |
typeBuffer |
| Constructor and Description |
|---|
UnionVector(String name,
BufferAllocator allocator,
CallBack callBack)
Deprecated.
|
UnionVector(String name,
BufferAllocator allocator,
FieldType fieldType,
CallBack callBack) |
| Modifier and Type | Method and Description |
|---|---|
<OUT,IN> OUT |
accept(VectorVisitor<OUT,IN> visitor,
IN value)
Accept a generic
VectorVisitor and return the result. |
FieldVector |
addVector(FieldVector v) |
void |
allocateNew()
Allocate new buffers.
|
boolean |
allocateNewSafe()
Allocates new buffers.
|
void |
clear()
Release any owned ArrowBuf and reset the ValueVector to the initial state.
|
void |
close()
Alternative to clear().
|
void |
copyFrom(int inIndex,
int outIndex,
ValueVector from)
Copy a cell value from a particular index in source vector to a particular
position in this vector.
|
void |
copyFromSafe(int inIndex,
int outIndex,
ValueVector from)
Same as
ValueVector.copyFrom(int, int, ValueVector) except that
it handles the case when the capacity of the vector needs to be expanded
before copy. |
void |
directAddVector(FieldVector v)
Directly put a vector to internalStruct without creating a new one with same type.
|
static UnionVector |
empty(String name,
BufferAllocator allocator) |
byte[] |
get(int index) |
void |
get(int index,
ComplexHolder holder) |
void |
get(int index,
UnionHolder holder) |
BufferAllocator |
getAllocator() |
BigIntVector |
getBigIntVector() |
BitVector |
getBitVector() |
ArrowBuf[] |
getBuffers(boolean clear)
Return the underlying buffers associated with this vector.
|
int |
getBufferSize()
Get the number of bytes used by this vector.
|
int |
getBufferSizeFor(int valueCount)
Returns the number of bytes that is used by this vector if it holds the given number
of values.
|
List<FieldVector> |
getChildrenFromFields()
The returned list is the same size as the list passed to initializeChildrenFromFields.
|
ArrowBuf |
getDataBuffer()
Gets the underlying buffer associated with data vector.
|
long |
getDataBufferAddress()
Gets the starting address of the underlying buffer associated with data vector.
|
DateDayVector |
getDateDayVector() |
DateMilliVector |
getDateMilliVector() |
Field |
getField()
Get information about how this field is materialized.
|
List<ArrowBuf> |
getFieldBuffers()
Get the buffers of the fields, (same size as getFieldVectors() since it is their content).
|
List<BufferBacked> |
getFieldInnerVectors()
Deprecated.
|
Float4Vector |
getFloat4Vector() |
Float8Vector |
getFloat8Vector() |
IntervalDayVector |
getIntervalDayVector() |
IntervalYearVector |
getIntervalYearVector() |
IntVector |
getIntVector() |
ListVector |
getList() |
Types.MinorType |
getMinorType() |
int |
getNullCount()
Returns number of null elements in the vector.
|
Object |
getObject(int index)
Get friendly type object from the vector.
|
ArrowBuf |
getOffsetBuffer()
Gets the underlying buffer associated with offset vector.
|
long |
getOffsetBufferAddress()
Gets the starting address of the underlying buffer associated with offset vector.
|
FieldReader |
getReader()
Get a reader for this vector.
|
SmallIntVector |
getSmallIntVector() |
StructVector |
getStruct() |
TimeMicroVector |
getTimeMicroVector() |
TimeMilliVector |
getTimeMilliVector() |
TimeNanoVector |
getTimeNanoVector() |
TimeSecVector |
getTimeSecVector() |
TimeStampMicroVector |
getTimeStampMicroVector() |
TimeStampMilliVector |
getTimeStampMilliVector() |
TimeStampNanoVector |
getTimeStampNanoVector() |
TimeStampSecVector |
getTimeStampSecVector() |
TinyIntVector |
getTinyIntVector() |
TransferPair |
getTransferPair(BufferAllocator allocator)
To transfer quota responsibility.
|
TransferPair |
getTransferPair(String ref,
BufferAllocator allocator) |
TransferPair |
getTransferPair(String ref,
BufferAllocator allocator,
CallBack callBack) |
int |
getTypeValue(int index) |
UInt1Vector |
getUInt1Vector() |
UInt2Vector |
getUInt2Vector() |
UInt4Vector |
getUInt4Vector() |
UInt8Vector |
getUInt8Vector() |
ArrowBuf |
getValidityBuffer()
Gets the underlying buffer associated with validity vector.
|
long |
getValidityBufferAddress()
Gets the starting address of the underlying buffer associated with validity vector.
|
int |
getValueCapacity()
Returns the maximum number of values that can be stored in this vector instance.
|
int |
getValueCount()
Gets the number of values.
|
VarBinaryVector |
getVarBinaryVector() |
VarCharVector |
getVarCharVector() |
FieldWriter |
getWriter() |
int |
hashCode(int index)
Returns hashCode of element in index.
|
void |
initializeChildrenFromFields(List<Field> children)
Initializes the child vectors
to be later loaded with loadBuffers.
|
boolean |
isNull(int index)
Check whether an element in the vector is null.
|
int |
isSet(int index) |
Iterator<ValueVector> |
iterator() |
void |
loadFieldBuffers(ArrowFieldNode fieldNode,
List<ArrowBuf> ownBuffers)
Loads data in the vectors.
|
TransferPair |
makeTransferPair(ValueVector target)
Makes a new transfer pair used to transfer underlying buffers.
|
void |
reAlloc()
Allocate new buffer with double capacity, and copy data into the new buffer.
|
void |
reset()
Reset the ValueVector to the initial state without releasing any owned ArrowBuf.
|
void |
setInitialCapacity(int numRecords)
Set the initial record capacity.
|
void |
setSafe(int index,
NullableBigIntHolder holder) |
void |
setSafe(int index,
NullableBitHolder holder) |
void |
setSafe(int index,
NullableDateDayHolder holder) |
void |
setSafe(int index,
NullableDateMilliHolder holder) |
void |
setSafe(int index,
NullableFloat4Holder holder) |
void |
setSafe(int index,
NullableFloat8Holder holder) |
void |
setSafe(int index,
NullableIntervalDayHolder holder) |
void |
setSafe(int index,
NullableIntervalYearHolder holder) |
void |
setSafe(int index,
NullableIntHolder holder) |
void |
setSafe(int index,
NullableSmallIntHolder holder) |
void |
setSafe(int index,
NullableTimeMicroHolder holder) |
void |
setSafe(int index,
NullableTimeMilliHolder holder) |
void |
setSafe(int index,
NullableTimeNanoHolder holder) |
void |
setSafe(int index,
NullableTimeSecHolder holder) |
void |
setSafe(int index,
NullableTimeStampMicroHolder holder) |
void |
setSafe(int index,
NullableTimeStampMilliHolder holder) |
void |
setSafe(int index,
NullableTimeStampNanoHolder holder) |
void |
setSafe(int index,
NullableTimeStampSecHolder holder) |
void |
setSafe(int index,
NullableTinyIntHolder holder) |
void |
setSafe(int index,
NullableUInt1Holder holder) |
void |
setSafe(int index,
NullableUInt2Holder holder) |
void |
setSafe(int index,
NullableUInt4Holder holder) |
void |
setSafe(int index,
NullableUInt8Holder holder) |
void |
setSafe(int index,
NullableVarBinaryHolder holder) |
void |
setSafe(int index,
NullableVarCharHolder holder) |
void |
setSafe(int index,
UnionHolder holder) |
void |
setType(int index,
Types.MinorType type) |
void |
setValueCount(int valueCount)
Set number of values in the vector.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitforEach, spliteratorprotected ArrowBuf typeBuffer
@Deprecated public UnionVector(String name, BufferAllocator allocator, CallBack callBack)
public UnionVector(String name, BufferAllocator allocator, FieldType fieldType, CallBack callBack)
public static UnionVector empty(String name, BufferAllocator allocator)
public BufferAllocator getAllocator()
getAllocator in interface ValueVectorpublic Types.MinorType getMinorType()
getMinorType in interface ValueVectorpublic void initializeChildrenFromFields(List<Field> children)
FieldVectorinitializeChildrenFromFields in interface FieldVectorchildren - the schemapublic List<FieldVector> getChildrenFromFields()
FieldVectorgetChildrenFromFields in interface FieldVectorpublic void loadFieldBuffers(ArrowFieldNode fieldNode, List<ArrowBuf> ownBuffers)
FieldVectorloadFieldBuffers in interface FieldVectorfieldNode - the fieldNodeownBuffers - the buffers for this Field (own buffers only, children not included)public List<ArrowBuf> getFieldBuffers()
FieldVectorgetFieldBuffers in interface FieldVector@Deprecated public List<BufferBacked> getFieldInnerVectors()
FieldVectorgetFieldInnerVectors in interface FieldVectorpublic long getValidityBufferAddress()
FieldVectorgetValidityBufferAddress in interface FieldVectorpublic long getDataBufferAddress()
FieldVectorgetDataBufferAddress in interface FieldVectorpublic long getOffsetBufferAddress()
FieldVectorgetOffsetBufferAddress in interface FieldVectorpublic ArrowBuf getValidityBuffer()
ValueVectorgetValidityBuffer in interface ValueVectorpublic ArrowBuf getDataBuffer()
ValueVectorgetDataBuffer in interface ValueVectorpublic ArrowBuf getOffsetBuffer()
ValueVectorgetOffsetBuffer in interface ValueVectorpublic StructVector getStruct()
public TinyIntVector getTinyIntVector()
public UInt1Vector getUInt1Vector()
public UInt2Vector getUInt2Vector()
public SmallIntVector getSmallIntVector()
public IntVector getIntVector()
public UInt4Vector getUInt4Vector()
public Float4Vector getFloat4Vector()
public DateDayVector getDateDayVector()
public IntervalYearVector getIntervalYearVector()
public TimeSecVector getTimeSecVector()
public TimeMilliVector getTimeMilliVector()
public BigIntVector getBigIntVector()
public UInt8Vector getUInt8Vector()
public Float8Vector getFloat8Vector()
public DateMilliVector getDateMilliVector()
public TimeStampSecVector getTimeStampSecVector()
public TimeStampMilliVector getTimeStampMilliVector()
public TimeStampMicroVector getTimeStampMicroVector()
public TimeStampNanoVector getTimeStampNanoVector()
public TimeMicroVector getTimeMicroVector()
public TimeNanoVector getTimeNanoVector()
public IntervalDayVector getIntervalDayVector()
public VarBinaryVector getVarBinaryVector()
public VarCharVector getVarCharVector()
public BitVector getBitVector()
public ListVector getList()
public int getTypeValue(int index)
public void allocateNew()
throws OutOfMemoryException
ValueVectorallocateNew in interface ValueVectorOutOfMemoryException - Thrown if no memory can be allocated.public boolean allocateNewSafe()
ValueVectorallocateNewSafe in interface ValueVectorpublic void reAlloc()
ValueVectorreAlloc in interface ValueVectorpublic void setInitialCapacity(int numRecords)
ValueVectorsetInitialCapacity in interface ValueVectornumRecords - the initial record capacity.public int getValueCapacity()
ValueVectorgetValueCapacity in interface ValueVectorpublic void close()
ValueVectorclose in interface Closeableclose in interface AutoCloseableclose in interface ValueVectorpublic void clear()
ValueVectorclear in interface ValueVectorpublic void reset()
ValueVectorreset in interface ValueVectorpublic Field getField()
ValueVectorgetField in interface ValueVectorpublic TransferPair getTransferPair(BufferAllocator allocator)
ValueVectorgetTransferPair in interface ValueVectorallocator - the target allocatortransfer pair, creating a new target vector of
the same type.public TransferPair getTransferPair(String ref, BufferAllocator allocator)
getTransferPair in interface ValueVectorpublic TransferPair getTransferPair(String ref, BufferAllocator allocator, CallBack callBack)
getTransferPair in interface ValueVectorpublic TransferPair makeTransferPair(ValueVector target)
ValueVectormakeTransferPair in interface ValueVectortarget - the target for the transfertransfer pair that is used to transfer underlying
buffers into the target vector.public void copyFrom(int inIndex,
int outIndex,
ValueVector from)
ValueVectorcopyFrom in interface ValueVectorinIndex - position to copy from in source vectoroutIndex - position to copy to in this vectorfrom - source vectorpublic void copyFromSafe(int inIndex,
int outIndex,
ValueVector from)
ValueVectorValueVector.copyFrom(int, int, ValueVector) except that
it handles the case when the capacity of the vector needs to be expanded
before copy.copyFromSafe in interface ValueVectorinIndex - position to copy from in source vectoroutIndex - position to copy to in this vectorfrom - source vectorpublic FieldVector addVector(FieldVector v)
public void directAddVector(FieldVector v)
public FieldReader getReader()
ValueVectorgetReader in interface ValueVectorfield reader that supports reading values
from this vector.public FieldWriter getWriter()
public int getBufferSize()
ValueVectorgetBufferSize in interface ValueVectorpublic int getBufferSizeFor(int valueCount)
ValueVectorgetBufferSizeFor in interface ValueVectorvalueCount - the number of values to assume this vector containspublic ArrowBuf[] getBuffers(boolean clear)
ValueVectorgetBuffers in interface ValueVectorclear - Whether to clear vector before returning; the buffers will still be refcounted;
but the returned array will be the only reference to thembuffers that is used by this vector instance.public Iterator<ValueVector> iterator()
iterator in interface Iterable<ValueVector>public Object getObject(int index)
ValueVectorgetObject in interface ValueVectorindex - index of object to getpublic byte[] get(int index)
public void get(int index,
ComplexHolder holder)
public void get(int index,
UnionHolder holder)
public int getValueCount()
ValueVectorgetValueCount in interface ValueVectorpublic boolean isNull(int index)
ValueVectorisNull in interface ValueVectorindex - index to check for nullpublic int getNullCount()
ValueVectorgetNullCount in interface ValueVectorpublic int isSet(int index)
public void setValueCount(int valueCount)
ValueVectorsetValueCount in interface ValueVectorpublic void setSafe(int index,
UnionHolder holder)
public void setSafe(int index,
NullableTinyIntHolder holder)
public void setSafe(int index,
NullableUInt1Holder holder)
public void setSafe(int index,
NullableUInt2Holder holder)
public void setSafe(int index,
NullableSmallIntHolder holder)
public void setSafe(int index,
NullableIntHolder holder)
public void setSafe(int index,
NullableUInt4Holder holder)
public void setSafe(int index,
NullableFloat4Holder holder)
public void setSafe(int index,
NullableDateDayHolder holder)
public void setSafe(int index,
NullableIntervalYearHolder holder)
public void setSafe(int index,
NullableTimeSecHolder holder)
public void setSafe(int index,
NullableTimeMilliHolder holder)
public void setSafe(int index,
NullableBigIntHolder holder)
public void setSafe(int index,
NullableUInt8Holder holder)
public void setSafe(int index,
NullableFloat8Holder holder)
public void setSafe(int index,
NullableDateMilliHolder holder)
public void setSafe(int index,
NullableTimeStampSecHolder holder)
public void setSafe(int index,
NullableTimeStampMilliHolder holder)
public void setSafe(int index,
NullableTimeStampMicroHolder holder)
public void setSafe(int index,
NullableTimeStampNanoHolder holder)
public void setSafe(int index,
NullableTimeMicroHolder holder)
public void setSafe(int index,
NullableTimeNanoHolder holder)
public void setSafe(int index,
NullableIntervalDayHolder holder)
public void setSafe(int index,
NullableVarBinaryHolder holder)
public void setSafe(int index,
NullableVarCharHolder holder)
public void setSafe(int index,
NullableBitHolder holder)
public void setType(int index,
Types.MinorType type)
public int hashCode(int index)
ValueVectorhashCode in interface ValueVectorpublic <OUT,IN> OUT accept(VectorVisitor<OUT,IN> visitor, IN value)
ValueVectorVectorVisitor and return the result.accept in interface ValueVectorOUT - the output result type.IN - the input data together with visitor.Copyright © 2019 The Apache Software Foundation. All rights reserved.