UNPKG

@broadcom/endevor-bridge-for-git-for-zowe-cli

Version:

Endevor Bridge for Git plug-in for Zowe CLI

72 lines (67 loc) 3.7 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var tslib_es6 = require('../../../../node_modules/tslib/tslib.es6.js'); var BaseHandler = require('../../../BaseHandler.js'); var EBGConnectionService = require('../../../../api/service/EBGConnectionService.js'); var EndevorConnectionOptions = require('../../../options/EndevorConnectionOptions.js'); var fs = require('fs'); /* * 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. */ class UpdateConnectionCertificateHandler extends BaseHandler.BaseHandler { processWithSession() { return tslib_es6.__awaiter(this, void 0, void 0, function* () { const connection = this.getOption(EndevorConnectionOptions.EndevorConnectionOptions.CONNECTION); const loginUrl = this.getOption(EndevorConnectionOptions.EndevorConnectionOptions.LOGIN_URL); const type = this.getOption(EndevorConnectionOptions.EndevorConnectionOptions.TYPE); let payload; payload = { connection, loginUrl, type, publicCertificate: "", privateKey: "", keystorePath: "", keystorePassword: "", }; if (type === "CERT_DATA") { const publicCertificatePath = this.getOption(EndevorConnectionOptions.EndevorConnectionOptions.PUBLIC_CERT, true); const privateKeyPath = this.getOption(EndevorConnectionOptions.EndevorConnectionOptions.PRIVATE_KEY, true); const publicCertificate = fs.readFileSync(publicCertificatePath).toLocaleString(); const privateKey = fs.readFileSync(privateKeyPath).toLocaleString(); this.validateRequiredOptions(); payload = Object.assign(Object.assign({}, payload), { publicCertificate, privateKey }); } else if (type === "KEYSTORE") { const keystorePath = this.getOption(EndevorConnectionOptions.EndevorConnectionOptions.KEYSTORE_PATH, true); const keystorePassword = this.getOption(EndevorConnectionOptions.EndevorConnectionOptions.KEYSTORE_PASS, true); this.validateRequiredOptions(); payload = Object.assign(Object.assign({}, payload), { keystorePath, keystorePassword }); } const apiResponse = yield EBGConnectionService.EBGConnectionService.updateEndevorConnectionClientCertificate(this.apiClient, payload); this.console.log(apiResponse.messages.join("\n")); }); } } exports.default = UpdateConnectionCertificateHandler;