@broadcom/endevor-for-zowe-cli
Version:
Endevor Plug-in for Zowe CLI
80 lines • 9.36 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());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.EndevorSyncActionRetrieve = void 0;
const lodash_1 = require("lodash");
const __1 = require("../..");
const CacheUtils_1 = require("../CacheUtils");
const EndevorSyncAction_1 = require("./EndevorSyncAction");
const fs = require("fs");
const EndevorSyncActionUtils_1 = require("./EndevorSyncActionUtils");
class EndevorSyncActionRetrieve extends EndevorSyncAction_1.EndevorSyncAction {
constructor(element, location, workspaceDir, charset, codepageConfig, codepageValue) {
super(element, location);
this.actionType = __1.EndevorActionType.RETRIEVE;
this.actionName = "Retrieve Element";
this.workspaceDir = workspaceDir;
this.charset = charset;
this.codepageConfig = codepageConfig;
this.codepageValue = codepageValue;
}
static composeActionsSummaryMsg(state, actions) {
EndevorSyncActionUtils_1.EndevorSyncActionUtils.composeActionsSummaryMsg(state, actions, "element retrieved", "elements retrieved", "element retrieve failed", "element retrieves failed", "element retrieve not executed", "element retrieves not executed");
}
performAction(session, instance, ccid, comment, optSignout, optOverrideSignout) {
return __awaiter(this, void 0, void 0, function* () {
let expectedCodePage = undefined;
if (this.codepageConfig) {
expectedCodePage = __1.WorkspaceUtils.getExpectedElementCodePage(this.location.environment, this.location.system, this.location.subsystem, this.location.type, this.element.fullName, this.element, this.codepageConfig);
}
else if (this.codepageValue) {
expectedCodePage = this.codepageValue;
}
const elementBackup = (0, lodash_1.cloneDeep)(this.element);
const elementContent = yield EndevorSyncActionUtils_1.EndevorSyncActionUtils.retrieveElm(this, session, instance, ccid, comment, optSignout, optOverrideSignout, this.location, false, this.element.remoteElmVersion.fingerprint, this.charset, expectedCodePage).catch(() => {
return null;
});
if (elementContent == null) {
this.status = __1.EndevorActionStatus.FAILURE;
this.statusDetailed = __1.EndevorActionStatusDetailed.FAILURE;
this.element.codePage = elementBackup.codePage;
this.element.fileCharset = elementBackup.fileCharset;
this.element.localFile = elementBackup.localFile;
this.element.localFileVersion = elementBackup.localFileVersion;
return false;
}
try {
fs.writeFileSync(this.element.localFile, elementContent);
CacheUtils_1.CacheUtils.removeSha1File(this.element.localFileVersion);
yield CacheUtils_1.CacheUtils.addSha1FileFromFile(this.workspaceDir, this.location.environment, this.location.stageNumber, this.location.system, this.location.subsystem, this.element.localFileVersion, this.element.localFile);
}
catch (err) {
this.status = __1.EndevorActionStatus.FAILURE;
this.statusDetailed = __1.EndevorActionStatusDetailed.FAILURE;
this.element.codePage = elementBackup.codePage;
this.element.fileCharset = elementBackup.fileCharset;
this.element.localFile = elementBackup.localFile;
this.element.localFileVersion = elementBackup.localFileVersion;
this.errorMessages.push(`${err}`);
return false;
}
this.element.localElmVersion = (0, lodash_1.cloneDeep)(this.element.remoteElmVersion);
this.element.localStatus = __1.ElementVersionStatus.INSYNC;
this.element.remoteStatus = __1.ElementVersionStatus.INSYNC;
this.status = __1.EndevorActionStatus.SUCCESS;
this.statusDetailed = __1.EndevorActionStatusDetailed.SUCCESS;
delete this.element.syncFingerprint;
return true;
});
}
}
exports.EndevorSyncActionRetrieve = EndevorSyncActionRetrieve;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW5kZXZvclN5bmNBY3Rpb25SZXRyaWV2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcGkvd29ya3NwYWNlL2FjdGlvbnMvRW5kZXZvclN5bmNBY3Rpb25SZXRyaWV2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUF3QkEsbUNBQW1DO0FBQ25DLDZCQVNlO0FBQ2YsOENBQTJDO0FBQzNDLDJEQUF3RDtBQUN4RCx5QkFBMEI7QUFDMUIscUVBQWtFO0FBT2xFLE1BQWEseUJBQTBCLFNBQVEscUNBQWlCO0lBUTlELFlBQ0UsT0FBaUMsRUFDakMsUUFBMkIsRUFDM0IsWUFBb0IsRUFDcEIsT0FBZSxFQUNmLGNBQXVDLEVBQ3ZDLGFBQXNCO1FBRXRCLEtBQUssQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFmM0IsZUFBVSxHQUFHLHFCQUFpQixDQUFDLFFBQVEsQ0FBQztRQUN4QyxlQUFVLEdBQUcsa0JBQWtCLENBQUM7UUFlOUIsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDckMsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7SUFDckMsQ0FBQztJQUVNLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxLQUE2QixFQUFFLE9BQW9DO1FBQ3hHLCtDQUFzQixDQUFDLHdCQUF3QixDQUM3QyxLQUFLLEVBQ0wsT0FBTyxFQUNQLG1CQUFtQixFQUNuQixvQkFBb0IsRUFDcEIseUJBQXlCLEVBQ3pCLDBCQUEwQixFQUMxQiwrQkFBK0IsRUFDL0IsZ0NBQWdDLENBQ2pDLENBQUM7SUFDSixDQUFDO0lBV1ksYUFBYSxDQUN4QixPQUFnQixFQUNoQixRQUFnQixFQUNoQixJQUFZLEVBQ1osT0FBZSxFQUNmLFVBQW1CLEVBQ25CLGtCQUEyQjs7WUFHM0Is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