@itwin/object-storage-azure
Version:
Object storage implementation using Azure Blob Storage
28 lines • 1.06 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.FrontendBlockBlobClientWrapper = void 0;
const internal_1 = require("@itwin/object-storage-core/lib/frontend/internal");
class FrontendBlockBlobClientWrapper {
_client;
constructor(_client) {
this._client = _client;
}
async download() {
const downloadResponse = await this._client.download();
return downloadResponse.blobBody;
}
async upload(data, metadata) {
await this._client.upload(data, data.byteLength, { metadata });
}
async uploadInMultipleParts(data, options) {
const { metadata, partSize, queueSize } = options ?? {};
const dataBuffer = await (0, internal_1.streamToBufferFrontend)(data);
await this._client.uploadData(dataBuffer, {
metadata,
blockSize: partSize,
concurrency: queueSize,
});
}
}
exports.FrontendBlockBlobClientWrapper = FrontendBlockBlobClientWrapper;
//# sourceMappingURL=FrontendBlockBlobClientWrapper.js.map