server/src/application/database.ts
2025-02-07 20:07:36 +01:00

26 lines
618 B
TypeScript

import { MikroORM } from '@mikro-orm/mysql'
import Logger, { LoggerType } from '#application/logger'
import config from '#root/mikro-orm.config'
class Database {
private static orm: MikroORM
private static logger = Logger.type(LoggerType.APP)
public static async initialize(): Promise<void> {
try {
this.orm = await MikroORM.init(config)
this.logger.info('Database connection initialized')
} catch (error) {
this.logger.error(`MikroORM connection failed: ${error}`)
throw error
}
}
public static getORM(): MikroORM {
return this.orm
}
}
export default Database