trm-core
Version:
TRM (Transport Request Manager) Core
281 lines (280 loc) • 10.6 kB
JavaScript
"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());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.RESTSystemConnector = void 0;
const logger_1 = require("../logger");
const SystemConnectorBase_1 = require("./SystemConnectorBase");
const client_1 = require("../client");
const normalize_url_1 = __importDefault(require("@esm2cjs/normalize-url"));
const ENDPOINT_RESOURCE_BASE = '/ztrmserver';
const NONE_DEST = 'NONE';
class RESTSystemConnector extends SystemConnectorBase_1.SystemConnectorBase {
constructor(_connection, _login) {
super();
this._connection = _connection;
this._login = _login;
this.supportedBulk = {
getTransportObjects: true,
getExistingObjects: true
};
this._login.user = this._login.user.toUpperCase();
this._lang = this._login.lang;
this._user = this._login.user;
logger_1.Logger.log(`REST connection data before normalize: ${JSON.stringify(this._connection)}`, true);
this._connection.endpoint = (0, normalize_url_1.default)(this._connection.endpoint, {
removeTrailingSlash: true
});
if (!new RegExp(`${ENDPOINT_RESOURCE_BASE}$`, 'gmi').test(this._connection.endpoint)) {
this._connection.endpoint = `${this._connection.endpoint}${ENDPOINT_RESOURCE_BASE}`;
}
if (!this._connection.rfcdest || this._connection.rfcdest === NONE_DEST) {
this._connection.rfcdest = NONE_DEST;
}
else {
this.supportedBulk.getTransportObjects = false;
this.supportedBulk.getExistingObjects = false;
}
this._connection.rfcdest = this._connection.rfcdest.toUpperCase().trim();
logger_1.Logger.log(`REST connection data after normalize: ${JSON.stringify(this._connection)}`, true);
this._client = new client_1.RESTClient(this._connection.endpoint, this._connection.rfcdest, this._login, this._lang[0]);
}
getSysname() {
return this.getDest();
}
getDest() {
return this._dest || this._connection.endpoint;
}
getLangu(c) {
return this.getLogonLanguage(c);
}
getLogonLanguage(c = false) {
if (c) {
return this._lang[0];
}
else {
return this._lang;
}
}
readTable(tableName, fields, options) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.readTable(tableName, fields, options);
});
}
getTrmServerVersion() {
return __awaiter(this, void 0, void 0, function* () {
return this._client.getTrmServerVersion();
});
}
getTrmRestVersion() {
return __awaiter(this, void 0, void 0, function* () {
return this._client.getTrmRestVersion();
});
}
listDevclassObjects(devclass) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.getDevclassObjects(devclass);
});
}
tdevcInterface(devclass, parentcl, rmParentCl, devlayer) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.tdevcInterface(devclass, parentcl, rmParentCl, devlayer);
});
}
getR3transInfo() {
return __awaiter(this, void 0, void 0, function* () {
return this._client.getR3transInfo();
});
}
getConnectionData() {
return this._connection;
}
getLogonUser() {
return this._user;
}
connect() {
return __awaiter(this, void 0, void 0, function* () {
logger_1.Logger.loading(`Connecting to ${this.getDest()}...`);
try {
yield this._client.open();
this._dest = yield this._client.getDest();
logger_1.Logger.success(`Connected to ${this.getDest()} as ${this._user}.`, false);
}
catch (e) {
logger_1.Logger.error(`Connection to ${this.getDest()} as ${this._user} failed.`, false);
throw e;
}
});
}
checkConnection() {
return __awaiter(this, void 0, void 0, function* () {
return this._client.checkConnection();
});
}
ping() {
return __awaiter(this, void 0, void 0, function* () {
return yield this._client.trmServerPing();
});
}
getFileSystem() {
return __awaiter(this, void 0, void 0, function* () {
return this._client.getFileSystem();
});
}
getDirTrans() {
return __awaiter(this, void 0, void 0, function* () {
return this._client.getDirTrans();
});
}
getBinaryFile(filePath) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.getBinaryFile(filePath);
});
}
writeBinaryFile(filePath, binary) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.writeBinaryFile(filePath, binary);
});
}
createTocTransport(text, target) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.createTocTransport(text, target);
});
}
createWbTransport(text, target) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.createWbTransport(text, target);
});
}
setTransportDoc(trkorr, doc) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.setTransportDoc(trkorr, doc);
});
}
addToTransportRequest(trkorr, content, lock) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.addToTransportRequest(trkorr, content, lock);
});
}
repositoryEnvironment(objectType, objectName) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.repositoryEnvironment(objectType, objectName);
});
}
deleteTrkorr(trkorr) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.deleteTrkorr(trkorr);
});
}
releaseTrkorr(trkorr, lock, timeout) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.releaseTrkorr(trkorr, lock, timeout);
});
}
addSkipTrkorr(trkorr) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.addSkipTrkorr(trkorr);
});
}
addSrcTrkorr(trkorr) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.addSrcTrkorr(trkorr);
});
}
readTmsQueue(target) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.readTmsQueue(target);
});
}
createPackage(scompkdtln) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.createPackage(scompkdtln);
});
}
getDefaultTransportLayer() {
return __awaiter(this, void 0, void 0, function* () {
return this._client.getDefaultTransportLayer();
});
}
tadirInterface(tadir) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.tadirInterface(tadir);
});
}
dequeueTransport(trkorr) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.dequeueTransport(trkorr);
});
}
forwardTransport(trkorr, target, source, importAgain) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.forwardTransport(trkorr, target, source, importAgain);
});
}
importTransport(trkorr, system) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.importTransport(trkorr, system);
});
}
setInstallDevc(installDevc) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.setInstallDevc(installDevc);
});
}
getObjectsList() {
return __awaiter(this, void 0, void 0, function* () {
return this._client.getObjectsList();
});
}
renameTransportRequest(trkorr, as4text) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.renameTransportRequest(trkorr, as4text);
});
}
setPackageIntegrity(integrity) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.setPackageIntegrity(integrity);
});
}
addTranslationToTr(trkorr, devclassFilter) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.addTranslationToTr(trkorr, devclassFilter);
});
}
trCopy(from, to, doc) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.trCopy(from, to, doc);
});
}
getTransportObjectsBulk(trkorr) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.getTransportObjectsBulk(trkorr);
});
}
getExistingObjectsBulk(objects) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.getExistingObjectsBulk(objects);
});
}
addNamespace(namespace, replicense, texts) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.addNamespace(namespace, replicense, texts);
});
}
getMessage(data) {
return __awaiter(this, void 0, void 0, function* () {
return this._client.getMessage(data);
});
}
}
exports.RESTSystemConnector = RESTSystemConnector;