knowledge-base-mcp
Version:
知识库MCP服务,基于Dify MCP协议的两步式知识库检索系统
49 lines (48 loc) • 1.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.DifyService = void 0;
/**
* Dify服务单例
*/
const dify_repository_1 = require("./dify-repository");
/**
* Dify服务单例
* 用于管理和复用DifyRepository实例
*/
class DifyService {
static instance;
repository = null;
constructor() { }
/**
* 获取DifyService单例实例
*/
static getInstance() {
if (!DifyService.instance) {
DifyService.instance = new DifyService();
}
return DifyService.instance;
}
/**
* 初始化或更新DifyRepository
* @param config DifyAPI配置
*/
init(config) {
// 如果配置有变化或首次初始化,创建新实例
if (!this.repository ||
this.repository.getConfig().apiKey !== config.apiKey ||
this.repository.getConfig().baseUrl !== config.baseUrl) {
this.repository = new dify_repository_1.DifyRepository(config);
}
}
/**
* 获取DifyRepository实例
* 如果实例不存在则抛出错误
*/
getRepository() {
if (!this.repository) {
throw new Error('DifyRepository尚未初始化,请先调用init()方法');
}
return this.repository;
}
}
exports.DifyService = DifyService;