ZindagiAssan_Backend / src /modules /user /user.factory.ts
Talha812's picture
Upload 45 files
2c16c8c verified
raw
history blame contribute delete
910 Bytes
import { UserRepositorySupabase } from '../../infra/supabase/repository/user.repository';
import { UserService } from './user.service';
import { UserController } from './user.controller';
export class UserFactory {
private static repository: UserRepositorySupabase;
private static service: UserService;
private static controller: UserController;
static getRepository() {
if (!UserFactory.repository) {
UserFactory.repository = new UserRepositorySupabase();
}
return UserFactory.repository;
}
static getService() {
if (!UserFactory.service) {
UserFactory.service = new UserService(UserFactory.getRepository());
}
return UserFactory.service;
}
static getController() {
if (!UserFactory.controller) {
UserFactory.controller = new UserController(UserFactory.getService());
}
return UserFactory.controller;
}
}