@talema/graphql-azure-servicebus-subscriptions
Version:
A GraphQL subscription library using Azure Service Bus topics as PubSub server
25 lines • 1.09 kB
TypeScript
import { Subject } from "rxjs";
import { IEventResult } from "./Event";
import { ProcessErrorArgs, ServiceBusError, ServiceBusReceivedMessage } from "@azure/service-bus";
import { ILogger } from "./ServiceBusPubSub";
export interface IMessageProcessor {
/**
*
* @param subStream Rxjs channel based stream, each channel/client would have it's own stream pipeline.
* @param message ServiceBusReceivedMessage
*/
process(subStream: Subject<IEventResult>, message: ServiceBusReceivedMessage): Promise<void>;
/**
*
* @param args ServiceBus ProcessErrorArgs
*
*/
onError(args: ProcessErrorArgs, handleError: (error: ServiceBusError) => Promise<void>): Promise<void>;
}
export declare class MessageProcessor implements IMessageProcessor {
private logger;
constructor(logger: ILogger);
process(subject: Subject<IEventResult>, message: ServiceBusReceivedMessage): Promise<void>;
onError(args: ProcessErrorArgs, handleError: (error: ServiceBusError) => Promise<void>): Promise<void>;
}
//# sourceMappingURL=MessageProcessor.d.ts.map