Creates a new WaterfallHandler that stores the given handlers.
Handlers over which it will run.
Checks whether any of the stored handlers can handle the given input.
The data that would need to be handled.
A promise resolving if at least 1 handler supports to input, or rejecting if none do.
Finds a handler that supports the given input and then lets it handle the given data.
The data that needs to be handled.
A promise corresponding to the handle call of a handler that supports the input. It rejects if no handlers support the given data.
Identical to AsyncHandler.handleSafe but optimized for composite by only needing 1 canHandle call on members.
The input data.
A promise corresponding to the handle call of a handler that supports the input. It rejects if no handlers support the given data.
A composite handler that tries multiple handlers one by one until it finds a handler that supports the input. The handlers will be checked in the order they appear in the input array, allowing for more fine-grained handlers to check before catch-all handlers.