Package com.illumon.iris.db.v2.locations
Class DeferredTableLocation<CLT extends ColumnLocation>
java.lang.Object
com.illumon.iris.db.v2.locations.DeferredTableLocation<CLT>
- All Implemented Interfaces:
com.fishlib.base.log.LogOutputAppendable
,TableLocation<CLT>
,TableLocationKey
,TableLocationState
,NamedImplementation
- Direct Known Subclasses:
DeferredTableLocation.DataDriven
,DeferredTableLocation.SnapshotDriven
public abstract class DeferredTableLocation<CLT extends ColumnLocation> extends Object implements TableLocation<CLT>
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DeferredTableLocation.DataDriven<CLT extends ColumnLocation>
DeferredTableLocation that needs to initialize its inner location for all non-key methods.static class
DeferredTableLocation.SnapshotDriven<CLT extends ColumnLocation>
DeferredTableLocation that implements metadata getters by delegating to a snapshot.static interface
DeferredTableLocation.TableLocationCreator<CLT extends ColumnLocation>
Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.locations.TableLocation
TableLocation.Format, TableLocation.Listener
Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.locations.TableLocationKey
TableLocationKey.ComparatorImpl, TableLocationKey.KeyedObjectKeyImpl<VALUE_TYPE>, TableLocationKey.SelfKeyedObjectKeyImpl<VALUE_TYPE extends TableLocationKey>
-
Field Summary
Fields inherited from interface com.illumon.iris.db.v2.locations.TableLocationKey
COMPARATOR, NULL_PARTITION
Fields inherited from interface com.illumon.iris.db.v2.locations.TableLocationState
NULL_SIZE, NULL_TIME
-
Method Summary
Modifier and Type Method Description CLT
getColumnLocation(CharSequence name)
CharSequence
getColumnPartition()
String
getImplementationName()
Get a name for the implementing class.CharSequence
getInternalPartition()
TableKey
getTableKey()
String
toString()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.illumon.iris.db.v2.locations.TableLocation
append, getColumnVersion, getDataIndex, getFormat, getSortedColumns, hasDataIndexFor, refresh, subscribe, supportsSubscriptions, toGenericString, toStringDetailed, toStringHelper, unsubscribe
Methods inherited from interface com.illumon.iris.db.v2.locations.TableLocationState
copyStateValuesTo, getLastModifiedTimeMillis, getSize, getStateLock, writeStateValuesTo
-
Method Details
-
toString
-
getImplementationName
Description copied from interface:NamedImplementation
Get a name for the implementing class. Useful for abstract classes that implement
LogOutputAppendable
or overridetoString
.The default implementation is correct, but not suitable for high-frequency usage.
- Specified by:
getImplementationName
in interfaceNamedImplementation
- Returns:
- A name for the implementing class
-
getInternalPartition
- Specified by:
getInternalPartition
in interfaceTableLocationKey
- Returns:
- The internal partition that encloses the identified table location, or null if none exists
-
getColumnPartition
- Specified by:
getColumnPartition
in interfaceTableLocationKey
- Returns:
- The column partition that encloses the identified table location, or null if none exists
-
getTableKey
- Specified by:
getTableKey
in interfaceTableLocation<CLT extends ColumnLocation>
- Returns:
- A TableKey instance for the enclosing table
-
getColumnLocation
- Specified by:
getColumnLocation
in interfaceTableLocation<CLT extends ColumnLocation>
- Parameters:
name
- The column name- Returns:
- The ColumnLocation for the defined column under this table location
-