UNPKG

@dolittle/sdk.events.handling

Version:

Dolittle is a decentralized, distributed, event-driven microservice platform built to harness the power of events.

39 lines 2.74 kB
import { Logger } from 'winston'; import { IServiceProvider } from '@dolittle/sdk.dependencyinversion'; import { IEventTypes } from '@dolittle/sdk.events'; import { ExecutionContext } from '@dolittle/sdk.execution'; import { Internal } from '@dolittle/sdk.events.processing'; import { Cancellation } from '@dolittle/sdk.resilience'; import { IReverseCallClient } from '@dolittle/sdk.services'; import { EventHandlerRegistrationRequest, EventHandlerRegistrationResponse, HandleEventRequest, EventHandlerResponse } from '@dolittle/contracts/Runtime/Events.Processing/EventHandlers_pb'; import { Failure } from '@dolittle/contracts/Protobuf/Failure_pb'; import { EventHandlersClient } from '@dolittle/contracts/Runtime/Events.Processing/EventHandlers_grpc_pb'; import { RetryProcessingState, ProcessorFailure } from '@dolittle/contracts/Runtime/Events.Processing/Processors_pb'; import { EventHandlerId } from '../EventHandlerId'; import { IEventHandler } from '../IEventHandler'; /** * Represents an implementation of {@link Internal.EventProcessor} for {@link EventHandler}. */ export declare class EventHandlerProcessor extends Internal.EventProcessor<EventHandlerId, EventHandlersClient, EventHandlerRegistrationRequest, EventHandlerRegistrationResponse, HandleEventRequest, EventHandlerResponse> { private _handler; private _eventTypes; /** * Initializes a new instance of {@link EventHandlerProcessor}. * @param {IEventHandler} _handler - The actual handler. * @param {IEventTypes} _eventTypes - Registered event types. */ constructor(_handler: IEventHandler, _eventTypes: IEventTypes); /** @inheritdoc */ protected get registerArguments(): EventHandlerRegistrationRequest; /** @inheritdoc */ protected createClient(client: EventHandlersClient, registerArguments: EventHandlerRegistrationRequest, callback: (request: HandleEventRequest, executionContext: ExecutionContext) => Promise<EventHandlerResponse>, executionContext: ExecutionContext, pingInterval: number, logger: Logger, cancellation: Cancellation): IReverseCallClient<EventHandlerRegistrationResponse>; /** @inheritdoc */ protected getFailureFromRegisterResponse(response: EventHandlerRegistrationResponse): Failure | undefined; /** @inheritdoc */ protected getRetryProcessingStateFromRequest(request: HandleEventRequest): RetryProcessingState | undefined; /** @inheritdoc */ protected createResponseFromFailure(failure: ProcessorFailure): EventHandlerResponse; /** @inheritdoc */ protected handle(request: HandleEventRequest, executionContext: ExecutionContext, services: IServiceProvider, logger: Logger): Promise<EventHandlerResponse>; } //# sourceMappingURL=EventHandlerProcessor.d.ts.map