# 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
Class and Description
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
Class and Description
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
Class and Description
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.