java.lang.Object
org.apache.arrow.vector.BaseValueVector
org.apache.arrow.vector.BaseFixedWidthVector
org.apache.arrow.vector.IntervalDayVector
- All Implemented Interfaces:
Closeable,AutoCloseable,Iterable<ValueVector>,ElementAddressableVector,FieldVector,FixedWidthVector,ValueIterableVector<Duration>,ValueVector,VectorDefinitionSetter
public final class IntervalDayVector
extends BaseFixedWidthVector
implements ValueIterableVector<Duration>
IntervalDayVector implements a fixed width vector (8 bytes) of interval (days and milliseconds)
values which could be null. A validity buffer (bit vector) is maintained to track which elements
in the vector are null.
-
Field Summary
FieldsFields inherited from class org.apache.arrow.vector.BaseFixedWidthVector
actualValueCapacity, field, lastValueCapacity, valueBufferFields inherited from class org.apache.arrow.vector.BaseValueVector
allocator, fieldReader, INITIAL_VALUE_ALLOCATION, MAX_ALLOCATION_SIZE, MAX_ALLOCATION_SIZE_PROPERTY, validityBuffer, valueCount -
Constructor Summary
ConstructorsConstructorDescriptionIntervalDayVector(String name, BufferAllocator allocator) Instantiate a IntervalDayVector.IntervalDayVector(String name, FieldType fieldType, BufferAllocator allocator) Instantiate a IntervalDayVector.IntervalDayVector(Field field, BufferAllocator allocator) Instantiate a IntervalDayVector. -
Method Summary
Modifier and TypeMethodDescriptionget(int index) Get the element at the given index from the vector.voidget(int index, NullableIntervalDayHolder holder) Get the element at the given index from the vector and sets the state in holder.getAsStringBuilder(int index) Get the Interval value at a given index as aStringBuilderobject.static intGiven a data buffer, get the number of days stored at a particular position in the vector.static intgetMilliseconds(ArrowBuf buffer, int index) Given a data buffer, get the get the number of milliseconds stored at a particular position in the vector.Get minor type for this vector.getObject(int index) Same asget(int).getObjectNotNull(int index) Same asgetObject(int)but does not check for null.protected FieldReaderEach vector has a different reader that implements the FieldReader interface.getTransferPair(String ref, BufferAllocator allocator) Construct a TransferPair comprising this and a target vector of the same type.getTransferPair(Field field, BufferAllocator allocator) Construct a TransferPair comprising this and a target vector of the same type.Construct a TransferPair with a desired target vector of the same type.voidset(int index, int days, int milliseconds) Set the element at the given index to the given value.voidset(int index, int isSet, int days, int milliseconds) Store the given value at a particular position in the vector. isSet indicates whether the value is NULL or not.voidSet the element at the given index to the given value.voidset(int index, IntervalDayHolder holder) Set the element at the given index to the value set in data holder.voidset(int index, NullableIntervalDayHolder holder) Set the element at the given index to the value set in data holder.voidsetSafe(int index, int days, int milliseconds) Same asset(int, int, int)except that it handles the case when index is greater than or equal to existing value capacityBaseFixedWidthVector.getValueCapacity().voidsetSafe(int index, int isSet, int days, int milliseconds) Same asset(int, int, int, int)except that it handles the case when index is greater than or equal to current value capacity of the vector.voidSame asset(int, ArrowBuf)except that it handles the case when index is greater than or equal to existing value capacityBaseFixedWidthVector.getValueCapacity().voidsetSafe(int index, IntervalDayHolder holder) Same asset(int, IntervalDayHolder)except that it handles the case when index is greater than or equal to existing value capacityBaseFixedWidthVector.getValueCapacity().voidsetSafe(int index, NullableIntervalDayHolder holder) Same asset(int, NullableIntervalDayHolder)except that it handles the case when index is greater than or equal to existing value capacityBaseFixedWidthVector.getValueCapacity().Methods inherited from class org.apache.arrow.vector.BaseFixedWidthVector
accept, allocateNew, allocateNew, allocateNewSafe, allocateValidityBuffer, clear, close, copyFrom, copyFromSafe, decrementAllocationMonitor, getBuffers, getBufferSize, getBufferSizeFor, getChildrenFromFields, getDataBuffer, getDataBufferAddress, getDataPointer, getDataPointer, getField, getFieldBuffers, getFieldInnerVectors, getName, getNullCount, getOffsetBuffer, getOffsetBufferAddress, getTransferPair, getTransferPair, getTransferPair, getTypeWidth, getValidityBuffer, getValidityBufferAddress, getValidityBufferValueCapacity, getValueBufferValueCapacity, getValueCapacity, getValueCount, handleSafe, hashCode, hashCode, incrementAllocationMonitor, initializeChildrenFromFields, isNull, isSafe, isSet, loadFieldBuffers, reAlloc, refreshValueCapacity, reset, set, set, setIndexDefined, setInitialCapacity, setNull, setSafe, setSafe, setValueCount, sliceAndTransferValidityBuffer, splitAndTransferTo, transferTo, validateScalars, zeroVectorMethods inherited from class org.apache.arrow.vector.BaseValueVector
checkBufRefs, copyValidityBuffer, getAllocator, getReader, getValidityBufferSizeFromCount, iterator, releaseBuffer, splitAndTransferValidityBuffer, toString, transferBufferMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.arrow.vector.FieldVector
exportBuffer, exportCDataBuffers, getExportedCDataBufferCountMethods inherited from interface java.lang.Iterable
forEach, iterator, spliteratorMethods inherited from interface org.apache.arrow.vector.ValueIterableVector
getValueIterable, getValueIteratorMethods inherited from interface org.apache.arrow.vector.ValueVector
accept, allocateNew, allocateNewSafe, clear, close, copyFrom, copyFromSafe, getAllocator, getBuffers, getBufferSize, getBufferSizeFor, getDataBuffer, getField, getName, getNullCount, getOffsetBuffer, getReader, getTransferPair, getTransferPair, getTransferPair, getValidityBuffer, getValueCapacity, getValueCount, hashCode, hashCode, isNull, reAlloc, reset, setInitialCapacity, setValueCount, validate, validateFull
-
Field Details
-
TYPE_WIDTH
public static final byte TYPE_WIDTH- See Also:
-
-
Constructor Details
-
IntervalDayVector
Instantiate a IntervalDayVector. This doesn't allocate any memory for the data in vector.- Parameters:
name- name of the vectorallocator- allocator for memory management.
-
IntervalDayVector
Instantiate a IntervalDayVector. This doesn't allocate any memory for the data in vector.- Parameters:
name- name of the vectorfieldType- type of Field materialized by this vectorallocator- allocator for memory management.
-
IntervalDayVector
Instantiate a IntervalDayVector. This doesn't allocate any memory for the data in vector.- Parameters:
field- field materialized by this vectorallocator- allocator for memory management.
-
-
Method Details
-
getReaderImpl
Description copied from class:BaseValueVectorEach vector has a different reader that implements the FieldReader interface. Overridden methods must make sure to return the correct concrete reader implementation.- Specified by:
getReaderImplin classBaseValueVector- Returns:
- Returns a lambda that initializes a reader when called.
-
getMinorType
Get minor type for this vector. The vector holds values belonging to a particular type.- Specified by:
getMinorTypein interfaceValueVector- Returns:
Types.MinorType
-
getDays
Given a data buffer, get the number of days stored at a particular position in the vector.This method should not be used externally.
- Parameters:
buffer- data bufferindex- position of the element.- Returns:
- day value stored at the index.
-
getMilliseconds
Given a data buffer, get the get the number of milliseconds stored at a particular position in the vector.This method should not be used externally.
- Parameters:
buffer- data bufferindex- position of the element.- Returns:
- milliseconds value stored at the index.
-
get
Get the element at the given index from the vector.- Parameters:
index- position of element- Returns:
- element at given index
- Throws:
IllegalStateException
-
get
Get the element at the given index from the vector and sets the state in holder. If element at given index is null, holder.isSet will be zero.- Parameters:
index- position of element
-
getObject
Same asget(int).- Specified by:
getObjectin interfaceValueVector- Parameters:
index- position of element- Returns:
- element at given index
-
getObjectNotNull
Same asgetObject(int)but does not check for null.- Parameters:
index- position of element- Returns:
- element at given index
-
getAsStringBuilder
Get the Interval value at a given index as aStringBuilderobject.- Parameters:
index- position of the element- Returns:
- String Builder object with Interval value as [days, hours, minutes, seconds, millis]
-
set
Set the element at the given index to the given value.- Parameters:
index- position of elementvalue- value of element
-
set
public void set(int index, int days, int milliseconds) Set the element at the given index to the given value.- Parameters:
index- position of elementdays- days for the intervalmilliseconds- milliseconds for the interval
-
set
Set the element at the given index to the value set in data holder. If the value in holder is not indicated as set, element in the at the given index will be null.- Parameters:
index- position of elementholder- nullable data holder for value of element- Throws:
IllegalArgumentException
-
set
Set the element at the given index to the value set in data holder.- Parameters:
index- position of elementholder- data holder for value of element
-
setSafe
Same asset(int, ArrowBuf)except that it handles the case when index is greater than or equal to existing value capacityBaseFixedWidthVector.getValueCapacity().- Parameters:
index- position of elementvalue- value of element
-
setSafe
public void setSafe(int index, int days, int milliseconds) Same asset(int, int, int)except that it handles the case when index is greater than or equal to existing value capacityBaseFixedWidthVector.getValueCapacity().- Parameters:
index- position of elementdays- days for the intervalmilliseconds- milliseconds for the interval
-
setSafe
Same asset(int, NullableIntervalDayHolder)except that it handles the case when index is greater than or equal to existing value capacityBaseFixedWidthVector.getValueCapacity().- Parameters:
index- position of elementholder- nullable data holder for value of element- Throws:
IllegalArgumentException
-
setSafe
Same asset(int, IntervalDayHolder)except that it handles the case when index is greater than or equal to existing value capacityBaseFixedWidthVector.getValueCapacity().- Parameters:
index- position of elementholder- data holder for value of element
-
set
public void set(int index, int isSet, int days, int milliseconds) Store the given value at a particular position in the vector. isSet indicates whether the value is NULL or not.- Parameters:
index- position of the new valueisSet- 0 for NULL value, 1 otherwisedays- days component of intervalmilliseconds- millisecond component of interval
-
setSafe
public void setSafe(int index, int isSet, int days, int milliseconds) Same asset(int, int, int, int)except that it handles the case when index is greater than or equal to current value capacity of the vector.- Parameters:
index- position of the new valueisSet- 0 for NULL value, 1 otherwisedays- days component of intervalmilliseconds- millisecond component of interval
-
getTransferPair
Construct a TransferPair comprising this and a target vector of the same type.- Specified by:
getTransferPairin interfaceValueVector- Specified by:
getTransferPairin classBaseFixedWidthVector- Parameters:
ref- name of the target vectorallocator- allocator for the target vector- Returns:
TransferPair
-
getTransferPair
Construct a TransferPair comprising this and a target vector of the same type.- Specified by:
getTransferPairin interfaceValueVector- Specified by:
getTransferPairin classBaseFixedWidthVector- Parameters:
field- Field object used by the target vectorallocator- allocator for the target vector- Returns:
TransferPair
-
makeTransferPair
Construct a TransferPair with a desired target vector of the same type.- Specified by:
makeTransferPairin interfaceValueVector- Parameters:
to- target vector- Returns:
TransferPair
-