Class VerifiedDeque<E>

java.lang.Object
com.pnfsoftware.jeb.util.collect.VerifiedDeque<E>
Type Parameters:
E -

public class VerifiedDeque<E> extends Object
Deque wrapper providing verification facility on push.
  • Method Details

    • wrap

      public static <E> VerifiedDeque<E> wrap(Deque<E> deque, Collection<E> whitelist, Collection<E> blacklist, VerifiedDeque.FailureHandler<E> failureHandler)
      Wrap a double-ended queue to support validation on push.
      Parameters:
      deque - a queue to be wrapped
      whitelist - optional white-list; if null, all elements are deemed good by default
      blacklist - optional black-list; if null, no element is deemed bad by default
      failureHandler - optional handler; if not provided, illegal pushes will raise
    • push

      public boolean push(E e)
      Validate and eventually push/bail/raise an element to the wrapped deque.
      Parameters:
      e -
      Returns:
      true on push, false on aborted push (the method could also raise; see VerifiedDeque.FailureHandler)
      Throws:
      IllegalArgumentException - refer to VerifiedDeque.FailureHandler