# Uses of Package
org.apache.calcite.avatica.util

Packages that use org.apache.calcite.avatica.util
org.apache.calcite.avatica: Avatica JDBC framework.
org.apache.calcite.avatica.remote: JDBC driver that uses remote procedure calls.
org.apache.calcite.avatica.util: Avatica utilities.

Classes in org.apache.calcite.avatica.util used by org.apache.calcite.avatica
ArrayFactoryImpl: Implementation of `ArrayImpl.Factory`.
ArrayImpl.Factory: Factory that can create a ResultSet or Array based on a stream of values.
Casing: Policy for converting case of identifiers before storing them.
Cursor: Interface to an iteration that is similar to, and can easily support, a JDBC `ResultSet`, but is simpler to implement.
Cursor.Accessor: Accessor of a column value.
Quoting: Syntax for quoting identifiers in SQL statements.
UnsynchronizedBuffer: A utility class for reading and writing bytes to byte buffers without synchronization.

Classes in org.apache.calcite.avatica.util used by org.apache.calcite.avatica.remote
UnsynchronizedBuffer: A utility class for reading and writing bytes to byte buffers without synchronization.

Classes in org.apache.calcite.avatica.util used by org.apache.calcite.avatica.util
AbstractCursor: Base class for implementing a cursor.
AbstractCursor.AbstractGetter: Abstract implementation of `AbstractCursor.Getter`.
AbstractCursor.AccessorImpl: Implementation of `Cursor.Accessor`.
AbstractCursor.ApproximateNumericAccessor: Accessor of values that are `Double` or null.
AbstractCursor.ArrayAccessor: Accessor that assumes that the underlying value is an ARRAY; corresponds to `Types.ARRAY`.
AbstractCursor.BigNumberAccessor: Accessor of exact numeric values.
AbstractCursor.ExactNumericAccessor: Accessor of exact numeric values.
AbstractCursor.FixedStringAccessor: Accessor that assumes that the underlying value is a `String`; corresponds to `Types.CHAR`.
AbstractCursor.Getter: Gets a value from a particular field of the current record of this cursor.
AbstractCursor.IntAccessor: Accessor that assumes that the underlying value is an `Integer`; corresponds to `Types.INTEGER`.
AbstractCursor.LongAccessor: Accessor that assumes that the underlying value is a `Long`; corresponds to `Types.BIGINT`.
AbstractCursor.NumberAccessor: Accessor that assumes that the underlying value is a `Number`; corresponds to `Types.NUMERIC`.
AbstractCursor.ObjectAccessor: Accessor that assumes that the underlying value is an OBJECT; corresponds to `Types.JAVA_OBJECT`.
AbstractCursor.SlotGetter: Implementation of `AbstractCursor.Getter` that returns the current contents of a mutable slot.
AbstractCursor.StringAccessor: Accessor that assumes that the underlying value is a `String`; corresponds to `Types.CHAR` and `Types.VARCHAR`.
ArrayImpl.Factory: Factory that can create a ResultSet or Array based on a stream of values.
ByteString: Collection of bytes.
Casing: Policy for converting case of identifiers before storing them.
Cursor: Interface to an iteration that is similar to, and can easily support, a JDBC `ResultSet`, but is simpler to implement.
Cursor.Accessor: Accessor of a column value.
DateTimeUtils.OffsetDateTimeHandler: Deals with values of `java.time.OffsetDateTime` without introducing a compile-time dependency (because `OffsetDateTime` is only JDK 8 and higher).
DateTimeUtils.PrecisionTime: Helper class for `DateTimeUtils.parsePrecisionDateTimeLiteral(java.lang.String, java.lang.String, java.util.TimeZone)`
IteratorCursor: Implementation of `Cursor` on top of an `Iterator` that returns a record for each row.
IteratorCursor.Position: Are we positioned on a valid row?
PositionedCursor: Abstract implementation of `Cursor` that caches its current row.
Quoting: Syntax for quoting identifiers in SQL statements.
Spacer: Efficiently writes strings of spaces.
TimeUnit: Enumeration of time units used to construct an interval.
TimeUnitRange: A range of time units.
TimeUnitRange.Pair: Immutable pair of values of the same type.