All Downloads are FREE. Search and download functionalities are using the official Maven repository.

package.dist.src.preview-storage-client.js Maven / Gradle / Ivy

The newest version!
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.PreviewStorageClient = void 0;
const clients_1 = require("@gomomento/sdk-core/dist/src/internal/clients");
const storage_control_client_1 = require("./internal/storage-control-client");
const storage_data_client_1 = require("./internal/storage-data-client");
const index_1 = require("./index");
const sdk_core_1 = require("@gomomento/sdk-core");
/**
 * A client for interacting with the Momento Storage service.
 * Warning: This client is in preview and may change in future releases.
 */
class PreviewStorageClient extends clients_1.AbstractStorageClient {
    constructor(props) {
        var _a, _b;
        const allProps = {
            configuration: (_a = props.configuration) !== null && _a !== void 0 ? _a : getDefaultStorageConfiguration(),
            credentialProvider: (_b = props.credentialProvider) !== null && _b !== void 0 ? _b : (0, sdk_core_1.getDefaultCredentialProvider)(),
        };
        const controlClient = createControlClient(allProps);
        const dataClient = createDataClient(allProps);
        super([dataClient], controlClient);
    }
    close() {
        this.dataClients.forEach(client => client.close());
        this.controlClient.close();
    }
}
exports.PreviewStorageClient = PreviewStorageClient;
function createControlClient(props) {
    return new storage_control_client_1.StorageControlClient(props);
}
function createDataClient(props) {
    return new storage_data_client_1.StorageDataClient(props);
}
function getDefaultStorageConfiguration() {
    return index_1.StorageConfigurations.Laptop.latest();
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy1zdG9yYWdlLWNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcmV2aWV3LXN0b3JhZ2UtY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJFQUl1RDtBQUl2RCw4RUFBdUU7QUFDdkUsd0VBQWlFO0FBRWpFLG1DQUE4QztBQUM5QyxrREFBaUU7QUFFakU7OztHQUdHO0FBQ0gsTUFBYSxvQkFDWCxTQUFRLCtCQUFxQjtJQUc3QixZQUFZLEtBQXlCOztRQUNuQyxNQUFNLFFBQVEsR0FBMEI7WUFDdEMsYUFBYSxFQUFFLE1BQUEsS0FBSyxDQUFDLGFBQWEsbUNBQUksOEJBQThCLEVBQUU7WUFDdEUsa0JBQWtCLEVBQ2hCLE1BQUEsS0FBSyxDQUFDLGtCQUFrQixtQ0FBSSxJQUFBLHVDQUE0QixHQUFFO1NBQzdELENBQUM7UUFFRixNQUFNLGFBQWEsR0FBMEIsbUJBQW1CLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0UsTUFBTSxVQUFVLEdBQXVCLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2xFLEtBQUssQ0FBQyxDQUFDLFVBQVUsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzdCLENBQUM7Q0FDRjtBQXBCRCxvREFvQkM7QUFFRCxTQUFTLG1CQUFtQixDQUMxQixLQUE0QjtJQUU1QixPQUFPLElBQUksNkNBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDekMsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBQUMsS0FBNEI7SUFDcEQsT0FBTyxJQUFJLHVDQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3RDLENBQUM7QUFFRCxTQUFTLDhCQUE4QjtJQUNyQyxPQUFPLDZCQUFxQixDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztBQUMvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWJzdHJhY3RTdG9yYWdlQ2xpZW50LFxuICBJU3RvcmFnZUNvbnRyb2xDbGllbnQsXG4gIElTdG9yYWdlRGF0YUNsaWVudCxcbn0gZnJvbSAnQGdvbW9tZW50by9zZGstY29yZS9kaXN0L3NyYy9pbnRlcm5hbC9jbGllbnRzJztcbmltcG9ydCB7SVN0b3JhZ2VDbGllbnR9IGZyb20gJ0Bnb21vbWVudG8vc2RrLWNvcmUvZGlzdC9zcmMvY2xpZW50cy9JU3RvcmFnZUNsaWVudCc7XG5pbXBvcnQge1N0b3JhZ2VDbGllbnRQcm9wc30gZnJvbSAnLi9zdG9yYWdlLWNsaWVudC1wcm9wcyc7XG5pbXBvcnQge1N0b3JhZ2VDbGllbnRBbGxQcm9wc30gZnJvbSAnLi9pbnRlcm5hbC9zdG9yYWdlLWNsaWVudC1hbGwtcHJvcHMnO1xuaW1wb3J0IHtTdG9yYWdlQ29udHJvbENsaWVudH0gZnJvbSAnLi9pbnRlcm5hbC9zdG9yYWdlLWNvbnRyb2wtY2xpZW50JztcbmltcG9ydCB7U3RvcmFnZURhdGFDbGllbnR9IGZyb20gJy4vaW50ZXJuYWwvc3RvcmFnZS1kYXRhLWNsaWVudCc7XG5pbXBvcnQge1N0b3JhZ2VDb25maWd1cmF0aW9ufSBmcm9tICcuL2NvbmZpZy9zdG9yYWdlLWNvbmZpZ3VyYXRpb24nO1xuaW1wb3J0IHtTdG9yYWdlQ29uZmlndXJhdGlvbnN9IGZyb20gJy4vaW5kZXgnO1xuaW1wb3J0IHtnZXREZWZhdWx0Q3JlZGVudGlhbFByb3ZpZGVyfSBmcm9tICdAZ29tb21lbnRvL3Nkay1jb3JlJztcblxuLyoqXG4gKiBBIGNsaWVudCBmb3IgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgTW9tZW50byBTdG9yYWdlIHNlcnZpY2UuXG4gKiBXYXJuaW5nOiBUaGlzIGNsaWVudCBpcyBpbiBwcmV2aWV3IGFuZCBtYXkgY2hhbmdlIGluIGZ1dHVyZSByZWxlYXNlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFByZXZpZXdTdG9yYWdlQ2xpZW50XG4gIGV4dGVuZHMgQWJzdHJhY3RTdG9yYWdlQ2xpZW50XG4gIGltcGxlbWVudHMgSVN0b3JhZ2VDbGllbnRcbntcbiAgY29uc3RydWN0b3IocHJvcHM6IFN0b3JhZ2VDbGllbnRQcm9wcykge1xuICAgIGNvbnN0IGFsbFByb3BzOiBTdG9yYWdlQ2xpZW50QWxsUHJvcHMgPSB7XG4gICAgICBjb25maWd1cmF0aW9uOiBwcm9wcy5jb25maWd1cmF0aW9uID8/IGdldERlZmF1bHRTdG9yYWdlQ29uZmlndXJhdGlvbigpLFxuICAgICAgY3JlZGVudGlhbFByb3ZpZGVyOlxuICAgICAgICBwcm9wcy5jcmVkZW50aWFsUHJvdmlkZXIgPz8gZ2V0RGVmYXVsdENyZWRlbnRpYWxQcm92aWRlcigpLFxuICAgIH07XG5cbiAgICBjb25zdCBjb250cm9sQ2xpZW50OiBJU3RvcmFnZUNvbnRyb2xDbGllbnQgPSBjcmVhdGVDb250cm9sQ2xpZW50KGFsbFByb3BzKTtcbiAgICBjb25zdCBkYXRhQ2xpZW50OiBJU3RvcmFnZURhdGFDbGllbnQgPSBjcmVhdGVEYXRhQ2xpZW50KGFsbFByb3BzKTtcbiAgICBzdXBlcihbZGF0YUNsaWVudF0sIGNvbnRyb2xDbGllbnQpO1xuICB9XG5cbiAgY2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhQ2xpZW50cy5mb3JFYWNoKGNsaWVudCA9PiBjbGllbnQuY2xvc2UoKSk7XG4gICAgdGhpcy5jb250cm9sQ2xpZW50LmNsb3NlKCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gY3JlYXRlQ29udHJvbENsaWVudChcbiAgcHJvcHM6IFN0b3JhZ2VDbGllbnRBbGxQcm9wc1xuKTogSVN0b3JhZ2VDb250cm9sQ2xpZW50IHtcbiAgcmV0dXJuIG5ldyBTdG9yYWdlQ29udHJvbENsaWVudChwcm9wcyk7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZURhdGFDbGllbnQocHJvcHM6IFN0b3JhZ2VDbGllbnRBbGxQcm9wcyk6IElTdG9yYWdlRGF0YUNsaWVudCB7XG4gIHJldHVybiBuZXcgU3RvcmFnZURhdGFDbGllbnQocHJvcHMpO1xufVxuXG5mdW5jdGlvbiBnZXREZWZhdWx0U3RvcmFnZUNvbmZpZ3VyYXRpb24oKTogU3RvcmFnZUNvbmZpZ3VyYXRpb24ge1xuICByZXR1cm4gU3RvcmFnZUNvbmZpZ3VyYXRpb25zLkxhcHRvcC5sYXRlc3QoKTtcbn1cbiJdfQ==




© 2015 - 2024 Weber Informatics LLC | Privacy Policy