fc-toolkit
Version:
fc-toolkit
35 lines • 2.57 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getClientByType = void 0;
const awos_js_1 = require("awos-js");
const clientMap = {};
function getClientByType(storeType, options) {
switch (storeType) {
case 'oss':
const ossClientKey = options.accessKeyId + options.bucket + options.endpoint;
if (clientMap[ossClientKey]) {
return clientMap[ossClientKey];
}
const ossClient = new awos_js_1.Client({
type: 'oss',
ossOptions: options,
});
clientMap[ossClientKey] = ossClient;
return ossClient;
case 'aws':
const awsClientKey = options.accessKeyId + options.bucket + options.endpoint;
if (clientMap[awsClientKey]) {
return clientMap[awsClientKey];
}
const awsClient = new awos_js_1.Client({
type: 'aws',
awsOptions: options,
});
clientMap[awsClientKey] = awsClient;
return awsClient;
default:
throw new Error('Unknown store type: ' + storeType);
}
}
exports.getClientByType = getClientByType;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFDQUF5QztBQUl6QyxNQUFNLFNBQVMsR0FBUSxFQUFFLENBQUM7QUFFMUIsU0FBZ0IsZUFBZSxDQUM3QixTQUFpQixFQUNqQixPQUFrQztJQUVsQyxRQUFRLFNBQVMsRUFBRTtRQUNqQixLQUFLLEtBQUs7WUFDUixNQUFNLFlBQVksR0FDaEIsT0FBTyxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDMUQsSUFBSSxTQUFTLENBQUMsWUFBWSxDQUFDLEVBQUU7Z0JBQzNCLE9BQU8sU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ2hDO1lBQ0QsTUFBTSxTQUFTLEdBQUcsSUFBSSxnQkFBSSxDQUFDO2dCQUN6QixJQUFJLEVBQUUsS0FBSztnQkFDWCxVQUFVLEVBQUUsT0FBc0I7YUFDbkMsQ0FBQyxDQUFDO1lBQ0gsU0FBUyxDQUFDLFlBQVksQ0FBQyxHQUFHLFNBQVMsQ0FBQztZQUNwQyxPQUFPLFNBQVMsQ0FBQztRQUNuQixLQUFLLEtBQUs7WUFDUixNQUFNLFlBQVksR0FDaEIsT0FBTyxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDMUQsSUFBSSxTQUFTLENBQUMsWUFBWSxDQUFDLEVBQUU7Z0JBQzNCLE9BQU8sU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ2hDO1lBQ0QsTUFBTSxTQUFTLEdBQUcsSUFBSSxnQkFBSSxDQUFDO2dCQUN6QixJQUFJLEVBQUUsS0FBSztnQkFDWCxVQUFVLEVBQUUsT0FBc0I7YUFDbkMsQ0FBQyxDQUFDO1lBQ0gsU0FBUyxDQUFDLFlBQVksQ0FBQyxHQUFHLFNBQVMsQ0FBQztZQUNwQyxPQUFPLFNBQVMsQ0FBQztRQUNuQjtZQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMsc0JBQXNCLEdBQUcsU0FBUyxDQUFDLENBQUM7S0FDdkQ7QUFDSCxDQUFDO0FBaENELDBDQWdDQyJ9