@hotmeshio/hotmesh
Version:
Permanent-Memory Workflows & AI Agents
25 lines (24 loc) • 1.09 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SearchServiceFactory = void 0;
const utils_1 = require("../../modules/utils");
const postgres_1 = require("./providers/postgres/postgres");
const ioredis_1 = require("./providers/redis/ioredis");
const redis_1 = require("./providers/redis/redis");
class SearchServiceFactory {
static async init(providerClient, storeProviderClient, namespace, appId, logger) {
let service;
if ((0, utils_1.identifyProvider)(providerClient) === 'postgres') {
service = new postgres_1.PostgresSearchService(providerClient, storeProviderClient);
}
else if ((0, utils_1.identifyProvider)(providerClient) === 'redis') {
service = new redis_1.RedisSearchService(providerClient, storeProviderClient);
}
else {
service = new ioredis_1.IORedisSearchService(providerClient, storeProviderClient);
}
await service.init(namespace, appId, logger);
return service;
}
}
exports.SearchServiceFactory = SearchServiceFactory;