@hotmeshio/hotmesh
Version:
Permanent-Memory Workflows & AI Agents
22 lines (21 loc) • 913 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.StreamServiceFactory = void 0;
const utils_1 = require("../../modules/utils");
const nats_1 = require("./providers/nats/nats");
const postgres_1 = require("./providers/postgres/postgres");
class StreamServiceFactory {
static async init(provider, storeProvider, namespace, appId, logger) {
let service;
const providerType = (0, utils_1.identifyProvider)(provider);
if (providerType === 'nats') {
service = new nats_1.NatsStreamService(provider, storeProvider);
}
else if (providerType === 'postgres') {
service = new postgres_1.PostgresStreamService(provider, storeProvider);
} //etc register other providers here
await service.init(namespace, appId, logger);
return service;
}
}
exports.StreamServiceFactory = StreamServiceFactory;