Interface LivenessNode

All Superinterfaces:
LivenessManager, LivenessReferent
All Known Subinterfaces:
DelegatingLivenessNode, LazySnapshotTable, PartitionedTable, QueryScope, ScriptSession, ShiftObliviousListener, Table, TableAdapter, TableDefaults, TableListener, TableUpdateListener
All Known Implementing Classes:
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.SimpleTableReference, DeferredViewTable.TableReference, DelegatingScriptSession, DisjunctiveFilter, DynamicWhereFilter, EmptyQueryScope, FigureWidget, GroovyDeephavenSession, HierarchicalTableView, HierarchicalTableViewSubscription, IncrementalReleaseFilter, InitialSnapshotTable, InMemoryTable, InstrumentedTableListenerBase, InstrumentedTableUpdateListener, InstrumentedTableUpdateListenerAdapter, JoinListenerRecorder, KafkaStreamPublisher, KeyedArrayBackedInputTable, ListenerRecorder, LiveAttributeMap, LivenessArtifact, LivenessScope, MergedListener, NoLanguageDeephavenSession, PartitionAwareSourceTable, PartitionedTableImpl, PoisonedQueryScope, PrintListener, PublishToKafka, PythonDeephavenSession, PythonListenerAdapter, PythonReplayListenerAdapter, PythonReplayShiftObliviousListenerAdapter, PythonShiftObliviousListenerAdapter, QueryReplayGroupedTable, QueryTable, QueryTable.FilteredTable, RedefinableTable, ReferenceCountedLivenessNode, ReplayGroupedFullTable, ReplayLastByGroupedTable, ReplayTable, ReplayTableBase, RollingReleaseFilter, RollupTableImpl, SessionState.ExportObject, ShiftObliviousInstrumentedListener, ShiftObliviousInstrumentedListenerAdapter, SimpleSourceTable, SnapshotIncrementalListener, SnapshotInternalListener, SortedAssertionInstrumentedListenerAdapter, SortedClockFilter, SortListener, SourcePartitionedTable, SourceTable, SourceTable.QueryTableReference, StandaloneQueryScope, StreamPublisherBase, TableSupplier, TimeSeriesFilter, TimeTable, ToMapListener, TreeTableImpl, UncoalescedTable, UnsortedClockFilter, UpdatableTable, UpdateSourceCombiner, UpdateSourceQueryTable, WhereFilterLivenessArtifactImpl, ZeroKeyChunkedAjMergedListener

public interface LivenessNode extends LivenessReferent, LivenessManager
A LivenessReferent that is also a LivenessManager, transitively enforcing liveness on its referents.
  • Method Details

    • unmanage

      @FinalDefault default void unmanage(@NotNull @NotNull LivenessReferent referent)
      If this node manages referent one or more times, drop one such reference. This node must be live.
      Parameters:
      referent - The referent to drop
    • tryUnmanage

      boolean tryUnmanage(@NotNull @NotNull LivenessReferent referent)
      If this node is still live and manages referent one or more times, drop one such reference.
      Parameters:
      referent - The referent to drop
      Returns:
      Whether this node was live and thus in fact tried to drop a reference
    • unmanage

      @FinalDefault default void unmanage(@NotNull @NotNull Stream<? extends LivenessReferent> referents)
      For each referent in referent, if this node manages referent one or more times, drop one such reference. This node must be live.
      Parameters:
      referents - The referents to drop
    • tryUnmanage

      boolean tryUnmanage(@NotNull @NotNull Stream<? extends LivenessReferent> referents)
      For each referent in referents, if this node is still live and manages referent one or more times, drop one such reference.
      Parameters:
      referents - The referents to drop
      Returns:
      Whether this node was live and thus in fact tried to drop a reference