mirror of
https://github.com/YuzuZensai/Minikura.git
synced 2026-09-13 10:49:21 +00:00
27 lines
1.1 KiB
TypeScript
27 lines
1.1 KiB
TypeScript
import { operatorResourceSync, wsService } from "../../application/di-container";
|
|
import {
|
|
ServerCreatedEvent,
|
|
ServerDeletedEvent,
|
|
ServerUpdatedEvent,
|
|
} from "../../domain/events/server-lifecycle.events";
|
|
import { eventBus } from "../event-bus";
|
|
import { logger } from "../logger";
|
|
|
|
eventBus.subscribe(ServerCreatedEvent, async (event) => {
|
|
logger.info({ serverId: event.serverId, serverType: event.serverType }, "Server created event");
|
|
wsService.broadcast("CREATE", event.serverType, event.serverId);
|
|
await operatorResourceSync.syncServerById(event.serverId);
|
|
});
|
|
|
|
eventBus.subscribe(ServerUpdatedEvent, async (event) => {
|
|
logger.info({ serverId: event.serverId }, "Server updated event");
|
|
wsService.broadcast("UPDATE", "server", event.serverId);
|
|
await operatorResourceSync.syncServerById(event.serverId);
|
|
});
|
|
|
|
eventBus.subscribe(ServerDeletedEvent, async (event) => {
|
|
logger.info({ serverId: event.serverId }, "Server deleted event");
|
|
wsService.broadcast("DELETE", "server", event.serverId);
|
|
await operatorResourceSync.deleteServer(event.serverId);
|
|
});
|