@itwin/object-storage-oss
Version:
Object storage implementation using OSS
29 lines • 1.7 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.OssServerStorageBindings = 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 Core = require("@alicloud/pop-core");
const object_storage_core_1 = require("@itwin/object-storage-core");
const object_storage_s3_1 = require("@itwin/object-storage-s3");
const common_1 = require("../common");
const internal_1 = require("./internal");
const OssTransferConfigProvider_1 = require("./OssTransferConfigProvider");
class OssServerStorageBindings extends object_storage_s3_1.S3ServerStorageBindings {
dependencyName = common_1.Constants.storageType;
register(container, config) {
super.register(container, config);
container.unregister(object_storage_core_1.Types.Server.transferConfigProvider);
container.registerFactory(object_storage_core_1.Types.Server.transferConfigProvider, (c) => {
return new OssTransferConfigProvider_1.OssTransferConfigProvider(c.resolve(Core), c.resolve(object_storage_s3_1.Types.S3Server.config));
});
container.registerFactory(Core, (c) => {
const resolvedConfig = c.resolve(object_storage_s3_1.Types.S3Server.config);
return (0, internal_1.createCore)(resolvedConfig);
});
}
}
exports.OssServerStorageBindings = OssServerStorageBindings;
//# sourceMappingURL=OssServerStorageBindings.js.map