Package com.pnfsoftware.jeb.util.collect
Class VerifiedDeque<E>
java.lang.Object
com.pnfsoftware.jeb.util.collect.VerifiedDeque<E>
- Type Parameters:
E-
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionbooleanValidate and eventually push/bail/raise an element to the wrapped deque.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 onpush.
-
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 onpush.- Parameters:
deque- a queue to be wrappedwhitelist- optional white-list; if null, all elements are deemed good by defaultblacklist- optional black-list; if null, no element is deemed bad by defaultfailureHandler- optional handler; if not provided, illegal pushes will raise
-
push
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 toVerifiedDeque.FailureHandler
-