Files
sf-sim/packages/sim-consumidor-objenious/index.ts

44 lines
1.3 KiB
TypeScript

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"
async function startWorker() {
const rmqClient = await startRMQClient()
const httpClient = httpInstance
const pgClient = new PgClient({ pool: pgPool })
await pgClient.checkDatabaseConnection()
const operationRepository = new ObjeniousOperationsRepository(pgClient)
const simActivationController = new SimController(
rmqClient,
new SimUseCases({
httpClient: httpClient,
operationRepository: operationRepository
})
)
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 {}