trm-core
Version:
TRM (Transport Request Manager) Core
36 lines (35 loc) • 1.54 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.RegistryProvider = void 0;
const FileSystem_1 = require("./FileSystem");
const RegistryV2_1 = require("./RegistryV2");
const RegistryType_1 = require("./RegistryType");
var RegistryProvider;
(function (RegistryProvider) {
RegistryProvider.registry = [];
function getRegistry(endpoint, filePath) {
var foundRegistry;
if (endpoint) {
endpoint = endpoint.toLowerCase().trim();
}
if (!endpoint || endpoint === RegistryV2_1.PUBLIC_RESERVED_KEYWORD) {
foundRegistry = RegistryProvider.registry.find(o => o.getRegistryType() === RegistryType_1.RegistryType.PUBLIC);
if (!foundRegistry) {
foundRegistry = new RegistryV2_1.RegistryV2(RegistryV2_1.PUBLIC_RESERVED_KEYWORD);
RegistryProvider.registry.push(foundRegistry);
}
}
else if (endpoint === FileSystem_1.LOCAL_RESERVED_KEYWORD) {
foundRegistry = new FileSystem_1.FileSystem(filePath);
}
else {
foundRegistry = RegistryProvider.registry.find(o => o.endpoint === endpoint);
if (!foundRegistry) {
foundRegistry = new RegistryV2_1.RegistryV2(endpoint, endpoint);
RegistryProvider.registry.push(foundRegistry);
}
}
return foundRegistry;
}
RegistryProvider.getRegistry = getRegistry;
})(RegistryProvider || (exports.RegistryProvider = RegistryProvider = {}));