Package io.deephaven.engine.liveness
Interface LivenessReferent
- All Known Subinterfaces:
BasicDataIndex
,ColumnSourceManager
,DataIndex
,DelegatingLivenessNode
,HierarchicalTable<IFACE_TYPE>
,HierarchicalTable.SnapshotState
,LazySnapshotTable
,LivenessNode
,PartitionedTable
,QueryScope
,RollupTable
,ScriptSession
,ShiftObliviousListener
,Table
,TableAdapter
,TableDefaults
,TableListener
,TableUpdateListener
,TreeTable
- All Known Implementing Classes:
AbstractDataIndex
,AbstractScriptSession
,AbstractScriptSession.ScriptSessionQueryScope
,AppendOnlyArrayBackedInputTable
,AppendOnlyAssertionInstrumentedListenerAdapter
,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
,HierarchicalTableView
,HierarchicalTableViewSubscription
,IncrementalReleaseFilter
,InitialSnapshotTable
,InMemoryTable
,InstrumentedTableListenerBase
,InstrumentedTableUpdateListener
,InstrumentedTableUpdateListenerAdapter
,JoinListenerRecorder
,KafkaStreamPublisher
,KeyedArrayBackedInputTable
,ListenerRecorder
,LiveAttributeMap
,LivenessArtifact
,LivenessScope
,LivePyObjectWrapper
,MergedListener
,NoLanguageDeephavenSession
,PartitionAwareSourceTable
,PartitionedTableImpl
,PoisonedQueryScope
,PrintListener
,PublishToKafka
,PythonDeephavenSession
,PythonListenerAdapter
,PythonMergedListenerAdapter
,PythonReplayListenerAdapter
,PythonReplayShiftObliviousListenerAdapter
,PythonShiftObliviousListenerAdapter
,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
,TableSupplier
,TimeSeriesFilter
,TimeTable
,ToMapListener
,TransformedDataIndex
,TreeTableImpl
,UncoalescedTable
,UnsortedClockFilter
,UpdatableTable
,UpdateSourceCombiner
,UpdateSourceQueryTable
,WhereFilterLivenessArtifactImpl
,ZeroKeyChunkedAjMergedListener
public interface LivenessReferent
Interface for objects that continue to "live" while retained by a
LivenessManager
.-
Method Summary
Modifier and TypeMethodDescriptionvoid
Drop a previously-retained reference to this referent.default String
Get a name that is suitable for uniquely identifying thisLivenessReferent
in debug and error messages.WeakReference<? extends LivenessReferent>
Get aWeakReference
to this referent.default void
Record a reference to thisLivenessReferent
, which must later be dropped.boolean
If 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 aWeakReference
to 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 thisLivenessReferent
in 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
-