Interface DynamicNode

All Known Subinterfaces:
IcebergTable, LazySnapshotTable, Table, TableAdapter, TableDefaults
All Known Implementing Classes:
AppendOnlyArrayBackedInputTable, BarrageBlinkTable, BarrageMessageProducer, BarrageRedirectedTable, BarrageTable, BaseTable, DeferredViewTable, IcebergTableImpl, InMemoryTable, KeyedArrayBackedInputTable, PartitionAwareSourceTable, QueryReplayGroupedTable, QueryTable, QueryTable.FilteredTable, RedefinableTable, ReplayGroupedFullTable, ReplayLastByGroupedTable, ReplayTable, ReplayTableBase, SimpleSourceTable, SourceTable, TimeTable, UncoalescedTable, UpdatableTable, UpdateSourceQueryTable

public interface DynamicNode
Interface for dynamic nodes in a query's directed acyclic graph.
  • Method Details

    • isRefreshing

      boolean isRefreshing()
      Is the node updating?
      Returns:
      true if the node is updating; false otherwise.
    • setRefreshing

      boolean setRefreshing(boolean refreshing)
      Change the node's run mode.
      Parameters:
      refreshing - true to cause the node to update; false otherwise.
      Returns:
      new refreshing state
    • addParentReference

      void addParentReference(Object parent)
      Called on a dependent node to ensure that a strong reference is maintained to any parent object that is required for the proper maintenance and functioning of the dependent. In the most common case, the parent object is a child listener to a parent node. The parent node only keeps a weak reference to its child listener, but the listener maintains a strong reference to the parent node. In this scenario, the only strong reference to the listener (and thus indirectly to the parent node itself) is the reference kept by the dependent node.
      Parameters:
      parent - A parent of this node
    • isDynamicAndIsRefreshing

      static boolean isDynamicAndIsRefreshing(Object object)
      Determine if an object is a refreshing DynamicNode.
      Parameters:
      object - The object
      Returns:
      True if the object is a DynamicNode and its isRefreshing() returns true, false otherwise
    • isDynamicAndNotRefreshing

      static boolean isDynamicAndNotRefreshing(Object object)
      Determine if an object is a DynamicNode but is not refreshing.
      Parameters:
      object - The object
      Returns:
      True if the object is a DynamicNode and its isRefreshing() returns true, false otherwise
    • notDynamicOrNotRefreshing

      static boolean notDynamicOrNotRefreshing(Object object)
      Determine if an object is not a refreshing DynamicNode.
      Parameters:
      object - The object
      Returns:
      True if the object is not a DynamicNode or its isRefreshing() returns false, false otherwise
    • notDynamicOrIsRefreshing

      static boolean notDynamicOrIsRefreshing(Object object)
      Determine if an object is either not a DynamicNode, or is a refreshing DynamicNode.
      Parameters:
      object - The object
      Returns:
      True if the object is not a DynamicNode or if its isRefreshing() returns true, false otherwise