UNPKG

@softvision/webpdf-wsclient-typescript

Version:

A simplified and optimized API client library for the webPDF server

579 lines 31.2 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.AbstractAdministrationManager = void 0; const generated_sources_1 = require("../../../generated-sources"); const DataFormat_1 = require("../../DataFormat"); const exception_1 = require("../../../exception"); const connection_1 = require("../../connection"); class AbstractAdministrationManager { constructor(session) { this.session = session; } getSession() { return this.session; } validateUser() { return __awaiter(this, void 0, void 0, function* () { let user = yield this.session.getUser(); if (!user.isAdmin) { throw new exception_1.ClientResultException(exception_1.WsclientErrors.ADMIN_PERMISSION_ERROR); } }); } fetchLogLength(date) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let searchParams = new URLSearchParams(); if (typeof date !== "undefined") { searchParams.set("date", date); } let request = yield connection_1.HttpRestRequest.createRequest(this.session) .setAcceptHeader(DataFormat_1.DataFormats.ANY.getMimeType()) .buildRequest(connection_1.HttpMethod.HEAD, this.session.getURL("admin/server/log", searchParams)); let response = yield request.execute(); let contentLength = 0; if (typeof response.headers[connection_1.HttpHeaders.CONTENT_LENGTH.toLowerCase()] !== "undefined") { contentLength = response.headers[connection_1.HttpHeaders.CONTENT_LENGTH.toLowerCase()]; } return contentLength; }); } fetchLog(range, date) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let searchParams = new URLSearchParams(); if (typeof date !== "undefined") { searchParams.set("date", date); } let request = yield connection_1.HttpRestRequest.createRequest(this.session) .setAcceptHeader(DataFormat_1.DataFormats.PLAIN.getMimeType()) .setAdditionalHeader(connection_1.HttpHeaders.RANGE, "bytes=" + (range || "0-")) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/server/log", searchParams)); return yield request.executeRequest(); }); } fetchServerStatus() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/server/status")); return generated_sources_1.ServerStatus.fromJson(yield request.executeRequest()); }); } buildSupportPackage(group, start, end, options) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let searchParams = new URLSearchParams(); if (typeof group !== "undefined") { for (let groupItem of group) { searchParams.append("group", groupItem); } } if (typeof start !== "undefined") { searchParams.set("start", start); } if (typeof end !== "undefined") { searchParams.set("end", end); } let request = yield connection_1.HttpRestRequest.createRequest(this.session) .setAcceptHeader(DataFormat_1.DataFormats.OCTET_STREAM.getMimeType()) .setAbortSignal(options === null || options === void 0 ? void 0 : options.abortSignal) .setOnDownloadProgress(options === null || options === void 0 ? void 0 : options.onProgress) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/server/support", searchParams)); return yield request.executeRequest(); }); } restartServer() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/server/restart")); yield request.executeRequest(); }); } fetchApplicationConfiguration() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/configuration/application")); let applicationConfiguration = generated_sources_1.ApplicationConfiguration.fromJson(yield request.executeRequest()); this.applicationConfiguration = applicationConfiguration.configuration; this.globalKeyStore = applicationConfiguration.globalKeyStore; return this.applicationConfiguration; }); } getApplicationConfiguration() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); if (typeof this.applicationConfiguration === "undefined") { return yield this.fetchApplicationConfiguration(); } return this.applicationConfiguration; }); } updateApplicationConfiguration(configuration, checks) { return __awaiter(this, void 0, void 0, function* () { var _a; yield this.validateUser(); let applicationConfiguration = generated_sources_1.ApplicationConfiguration.fromJson({ configuration: configuration, configurationChecks: checks, configurationMode: generated_sources_1.ConfigurationMode.Write, configurationType: generated_sources_1.ConfigurationType.Application, globalKeyStore: yield this.getGlobalKeyStore() }); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/configuration/"), this.prepareHttpEntity(applicationConfiguration), DataFormat_1.DataFormats.JSON.getMimeType()); let configurationResult = generated_sources_1.ConfigurationResult.fromJson(yield request.executeRequest()); if (((_a = configurationResult.error) === null || _a === void 0 ? void 0 : _a.code) === 0) { this.applicationConfiguration = configuration; } return configurationResult; }); } validateApplicationConfiguration(configuration, checks) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let applicationConfiguration = generated_sources_1.ApplicationConfiguration.fromJson({ configuration: configuration, configurationChecks: checks, configurationMode: generated_sources_1.ConfigurationMode.Validate, configurationType: generated_sources_1.ConfigurationType.Application, globalKeyStore: yield this.getGlobalKeyStore() }); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/configuration/"), this.prepareHttpEntity(applicationConfiguration), DataFormat_1.DataFormats.JSON.getMimeType()); return generated_sources_1.ConfigurationResult.fromJson(yield request.executeRequest()); }); } fetchServerConfiguration() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/configuration/server")); let serverConfiguration = generated_sources_1.ServerConfiguration.fromJson(yield request.executeRequest()); this.serverConfiguration = serverConfiguration.configuration; this.connectorKeyStore = serverConfiguration.connectorKeyStore; this.trustStoreKeyStore = serverConfiguration.trustStoreKeyStore; return this.serverConfiguration; }); } getServerConfiguration() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); if (typeof this.serverConfiguration === "undefined") { return yield this.fetchServerConfiguration(); } return this.serverConfiguration; }); } updateServerConfiguration(configuration, checks) { return __awaiter(this, void 0, void 0, function* () { var _a; yield this.validateUser(); let serverConfiguration = generated_sources_1.ServerConfiguration.fromJson({ configuration: configuration, configurationChecks: checks, configurationMode: generated_sources_1.ConfigurationMode.Write, configurationType: generated_sources_1.ConfigurationType.Server, trustStoreKeyStore: yield this.getTrustStoreKeyStore(), connectorKeyStore: yield this.getConnectorKeyStore() }); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/configuration/"), this.prepareHttpEntity(serverConfiguration), DataFormat_1.DataFormats.JSON.getMimeType()); let configurationResult = generated_sources_1.ConfigurationResult.fromJson(yield request.executeRequest()); if (((_a = configurationResult.error) === null || _a === void 0 ? void 0 : _a.code) === 0) { this.serverConfiguration = configuration; } return configurationResult; }); } validateServerConfiguration(configuration, checks) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let serverConfiguration = generated_sources_1.ServerConfiguration.fromJson({ configuration: configuration, configurationChecks: checks, configurationMode: generated_sources_1.ConfigurationMode.Validate, configurationType: generated_sources_1.ConfigurationType.Server, trustStoreKeyStore: yield this.getTrustStoreKeyStore(), connectorKeyStore: yield this.getConnectorKeyStore() }); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/configuration/"), this.prepareHttpEntity(serverConfiguration), DataFormat_1.DataFormats.JSON.getMimeType()); return generated_sources_1.ConfigurationResult.fromJson(yield request.executeRequest()); }); } fetchUserConfiguration() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/configuration/user")); this.userConfiguration = generated_sources_1.UserConfiguration.fromJson(yield request.executeRequest()).configuration; return this.userConfiguration; }); } getUserConfiguration() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); if (typeof this.userConfiguration === "undefined") { return yield this.fetchUserConfiguration(); } return this.userConfiguration; }); } updateUserConfiguration(configuration, checks) { return __awaiter(this, void 0, void 0, function* () { var _a; yield this.validateUser(); let userConfiguration = generated_sources_1.UserConfiguration.fromJson({ configuration: configuration, configurationChecks: checks, configurationMode: generated_sources_1.ConfigurationMode.Write, configurationType: generated_sources_1.ConfigurationType.User }); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/configuration/"), this.prepareHttpEntity(userConfiguration), DataFormat_1.DataFormats.JSON.getMimeType()); let configurationResult = generated_sources_1.ConfigurationResult.fromJson(yield request.executeRequest()); if (((_a = configurationResult.error) === null || _a === void 0 ? void 0 : _a.code) === 0) { this.userConfiguration = configuration; } return configurationResult; }); } validateUserConfiguration(configuration, checks) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let userConfiguration = generated_sources_1.UserConfiguration.fromJson({ configuration: configuration, configurationChecks: checks, configurationMode: generated_sources_1.ConfigurationMode.Validate, configurationType: generated_sources_1.ConfigurationType.User }); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/configuration/"), this.prepareHttpEntity(userConfiguration), DataFormat_1.DataFormats.JSON.getMimeType()); return generated_sources_1.ConfigurationResult.fromJson(yield request.executeRequest()); }); } fetchLogConfiguration() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/configuration/log")); this.logConfiguration = generated_sources_1.LogConfiguration.fromJson(yield request.executeRequest()).configuration; return this.logConfiguration; }); } getLogConfiguration() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); if (typeof this.logConfiguration === "undefined") { return yield this.fetchLogConfiguration(); } return this.logConfiguration; }); } updateLogConfiguration(configuration, checks) { return __awaiter(this, void 0, void 0, function* () { var _a; yield this.validateUser(); let logConfiguration = generated_sources_1.LogConfiguration.fromJson({ configuration: configuration, configurationChecks: checks, configurationMode: generated_sources_1.ConfigurationMode.Write, configurationType: generated_sources_1.ConfigurationType.Log }); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/configuration/"), this.prepareHttpEntity(logConfiguration), DataFormat_1.DataFormats.JSON.getMimeType()); let configurationResult = generated_sources_1.ConfigurationResult.fromJson(yield request.executeRequest()); if (((_a = configurationResult.error) === null || _a === void 0 ? void 0 : _a.code) === 0) { this.logConfiguration = configuration; } return configurationResult; }); } validateLogConfiguration(configuration, checks) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let logConfiguration = generated_sources_1.LogConfiguration.fromJson({ configuration: configuration, configurationChecks: checks, configurationMode: generated_sources_1.ConfigurationMode.Validate, configurationType: generated_sources_1.ConfigurationType.Log }); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/configuration/"), this.prepareHttpEntity(logConfiguration), DataFormat_1.DataFormats.JSON.getMimeType()); return generated_sources_1.ConfigurationResult.fromJson(yield request.executeRequest()); }); } fetchGlobalKeyStore() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); yield this.fetchApplicationConfiguration(); return this.globalKeyStore; }); } getGlobalKeyStore() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); if (typeof this.globalKeyStore === "undefined") { yield this.fetchGlobalKeyStore(); } return this.globalKeyStore; }); } setGlobalKeyStore(keystore) { this.globalKeyStore = keystore; } fetchTrustStoreKeyStore() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); yield this.fetchServerConfiguration(); return this.trustStoreKeyStore; }); } getTrustStoreKeyStore() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); if (typeof this.trustStoreKeyStore === "undefined") { yield this.fetchTrustStoreKeyStore(); } return this.trustStoreKeyStore; }); } setTrustStoreKeyStore(keystore) { this.trustStoreKeyStore = keystore; } fetchConnectorKeyStore() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); yield this.fetchServerConfiguration(); return this.connectorKeyStore; }); } getConnectorKeyStore() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); if (typeof this.connectorKeyStore === "undefined") { yield this.fetchConnectorKeyStore(); } return this.connectorKeyStore; }); } setConnectorKeyStore(keystore) { this.connectorKeyStore = keystore; } testExecutables(configuration, executables) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let applicationConfiguration = generated_sources_1.ApplicationConfiguration.fromJson({ configuration: configuration, configurationChecks: [ { checkType: generated_sources_1.ApplicationCheckMode.Executable, executables: executables } ], configurationMode: generated_sources_1.ConfigurationMode.Validate, configurationType: generated_sources_1.ConfigurationType.Application, globalKeyStore: yield this.getGlobalKeyStore() }); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/configuration/"), this.prepareHttpEntity(applicationConfiguration), DataFormat_1.DataFormats.JSON.getMimeType()); return generated_sources_1.ConfigurationResult.fromJson(yield request.executeRequest()); }); } fetchDatastore(group, filename) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let searchParams = new URLSearchParams(); if (typeof filename !== "undefined") { searchParams.set("name", filename); } let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/datastore/" + group, searchParams)); return generated_sources_1.FileDataStore.fromJson(yield request.executeRequest()); }); } updateDatastore(fileDataStore) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/datastore/"), this.prepareHttpEntity(fileDataStore), DataFormat_1.DataFormats.JSON.getMimeType()); yield request.executeRequest(); }); } deleteDatastore(group, filename) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let searchParams = new URLSearchParams(); if (typeof filename !== "undefined") { searchParams.set("name", filename); } let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.DELETE, this.session.getURL("admin/datastore/" + group, searchParams)); yield request.executeRequest(); }); } fetchServerStatistic(dataSource, aggregation, webservices, start, end) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let searchParams = new URLSearchParams(); searchParams.set("start", start.toISOString()); searchParams.set("end", end.toISOString()); for (let webservice of webservices) { searchParams.append("webservice", webservice); } let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/statistic/" + [dataSource, aggregation].join("/"), searchParams)); return generated_sources_1.Statistic.fromJson(yield request.executeRequest()); }); } fetchSessionTable() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/session/table")); return generated_sources_1.SessionTable.fromJson(yield request.executeRequest()); }); } closeSession(sessionId) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/session/" + sessionId + "/close")); yield request.executeRequest(); }); } prepareHttpEntity(parameter) { try { return JSON.stringify(parameter.toJson()); } catch (ex) { throw new exception_1.ClientResultException(exception_1.WsclientErrors.XML_OR_JSON_CONVERSION_FAILURE, ex); } } fetchClusterConfiguration() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/configuration/cluster")); let clusterConfiguration = generated_sources_1.ClusterConfiguration.fromJson(yield request.executeRequest()); this.clusterConfiguration = clusterConfiguration.configuration; return this.clusterConfiguration; }); } getClusterConfiguration() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); if (typeof this.clusterConfiguration === "undefined") { return yield this.fetchClusterConfiguration(); } return this.clusterConfiguration; }); } updateClusterConfiguration(configuration, checks) { return __awaiter(this, void 0, void 0, function* () { var _a; yield this.validateUser(); let clusterConfiguration = generated_sources_1.ClusterConfiguration.fromJson({ configuration: configuration, configurationChecks: checks, configurationMode: generated_sources_1.ConfigurationMode.Write, configurationType: generated_sources_1.ConfigurationType.Cluster }); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/configuration/"), this.prepareHttpEntity(clusterConfiguration), DataFormat_1.DataFormats.JSON.getMimeType()); let configurationResult = generated_sources_1.ConfigurationResult.fromJson(yield request.executeRequest()); if (((_a = configurationResult.error) === null || _a === void 0 ? void 0 : _a.code) === 0) { this.clusterConfiguration = configuration; } return configurationResult; }); } validateClusterConfiguration(configuration, checks) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let clusterConfiguration = generated_sources_1.ClusterConfiguration.fromJson({ configuration: configuration, configurationChecks: checks, configurationMode: generated_sources_1.ConfigurationMode.Validate, configurationType: generated_sources_1.ConfigurationType.Cluster }); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/configuration/"), this.prepareHttpEntity(clusterConfiguration), DataFormat_1.DataFormats.JSON.getMimeType()); return generated_sources_1.ConfigurationResult.fromJson(yield request.executeRequest()); }); } fetchProviderConfiguration() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/configuration/provider")); let providerConfiguration = generated_sources_1.ProviderConfiguration.fromJson(yield request.executeRequest()); this.providerConfiguration = providerConfiguration.configuration; return this.providerConfiguration; }); } getProviderConfiguration() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); if (typeof this.providerConfiguration === "undefined") { return yield this.fetchProviderConfiguration(); } return this.providerConfiguration; }); } updateProviderConfiguration(configuration, checks) { return __awaiter(this, void 0, void 0, function* () { var _a; yield this.validateUser(); let providerConfiguration = generated_sources_1.ProviderConfiguration.fromJson({ configuration: configuration, configurationChecks: checks, configurationMode: generated_sources_1.ConfigurationMode.Write, configurationType: generated_sources_1.ConfigurationType.Provider }); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/configuration/"), this.prepareHttpEntity(providerConfiguration), DataFormat_1.DataFormats.JSON.getMimeType()); let configurationResult = generated_sources_1.ConfigurationResult.fromJson(yield request.executeRequest()); if (((_a = configurationResult.error) === null || _a === void 0 ? void 0 : _a.code) === 0) { this.providerConfiguration = configuration; } return configurationResult; }); } validateProviderConfiguration(configuration, checks) { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let providerConfiguration = generated_sources_1.ProviderConfiguration.fromJson({ configuration: configuration, configurationChecks: checks, configurationMode: generated_sources_1.ConfigurationMode.Validate, configurationType: generated_sources_1.ConfigurationType.Provider }); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.POST, this.session.getURL("admin/configuration/"), this.prepareHttpEntity(providerConfiguration), DataFormat_1.DataFormats.JSON.getMimeType()); return generated_sources_1.ConfigurationResult.fromJson(yield request.executeRequest()); }); } fetchClusterStatus() { return __awaiter(this, void 0, void 0, function* () { yield this.validateUser(); let request = yield connection_1.HttpRestRequest.createRequest(this.session) .buildRequest(connection_1.HttpMethod.GET, this.session.getURL("admin/cluster/status")); return generated_sources_1.ClusterStatus.fromJson(yield request.executeRequest()); }); } } exports.AbstractAdministrationManager = AbstractAdministrationManager; //# sourceMappingURL=AbstractAdministrationManager.js.map