Class AsyncHandler<TIn, TOut>Abstract

Simple interface for classes that can potentially handle a specific kind of data asynchronously.

Type Parameters

  • TIn = void

  • TOut = void

Hierarchy

Implemented by

Constructors

Methods

Constructors

  • Type Parameters

    • TIn = void

    • TOut = void

    Returns AsyncHandler<TIn, TOut>

Methods

  • Checks if the input can be handled by this class. If it cannot handle the input, rejects with an error explaining why.

    Returns

    A promise resolving if the input can be handled, rejecting with an Error if not.

    Parameters

    • input: TIn

      Input that could potentially be handled.

    Returns Promise<void>

  • Handles the given input. This may only be called if canHandle did not reject. When unconditionally calling both in sequence, consider handleSafe instead.

    Returns

    A promise resolving when handling is finished.

    Parameters

    • input: TIn

      Input that needs to be handled.

    Returns Promise<TOut>

  • Helper function that first runs canHandle followed by handle. Throws the error of canHandle if the data cannot be handled, or returns the result of handle otherwise.

    Returns

    A promise resolving if the input can be handled, rejecting with an Error if not.

    Parameters

    • input: TIn

      Input data that will be handled if it can be handled.

    Returns Promise<TOut>