1
0
mirror of https://github.com/xuthus83/pigallery2.git synced 2024-11-03 21:04:03 +08:00
pigallery2/backend/model/ObjectManagerRepository.ts
2016-04-22 13:23:44 +02:00

47 lines
1.4 KiB
TypeScript

import {IUserManager} from "./IUserManager";
import {IGalleryManager} from "./IGalleryManager";
import {MongoGalleryManager} from "./mongoose/MongoGalleryManager";
import {MongoUserManager} from "./mongoose/MongoUserManager";
import {GalleryManager} from "./memory/GalleryManager";
import {UserManager} from "./memory/UserManager";
export class ObjectManagerRepository{
private _galleryManager:IGalleryManager;
private _userManager:IUserManager;
private static _instance:ObjectManagerRepository = null;
public static InitMongoManagers(){
ObjectManagerRepository.getInstance().setGalleryManager(new MongoGalleryManager());
ObjectManagerRepository.getInstance().setUserManager(new MongoUserManager());
}
public static MemoryMongoManagers(){
ObjectManagerRepository.getInstance().setGalleryManager(new GalleryManager());
ObjectManagerRepository.getInstance().setUserManager(new UserManager());
}
public static getInstance(){
if(this._instance === null){
this._instance = new ObjectManagerRepository();
}
return this._instance;
}
getGalleryManager():IGalleryManager {
return this._galleryManager;
}
setGalleryManager(value:IGalleryManager) {
this._galleryManager = value;
}
getUserManager():IUserManager {
return this._userManager;
}
setUserManager(value:IUserManager) {
this._userManager = value;
}
}