@broadcom/endevor-bridge-for-git-for-zowe-cli
Version:
Endevor Bridge for Git plug-in for Zowe CLI
68 lines • 3.14 kB
JavaScript
;
/*
* Copyright (c) 2019 Broadcom. All Rights Reserved. The term
* "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
*
* This software and all information contained therein is
* confidential and proprietary and shall not be duplicated,
* used, disclosed, or disseminated in any way except as
* authorized by the applicable license agreement, without the
* express written permission of Broadcom. All authorized
* reproductions must be marked with this language.
*
* EXCEPT AS SET FORTH IN THE APPLICABLE LICENSE AGREEMENT, TO
* THE EXTENT PERMITTED BY APPLICABLE LAW, BROADCOM PROVIDES THIS
* SOFTWARE WITHOUT WARRANTY OF ANY KIND, INCLUDING WITHOUT
* LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR
* FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL BROADCOM
* BE LIABLE TO THE END USER OR ANY THIRD PARTY FOR ANY LOSS OR
* DAMAGE, DIRECT OR INDIRECT, FROM THE USE OF THIS SOFTWARE,
* INCLUDING WITHOUT LIMITATION, LOST PROFITS, BUSINESS
* INTERRUPTION, GOODWILL, OR LOST DATA, EVEN IF BROADCOM IS
* EXPRESSLY ADVISED OF SUCH LOSS OR DAMAGE.
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.EndevorResponseUtils = void 0;
const object_1 = require("../../utils/object");
const endevor_for_zowe_cli_1 = require("@broadcom/endevor-for-zowe-cli");
const imperative_1 = require("@zowe/imperative");
class EndevorResponseUtils {
/**
* Converts the definition of IEndevorRestResponse from 'endevor-for-zowe-cli' into our own definition
*
* @param response Endevor response
*/
static convert(response) {
return {
returnCode: Number(response.body.returnCode),
reasonCode: Number(response.body.reasonCode),
reports: response.body.reports,
data: (0, object_1.isNil)(response.body.data) ? [] : response.body.data,
messages: (0, object_1.isNil)(response.body.messages) ? [] : response.body.messages,
headers: response.headers,
};
}
/**
* Indicates if the response matches the type specified
*
* @param response endevor response
* @param type type to check
*/
static is(response, type) {
const matchMessageCode = response.messages.length === 0 || response.messages.some(msg => msg.includes(type.messageCode));
return response.returnCode === type.returnCode && response.reasonCode === type.reasonCode && matchMessageCode;
}
/**
* Throws an error with the details of the Endevor response
*
* @param response Endevor response
* @param extraInfo information to understand where the error happened
*/
static throwError(response, extraInfo) {
let msg = (0, object_1.isNil)(extraInfo) ? "" : `${extraInfo}\n`;
msg = msg + endevor_for_zowe_cli_1.HandlerUtils.getWarnErrorInfo(response.returnCode, response.reasonCode, response.messages ? [response.messages.toString()] : [""]).join("\n");
throw new imperative_1.ImperativeError({ msg });
}
}
exports.EndevorResponseUtils = EndevorResponseUtils;
//# sourceMappingURL=EndevorResponseUtils.js.map