@vessl-ai/mcpctl-control-plane
Version:
Vessl MCP Control Plane service for managing distributed jobs.
44 lines • 1.64 kB
JavaScript
import { __decorate, __metadata } from "tslib";
import { Injectable } from '@nestjs/common';
import { SecretStoreFactory } from './secret.store';
let SecretService = class SecretService {
secretStoreFactory;
constructor(secretStoreFactory) {
this.secretStoreFactory = secretStoreFactory;
}
async set(sourceType, key, value) {
const secretStore = this.secretStoreFactory.getSecretStore(sourceType);
if (!secretStore) {
throw new Error(`Secret store type ${sourceType} not found`);
}
const sanitizedKey = await secretStore.set(key, value);
return sanitizedKey;
}
async get(sourceType, key) {
const secretStore = this.secretStoreFactory.getSecretStore(sourceType);
if (!secretStore) {
throw new Error(`Secret store type ${sourceType} not found`);
}
return secretStore.get(key);
}
async list(sourceType) {
const secretStore = this.secretStoreFactory.getSecretStore(sourceType);
if (!secretStore) {
throw new Error(`Secret store type ${sourceType} not found`);
}
return secretStore.list();
}
async delete(sourceType, key) {
const secretStore = this.secretStoreFactory.getSecretStore(sourceType);
if (!secretStore) {
throw new Error(`Secret store type ${sourceType} not found`);
}
await secretStore.delete(key);
}
};
SecretService = __decorate([
Injectable(),
__metadata("design:paramtypes", [SecretStoreFactory])
], SecretService);
export { SecretService };
//# sourceMappingURL=secret.service.js.map