UNPKG

@broadcom/ops-for-zowe-cli

Version:

OPS/MVS® Plug-in for Zowe CLI

138 lines 6.78 kB
"use strict"; /* * Copyright (c) 2024 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.RulesetListUtils = void 0; const constants_1 = require("../constants"); const OpsTextUtils_1 = require("./OpsTextUtils"); class RulesetListUtils { static printShowRulesetResponse(rulesetList, params) { let output = ""; if (rulesetList.length > 1) { for (let i = 0; i < rulesetList.length; i++) { const ruleset = rulesetList[i]; output = output + RulesetListUtils.formatOutputFromArrayRestApi(ruleset, i, params); } // close out JSON if (params.arguments.format.toUpperCase() === constants_1.OpsConstants.JSON) { output = output + "]"; } } else { output = output + RulesetListUtils.formatOutputRestApi(rulesetList, params); } return output; } static formatOutputFromArrayRestApi(ruleset, i, params) { let output = ""; if (params.arguments.format.toUpperCase() === constants_1.OpsConstants.CSV) { if (i === 0) { output = `${output}${RulesetListUtils.formatCsvHeaderResponse()}`; } output = `${output}\n${RulesetListUtils.formatCsvDataResponse(ruleset)}`; } else if (params.arguments.format.toUpperCase() === constants_1.OpsConstants.JSON) { if (i === 0) { output = output + "["; } else if (i > 0) { output = output + ", "; } output = `${output}${RulesetListUtils.formatJsonDataResponse(ruleset)}`; } else if (params.arguments.format.toUpperCase() === constants_1.OpsConstants.NAMEVALUECOLOR) { if (i > 0) { output = output + "\n"; } output = `${output}${RulesetListUtils.formatNameValueColorRulesetResponse(ruleset)}`; } else { if (i > 0) { output = output + "\n"; } output = `${output}${RulesetListUtils.formatNameValueRulesetResponse(ruleset)}`; } return output; } static formatOutputRestApi(ruleset, params) { let output = ""; if (params.arguments.format.toUpperCase() === constants_1.OpsConstants.CSV) { output = `${RulesetListUtils.formatCsvHeaderResponse()}`; output = `${output}\n${RulesetListUtils.formatCsvDataResponse(ruleset)}`; } else if (params.arguments.format.toUpperCase() === constants_1.OpsConstants.JSON) { output = `[${output}${RulesetListUtils.formatJsonDataResponse(ruleset)}]`; } else if (params.arguments.format.toUpperCase() === constants_1.OpsConstants.NAMEVALUECOLOR) { output = RulesetListUtils.formatNameValueColorRulesetResponse(ruleset); } else { output = RulesetListUtils.formatNameValueRulesetResponse(ruleset); } return output; } static formatRulesetResponse(ruleSet, system, subsystem, status, autoenabled) { const name = OpsTextUtils_1.OpsTextUtils.colorizeAttention("name: "); const statusText = OpsTextUtils_1.OpsTextUtils.colorizeAttention(" status: "); const autoenabledText = OpsTextUtils_1.OpsTextUtils.colorizeAttention(" autoenabled: "); return `${name}${system}/${subsystem}/${ruleSet}${statusText}${status}${autoenabledText}${autoenabled}`; } static formatNameValueRulesetResponse(rulesetList) { const output = `name: ${rulesetList.system}/${rulesetList.subsystem}/${rulesetList.ruleset}\n`; return `${output} sysplex: ${rulesetList.sysplex}\n status: ${rulesetList.status}\n autoEnabled: ${rulesetList.autoEnabled}\n`; } static formatNameValueColorRulesetResponse(rulesetList) { const name = OpsTextUtils_1.OpsTextUtils.colorizeAttention("name: "); const statusText = OpsTextUtils_1.OpsTextUtils.colorizeAttention(" status: "); const sysplexText = OpsTextUtils_1.OpsTextUtils.colorizeAttention("sysplex:"); const autoenabledText = OpsTextUtils_1.OpsTextUtils.colorizeAttention(" autoenabled: "); const output = `${name}${rulesetList.system}/${rulesetList.subsystem}/${rulesetList.ruleset}`; let status; if (rulesetList.status.toUpperCase() === "ENABLED") { status = OpsTextUtils_1.OpsTextUtils.colorizeOK(rulesetList.status); } else { status = OpsTextUtils_1.OpsTextUtils.colorizeError(rulesetList.status); } return `${output}\n ${sysplexText} ${rulesetList.sysplex}\n${statusText} ${status}\n${autoenabledText} ${rulesetList.autoEnabled}\n`; } static formatJsonDataResponse(rulesetList) { let output = `{`; output = output + `"sysplex": "${rulesetList.sysplex}", "system": "${rulesetList.system}", `; output = output + `"subsystem": "${rulesetList.subsystem}", "ruleset": "${rulesetList.ruleset}", `; output = output + `"status": "${rulesetList.status}", "autoEnabled": "${rulesetList.autoEnabled}"`; output = output + `}`; return output; } static formatCsvHeaderResponse() { return `sysplex,system,subsystem,ruleset,status,autoenabled`; } static formatCsvDataResponse(rulesetList) { let output = `"${rulesetList.sysplex}","${rulesetList.system}",`; output = output + `"${rulesetList.subsystem}","${rulesetList.ruleset}",`; output = output + `"${rulesetList.status}","${rulesetList.autoEnabled}"`; return output; } } exports.RulesetListUtils = RulesetListUtils; //# sourceMappingURL=RulesetListUtils.js.map