@hotmeshio/hotmesh
Version:
Serverless Workflow
25 lines (24 loc) • 1.07 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.StoreServiceFactory = void 0;
const utils_1 = require("../../modules/utils");
const ioredis_1 = require("./providers/redis/ioredis");
const redis_1 = require("./providers/redis/redis");
const postgres_1 = require("./providers/postgres/postgres");
class StoreServiceFactory {
static async init(providerClient, namespace, appId, logger) {
let service;
if ((0, utils_1.identifyProvider)(providerClient) === 'redis') {
service = new redis_1.RedisStoreService(providerClient);
}
else if ((0, utils_1.identifyProvider)(providerClient) === 'ioredis') {
service = new ioredis_1.IORedisStoreService(providerClient);
}
else if ((0, utils_1.identifyProvider)(providerClient) === 'postgres') {
service = new postgres_1.PostgresStoreService(providerClient);
} //etc
await service.init(namespace, appId, logger);
return service;
}
}
exports.StoreServiceFactory = StoreServiceFactory;
;