UNPKG

@fabrix/spool-broadcast

Version:

Spool: broadcast for Fabrix to implement CQRS and Event Sourcing

67 lines (66 loc) 2.23 kB
import { FabrixApp } from '@fabrix/fabrix'; import { FabrixGeneric, FabrixModel } from '@fabrix/fabrix/dist/common'; import { Promise } from 'bluebird'; import { BroadcastEvent } from './api/models'; import { Entry } from './Entry'; import { BroadcastAction, BroadcastOptions } from './Interface'; import { BroadcastEntity } from './BroadcastEntity'; import { Broadcast } from './Broadcast'; export declare class BroadcastProcess extends FabrixGeneric { event: BroadcastEvent; options: { [key: string]: any; }; consistency: string; manager: { [key: string]: any; }; broadcaster: Broadcast; message: any; isAcknowledged: boolean; isRedelivered: boolean; versions: number[]; retries: number; processorModel: FabrixModel; private _id; constructor(app: FabrixApp, { event, options, consistency, message, manager, broadcaster }: { event: BroadcastEvent; options: BroadcastOptions; consistency?: string; message?: string; manager?: any; broadcaster?: Broadcast; }); id: string; readonly name: string; run(): Promise<(BroadcastEvent | BroadcastAction | BroadcastOptions)[]>; request(req: any): Promise<any>; ack(): Promise<(BroadcastEvent | BroadcastAction | BroadcastOptions)[]>; nack(): Promise<(BroadcastEvent | BroadcastAction | BroadcastOptions)[]>; reject(): Promise<(BroadcastEvent | BroadcastAction | BroadcastOptions)[]>; interrupt(msg: any): Promise<any>; reply(msg: any): Promise<any>; finalize(): Promise<any>; entries(name: string): Entry; Sequelize(): any; mapSeries(...args: any[]): Promise<any>; readonly metadata: { channel: any; channel_session: any; user: any; device: any; application: any; causation_uuid: any; correlation_uuid: any; correlation_type: any; explain: any; ip: any; }; } export declare class BroadcastProcessor extends BroadcastEntity { private _managers; constructor(app: FabrixApp); newProcessor(func: any, vals: any): BroadcastProcess; readonly managers: Map<string, string>; hasManager(name: any): boolean; }