Class ResettableSingletonTraverser<T>

Type Parameters:
T - item type
All Implemented Interfaces:
Traverser<T>, Consumer<T>

public class ResettableSingletonTraverser<T> extends Object implements Traverser<T>, Consumer<T>
Traverses over a single item which can be set from the outside, by using this traverser as a Consumer<T>. Another item can be set at any time and the subsequent next() call will consume it. However, if this traverser already has an item, it is illegal to set another one before consuming it.

See AppendableTraverser if you have more items to traverse.

Jet 3.0
  • Constructor Details

    • ResettableSingletonTraverser

      public ResettableSingletonTraverser()
  • Method Details

    • next

      public T next()
      Description copied from interface: Traverser
      Returns the next item, removing it from this traverser. If no item is available, returns null. If this traverser is null-terminated, getting a null means it's exhausted and will keep returning null forever. Otherwise, trying again later may produce one.
      Specified by:
      next in interface Traverser<T>
    • accept

      public void accept(@Nullable T item)
      Resets this traverser so that the following next() call will return the item supplied here. If the traverser already has an item, it is illegal to call this method until that item is consumed by calling next().
      Specified by:
      accept in interface Consumer<T>
      item - the item to return from next()