diff --git a/packages/services/agent-service/src/infrastructure/repositories/agent-instance.repository.ts b/packages/services/agent-service/src/infrastructure/repositories/agent-instance.repository.ts index def9039..2d0c8cd 100644 --- a/packages/services/agent-service/src/infrastructure/repositories/agent-instance.repository.ts +++ b/packages/services/agent-service/src/infrastructure/repositories/agent-instance.repository.ts @@ -1,43 +1,36 @@ import { Injectable } from '@nestjs/common'; -import { DataSource } from 'typeorm'; -import { TenantAwareRepository } from '@it0/database'; +import { DataSource, Repository } from 'typeorm'; import { AgentInstance } from '../../domain/entities/agent-instance.entity'; @Injectable() -export class AgentInstanceRepository extends TenantAwareRepository { - constructor(dataSource: DataSource) { - super(dataSource, AgentInstance); +export class AgentInstanceRepository { + private readonly repo: Repository; + + constructor(private readonly dataSource: DataSource) { + this.repo = dataSource.getRepository(AgentInstance); } findAll(): Promise { - return this.withRepository((repo) => - repo.find({ order: { createdAt: 'DESC' } }), - ); + return this.repo.find({ order: { createdAt: 'DESC' } }); } findById(id: string): Promise { - return this.withRepository((repo) => - repo.findOne({ where: { id } as any }), - ); + return this.repo.findOne({ where: { id } as any }); } findByUserId(userId: string): Promise { - return this.withRepository((repo) => - repo.find({ where: { userId } as any, order: { createdAt: 'DESC' } }), - ); + return this.repo.find({ where: { userId } as any, order: { createdAt: 'DESC' } }); } findByPoolServer(poolServerId: string): Promise { - return this.withRepository((repo) => - repo.find({ where: { poolServerId, status: 'running' } as any }), - ); + return this.repo.find({ where: { poolServerId, status: 'running' } as any }); } - async save(instance: AgentInstance): Promise { - return this.withRepository((repo) => repo.save(instance)); + save(instance: AgentInstance): Promise { + return this.repo.save(instance); } - // Get all host ports in use on a specific server (across all tenants via public query) + // Get all host ports in use on a specific server async getUsedPortsOnServer(dataSource: DataSource, serverHost: string): Promise { const rows = await dataSource.query( `SELECT host_port FROM agent_instances WHERE server_host = $1 AND status != 'removed'`,