Stone.js API
    Preparing search index...

    Class Adapter<RawEventType, RawResponseType, ExecutionContextType, IncomingEventType, IncomingEventOptionsType, OutgoingResponseType, AdapterContextType>Abstract

    Class representing an Adapter.

    Mr. Stone evensstone@gmail.com

    Type Parameters

    Implements

    Index
    blueprint: IBlueprint

    The blueprint to create the adapter.

    resolvedErrorHandlers: Record<
        string,
        IAdapterErrorHandler<RawEventType, RawResponseType, ExecutionContextType>,
    >
    • Run handler.

      Type Parameters

      • ExecutionResultType = unknown

      Returns Promise<ExecutionResultType>

      The result of the handler execution.

      Implementation flow

      await this.executeHooks('onStart');
      const eventHandlerResolver = this.blueprint.get('stone.adapter.eventHandlerResolver');
      const eventHandler = eventHandlerResolver(this.blueprint)
      await this.executeHooks('onInit', eventHandler);
      const rawEvent: MockRawEvent = { name: 'Stone.js' }
      const context: AdapterContext<MockRawEvent, MockRawResponse, any, IncomingEvent, IncomingEventOptions, OutgoingResponse> = {
      rawEvent,
      incomingEventBuilder: AdapterBuilder.create<IncomingEventOptions, IncomingEvent>({ resolver: v => IncomingEvent.create(v) }),
      rawResponseBuilder: AdapterBuilder.create<RawResponseOptions, MockRawResponseWrapper>({ resolver: v => new MockRawResponseWrapper(v) })
      }
      return await this.sendEventThroughDestination(context, eventHandler);