Class TimeTable

All Implemented Interfaces:
TableOperations<Table,Table>, TableOperationsDefaults<Table,Table>, LogOutputAppendable, LivenessManager, LivenessNode, LivenessReferent, AttributeMap<Table>, GridAttributes<Table>, NotificationStepReceiver, NotificationStepSource, TableDefaults, Table, DynamicNode, NotificationQueue.Dependency, SystemicObject<Table>, LongSizedDataStructure, Serializable, Runnable

public final class TimeTable extends QueryTable implements Runnable
A TimeTable adds rows at a fixed interval with a single column named "Timestamp".

To create a TimeTable, you should use the TableTools.timeTable(java.lang.String) family of methods.

See Also:
ImplNote:
The constructor publishes this to the UpdateSourceRegistrar and thus cannot be subclassed.
  • Constructor Details

  • Method Details

    • newBuilder

      public static TimeTable.Builder newBuilder()
    • satisfied

      public boolean satisfied(long step)
      Description copied from interface: NotificationQueue.Dependency
      Is this ancestor satisfied? Note that this method must be safe to call on any thread.
      Specified by:
      satisfied in interface NotificationQueue.Dependency
      Overrides:
      satisfied in class BaseTable<QueryTable>
      Parameters:
      step - The step for which we are testing satisfaction
      Returns:
      Whether the dependency is satisfied on step (and will not fire subsequent notifications)
    • run

      @TestUseOnly public void run()
      Specified by:
      run in interface Runnable
    • destroy

      protected void destroy()
      Description copied from class: ReferenceCountedLivenessReferent
      Attempt to release (destructively when necessary) resources held by this object. This may render the object unusable for subsequent operations. Implementations should be sure to call super.destroy().

      This is intended to only ever be used as a side effect of decreasing the reference count to 0.

      Overrides:
      destroy in class BaseTable<QueryTable>