"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.registerCos = registerCos; exports.getCos = getCos; exports.composeFileUrl = composeFileUrl; const tslib_1 = require("tslib"); const assert_1 = require("oak-domain/lib/utils/assert"); const unknown_1 = tslib_1.__importDefault(require("./unknown")); const CosDict = { unknown: new unknown_1.default(), //只用来返回extraFile.extra1 }; /** * 注入一个其它OSS上实现的uploader类 * @param clazz */ function registerCos(clazz) { const instance = new clazz(); CosDict[instance.name] = instance; } function getCos(origin) { (0, assert_1.assert)(CosDict.hasOwnProperty(origin)); return CosDict[origin]; } function composeFileUrl(options) { const { origin } = options.extraFile; const cos = CosDict[origin]; return cos.composeFileUrl(options); }