Package io.deephaven.engine.liveness
Interface LivenessReferent
- All Known Subinterfaces:
BasicDataIndex,ColumnSourceManager,DataIndex,DataIndexer.RetainableDataIndex,DelegatingLivenessNode,DelegatingLivenessReferent,HierarchicalTable<IFACE_TYPE>,HierarchicalTable.SnapshotState,IcebergTable,LazySnapshotTable,LeaderTableFilter.Results<T>,LivenessNode,LiveSupplier<TYPE>,PartitionedTable,QueryScope,RollupTable,ScriptSession,ShiftObliviousListener,Table,TableAdapter,TableDefaults,TableListener,TableLocation,TableUpdateListener,TreeTable
- All Known Implementing Classes:
AbstractDataIndex,AbstractScriptSession,AbstractScriptSession.ScriptSessionQueryScope,AbstractTableLocation,AppendOnlyArrayBackedInputTable,AutoTuningIncrementalReleaseFilter,BarrageBlinkTable,BarrageMessageProducer,BarrageRedirectedTable,BarrageSnapshotImpl,BarrageSubscriptionImpl,BarrageTable,BaseGridAttributes,BaseIncrementalReleaseFilter,BaseTable,BaseTable.ListenerImpl,BaseTable.ShiftObliviousListenerImpl,BucketedChunkedAjMergedListener,ClockFilter,ComposedFilter,ConjunctiveFilter,DeferredViewTable,DeferredViewTable.TableReference,DelegatingScriptSession,DisjunctiveFilter,DynamicWhereFilter,EmptyQueryScope,FigureWidget,GroovyDeephavenSession,HierarchicalTableImpl,HierarchicalTableView,HierarchicalTableViewSubscription,IcebergTableImpl,IncrementalReleaseFilter,InMemoryTable,InstrumentedTableListenerBase,InstrumentedTableUpdateListener,InstrumentedTableUpdateListenerAdapter,JoinListenerRecorder,KafkaStreamPublisher,KeyedArrayBackedInputTable,ListenerRecorder,LiveAttributeMap,LivenessArtifact,LivenessScope,LivePyObjectWrapper,MergedListener,NoLanguageDeephavenSession,NonexistentTableLocation,ParquetTableLocation,PartitionAwareSourceTable,PartitionedTableImpl,PoisonedQueryScope,PrintListener,PublishToKafka,PythonDeephavenSession,PythonListenerAdapter,PythonMergedListenerAdapter,PythonReplayListenerAdapter,PythonReplayShiftObliviousListenerAdapter,PythonShiftObliviousListenerAdapter,PythonTableDataService.TableLocationImpl,QueryReplayGroupedTable,QueryTable,QueryTable.FilteredTable,RedefinableTable,ReferenceCountedLivenessNode,ReferenceCountedLivenessReferent,RegionedColumnSourceManager,RemappedDataIndex,ReplayGroupedFullTable,ReplayLastByGroupedTable,ReplayTable,ReplayTableBase,RollingReleaseFilter,RollupTableImpl,SessionState.ExportObject,ShiftObliviousInstrumentedListener,ShiftObliviousInstrumentedListenerAdapter,SimpleSourceTable,SnapshotIncrementalListener,SnapshotInternalListener,SortedAssertionInstrumentedListenerAdapter,SortedClockFilter,SortListener,SourcePartitionedTable,SourceTable,StandaloneDataIndex,StandaloneQueryScope,StreamPublisherBase,TableBackedDataIndex,TableLocationSubscriptionBuffer,TableSupplier,TimeSeriesFilter,TimeTable,ToMapListener,TransformedDataIndex,TreeTableImpl,UncoalescedTable,UnsortedClockFilter,UpdatableTable,UpdateSourceCombiner,UpdateSourceQueryTable,WhereFilterDelegatingBase,WhereFilterInvertedImpl,WhereFilterLivenessArtifactImpl,WhereFilterSerialImpl,WhereFilterWithDeclaredBarriersImpl,WhereFilterWithRespectedBarriersImpl,ZeroKeyChunkedAjMergedListener
public interface LivenessReferent
Interface for objects that continue to "live" while retained by a
LivenessManager.-
Method Summary
Modifier and TypeMethodDescriptionvoidDrop a previously-retained reference to this referent.default StringGet a name that is suitable for uniquely identifying thisLivenessReferentin debug and error messages.WeakReference<? extends LivenessReferent>Get aWeakReferenceto this referent.default voidRecord a reference to thisLivenessReferent, which must later be dropped.booleanIf this referent is "live", behave asretainReference()and return true.
-
Method Details
-
retainReference
default void retainReference()Record a reference to thisLivenessReferent, which must later be dropped.- Throws:
LivenessStateException- If this referent is no longer "live"
-
tryRetainReference
boolean tryRetainReference()If this referent is "live", behave asretainReference()and return true. Otherwise, returns false rather than throwing an exception.- Returns:
- True if this referent was retained, false otherwise
-
dropReference
void dropReference()Drop a previously-retained reference to this referent. -
getWeakReference
WeakReference<? extends LivenessReferent> getWeakReference()Get aWeakReferenceto this referent. This may be cached, or newly created.- Returns:
- A new or cached reference to this referent
-
getReferentDescription
Get a name that is suitable for uniquely identifying thisLivenessReferentin debug and error messages. This is usually not the same asObject.toString().- Returns:
- A unique name for this referent for debugging and error message purposes
-