import { ObjeniousOperationsRepository } from "sim-shared/infrastructure/ObjeniousOperationRepository.js" import { startRMQClient } from "#config/eventBus.config.js" import { httpInstance } from "#config/httpClient.config.js" import { pgPool } from "#config/postgreConfig.js" import { PgClient } from "sim-shared/infrastructure/PgClient.js" import { SimUseCases } from "./aplication/Sim.usecases.js" import { SimController } from "./aplication/Sim.controller.js" import { SimRouter } from "./aplication/Sim.router.js" import { OrderRepository } from "sim-shared/infrastructure/OrderRepository.js" import { PauseCancelTaskRepository } from "#adapters/PauseCancelTaskRepository.js" async function startWorker() { const rmqClient = await startRMQClient() const httpClient = httpInstance const pgClient = new PgClient({ pool: pgPool }) await pgClient.checkDatabaseConnection() const operationRepository = new ObjeniousOperationsRepository( httpClient, pgClient, ) const orderRepository = new OrderRepository(pgClient) const pauseRepository = new PauseCancelTaskRepository(pgClient) const simActivationController = new SimController( rmqClient, new SimUseCases({ httpClient: httpClient, operationRepository: operationRepository, orderRepository: orderRepository, pauseRepository: pauseRepository }) ) const simRouter = new SimRouter(simActivationController, rmqClient) // de momento solo una cola por simplificar rmqClient.consume("sim.objenious", simRouter.route) } startWorker() .then(e => { console.log("[o] Worker de SIM de Objenious[FR] iniciado") }) .catch(e => { console.error("[x] Error iniciando worker de SIM de Objenious[FR]", e) }) export default {}