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 TypeMethodDescriptionboolean
Validate 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
-