UNPKG

@itwin/object-storage-core

Version:
28 lines 1.74 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.FrontendStorageDependency = void 0; /*--------------------------------------------------------------------------------------------- * Copyright (c) Bentley Systems, Incorporated. All rights reserved. * See LICENSE.md in the project root for license terms and full copyright notice. *--------------------------------------------------------------------------------------------*/ const internal_1 = require("@itwin/cloud-agnostic-core/lib/internal"); const cloud_agnostic_core_1 = require("@itwin/cloud-agnostic-core"); const common_1 = require("../common"); const StrategyFrontendStorage_1 = require("./StrategyFrontendStorage"); class FrontendStorageDependency extends cloud_agnostic_core_1.StrategyDependency { static dependencyType = "FrontendStorage"; dependencyType = FrontendStorageDependency.dependencyType; registerStrategy(container, config) { if (!config.dependencyName) throw new internal_1.ConfigError("dependencyName"); container.registerFactory(common_1.Types.Frontend.frontendStorage, (c) => { const storagesInstances = c.resolveAll((cloud_agnostic_core_1.StrategyInstance)); return new StrategyFrontendStorage_1.StrategyFrontendStorage(storagesInstances); }); } _registerInstance(container, childContainer, _config) { container.registerFactory((cloud_agnostic_core_1.StrategyInstance), (_c) => new cloud_agnostic_core_1.StrategyInstance(childContainer.resolve(common_1.Types.Frontend.frontendStorage), this.dependencyName)); } } exports.FrontendStorageDependency = FrontendStorageDependency; //# sourceMappingURL=FrontendStorageDependency.js.map