UNPKG

@softvision/webpdf-wsclient-typescript

Version:

A simplified and optimized API client library for the webPDF server

49 lines 2.65 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.RestWebService = void 0; const AbstractWebService_1 = require("../AbstractWebService"); const session_1 = require("../../session"); const WebServiceType_1 = require("../WebServiceType"); const exception_1 = require("../../exception"); class RestWebService extends AbstractWebService_1.AbstractWebService { constructor(session, webServiceType) { super(webServiceType, session); } process(sourceDocument) { return __awaiter(this, void 0, void 0, function* () { let endpoint = this.getWebServiceType().getRestEndpoint().replace(WebServiceType_1.WebServiceType.ID_PLACEHOLDER, typeof sourceDocument !== "undefined" ? sourceDocument.getDocumentId() : "new"); let url = this.getSession().getURL(endpoint); let documentManager = this.getSession().getDocumentManager(); if (typeof sourceDocument === "undefined") { url.searchParams.set("history", String(documentManager.isDocumentHistoryActive())); } for (let [key, value] of this.getAdditionalParameter().entries()) { url.searchParams.set(key, value); } let request = yield session_1.HttpRestRequest.createRequest(this.getSession()) .buildRequest(session_1.HttpMethod.POST, url, JSON.stringify(this.getWebServiceOptions()), session_1.DataFormats.JSON.getMimeType()); let documentFile = yield request.executeRequest(); return documentManager.synchronizeDocument(documentFile); }); } getWebServiceOptions() { try { return this.getOperationData().toJson(); } catch (ex) { throw new exception_1.ClientResultException(exception_1.WsclientErrors.XML_OR_JSON_CONVERSION_FAILURE, ex); } } ; } exports.RestWebService = RestWebService; //# sourceMappingURL=RestWebService.js.map