Interface NamedProviderStore<T>

Type Parameters:
T - item-type in the store
All Superinterfaces:
NamedProvider<T>
All Known Implementing Classes:
EagerEvaluationStore, ExtractFrameStore, LazyEvaluationStore, NamedStacks

public interface NamedProviderStore<T> extends NamedProvider<T>
A NamedProvider, in which items can also be added.

So as to allow evaluate to be potentially lazy, an item is not directly added, but a Getter is added that can be calculated on demand.

Author:
Owen Feehan
  • Method Details

    • add

      void add(String identifier, StoreSupplier<T> supplier) throws OperationFailedException
      Adds an element to the store.
      Parameters:
      identifier - a unique identifier for the element.
      supplier - supplies the element to be added (which may be evaluated immediately, or a later point lazily).
      Throws:
      OperationFailedException - if the identifier already exists, or otherwise the add operation fails.