16 lines
621 B
TypeScript
16 lines
621 B
TypeScript
|
|
import { Injectable, Logger } from '@nestjs/common';
|
||
|
|
|
||
|
|
@Injectable()
|
||
|
|
export class EventBusPublisher {
|
||
|
|
private readonly logger = new Logger(EventBusPublisher.name);
|
||
|
|
|
||
|
|
async publish<T>(event: string, data: T, metadata?: Record<string, any>): Promise<void> {
|
||
|
|
this.logger.debug(`Publishing event: ${event}`, { data, metadata });
|
||
|
|
// TODO: 实现具体的发布逻辑
|
||
|
|
}
|
||
|
|
|
||
|
|
async publishBatch<T>(events: Array<{ event: string; data: T; metadata?: Record<string, any> }>): Promise<void> {
|
||
|
|
this.logger.debug(`Publishing batch events: ${events.length} events`);
|
||
|
|
// TODO: 实现具体的批量发布逻辑
|
||
|
|
}
|
||
|
|
}
|