UNPKG

awscdk-resources-mongodbatlas

Version:

MongoDB Atlas CDK Construct Library for AWS CloudFormation Resources

81 lines 13.3 kB
"use strict"; var _a; Object.defineProperty(exports, "__esModule", { value: true }); exports.CfnProjectServiceAccount = void 0; exports.toJson_CfnProjectServiceAccountProps = toJson_CfnProjectServiceAccountProps; exports.toJson_SecretDefinition = toJson_SecretDefinition; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); // Generated by cdk-import const cdk = require("aws-cdk-lib"); /** * Converts an object of type 'CfnProjectServiceAccountProps' to JSON representation. */ /* eslint-disable max-len, quote-props */ function toJson_CfnProjectServiceAccountProps(obj) { if (obj === undefined) { return undefined; } const result = { Profile: obj.profile, ProjectId: obj.projectId, Name: obj.name, Description: obj.description, Roles: obj.roles?.map((y) => y), SecretExpiresAfterHours: obj.secretExpiresAfterHours, Secrets: obj.secrets?.map((y) => toJson_SecretDefinition(y)), }; // filter undefined values return Object.entries(result).reduce((r, i) => (i[1] === undefined ? r : { ...r, [i[0]]: i[1] }), {}); } /** * Converts an object of type 'SecretDefinition' to JSON representation. */ /* eslint-disable max-len, quote-props */ function toJson_SecretDefinition(obj) { if (obj === undefined) { return undefined; } const result = { Id: obj.id, CreatedAt: obj.createdAt, ExpiresAt: obj.expiresAt, LastUsedAt: obj.lastUsedAt, MaskedSecretValue: obj.maskedSecretValue, Secret: obj.secret, }; // filter undefined values return Object.entries(result).reduce((r, i) => (i[1] === undefined ? r : { ...r, [i[0]]: i[1] }), {}); } /* eslint-enable max-len, quote-props */ /** * A CloudFormation `MongoDB::Atlas::ProjectServiceAccount` * * @cloudformationResource MongoDB::Atlas::ProjectServiceAccount * @stability external */ class CfnProjectServiceAccount extends cdk.CfnResource { /** * Create a new `MongoDB::Atlas::ProjectServiceAccount`. * * @param scope - scope in which this resource is defined * @param id - scoped id of the resource * @param props - resource properties */ constructor(scope, id, props) { super(scope, id, { type: CfnProjectServiceAccount.CFN_RESOURCE_TYPE_NAME, properties: toJson_CfnProjectServiceAccountProps(props), }); this.props = props; this.attrClientId = cdk.Token.asString(this.getAtt("ClientId")); this.attrCreatedAt = cdk.Token.asString(this.getAtt("CreatedAt")); } } exports.CfnProjectServiceAccount = CfnProjectServiceAccount; _a = JSII_RTTI_SYMBOL_1; CfnProjectServiceAccount[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnProjectServiceAccount", version: "4.0.0" }; /** * The CloudFormation resource type name for this resource class. */ CfnProjectServiceAccount.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::ProjectServiceAccount"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3Byb2plY3Qtc2VydmljZS1hY2NvdW50L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFnRUEsb0ZBb0JDO0FBc0RELDBEQW1CQzs7QUE3SkQsMEJBQTBCO0FBQzFCLG1DQUFtQztBQTJEbkM7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0Isb0NBQW9DLENBQ2xELEdBQThDO0lBRTlDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3RCLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO1FBQ2QsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXO1FBQzVCLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9CLHVCQUF1QixFQUFFLEdBQUcsQ0FBQyx1QkFBdUI7UUFDcEQsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUM3RCxDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFrREQ7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsdUJBQXVCLENBQ3JDLEdBQWlDO0lBRWpDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3RCLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLEVBQUUsRUFBRSxHQUFHLENBQUMsRUFBRTtRQUNWLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVO1FBQzFCLGlCQUFpQixFQUFFLEdBQUcsQ0FBQyxpQkFBaUI7UUFDeEMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNO0tBQ25CLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQUNELHdDQUF3QztBQUV4Qzs7Ozs7R0FLRztBQUNILE1BQWEsd0JBQXlCLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFxQjNEOzs7Ozs7T0FNRztJQUNILFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQW9DO1FBRXBDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLHdCQUF3QixDQUFDLHNCQUFzQjtZQUNyRCxVQUFVLEVBQUUsb0NBQW9DLENBQUMsS0FBSyxDQUFFO1NBQ3pELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7O0FBMUNILDREQTJDQzs7O0FBMUNDOztHQUVHO0FBQ29CLCtDQUFzQixHQUMzQyx1Q0FBdUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogQ3JlYXRlcyBhbmQgbWFuYWdlcyBhIFByb2plY3QgU2VydmljZSBBY2NvdW50LiBUaGlzIHJlc291cmNlIGNyZWF0ZXMgYSBTZXJ2aWNlIEFjY291bnQgYW5kIGFzc2lnbnMgaXQgdG8gYSBwcm9qZWN0LiBOb3RlOiBEZWxldGluZyB0aGlzIHJlc291cmNlIG9ubHkgdW5hc3NpZ25zIHRoZSBTZXJ2aWNlIEFjY291bnQgZnJvbSB0aGUgcHJvamVjdCwgYnV0IGRvZXNuJ3QgZGVsZXRlIGl0IGZyb20gdGhlIG9yZ2FuaXphdGlvbi5cbiAqXG4gKiBAc2NoZW1hIENmblByb2plY3RTZXJ2aWNlQWNjb3VudFByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuUHJvamVjdFNlcnZpY2VBY2NvdW50UHJvcHMge1xuICAvKipcbiAgICogUHJvZmlsZSB1c2VkIHRvIHByb3ZpZGUgY3JlZGVudGlhbHMgaW5mb3JtYXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJvamVjdFNlcnZpY2VBY2NvdW50UHJvcHMjUHJvZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvZmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgeW91ciBwcm9qZWN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblByb2plY3RTZXJ2aWNlQWNjb3VudFByb3BzI1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIG5hbWUgZm9yIHRoZSBTZXJ2aWNlIEFjY291bnQuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJvamVjdFNlcnZpY2VBY2NvdW50UHJvcHMjTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbiByZWFkYWJsZSBkZXNjcmlwdGlvbiBmb3IgdGhlIFNlcnZpY2UgQWNjb3VudC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcm9qZWN0U2VydmljZUFjY291bnRQcm9wcyNEZXNjcmlwdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb246IHN0cmluZztcblxuICAvKipcbiAgICogQSBsaXN0IG9mIHByb2plY3QtbGV2ZWwgcm9sZXMgZm9yIHRoZSBTZXJ2aWNlIEFjY291bnQuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJvamVjdFNlcnZpY2VBY2NvdW50UHJvcHMjUm9sZXNcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVzOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogRXhwaXJhdGlvbiB0aW1lIG9mIHRoZSBuZXcgU2VydmljZSBBY2NvdW50IHNlY3JldCBpbiBob3Vycy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcm9qZWN0U2VydmljZUFjY291bnRQcm9wcyNTZWNyZXRFeHBpcmVzQWZ0ZXJIb3Vyc1xuICAgKi9cbiAgcmVhZG9ubHkgc2VjcmV0RXhwaXJlc0FmdGVySG91cnM6IG51bWJlcjtcblxuICAvKipcbiAgICogTGlzdCBvZiBzZWNyZXRzIGFzc29jaWF0ZWQgd2l0aCB0aGUgU2VydmljZSBBY2NvdW50LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblByb2plY3RTZXJ2aWNlQWNjb3VudFByb3BzI1NlY3JldHNcbiAgICovXG4gIHJlYWRvbmx5IHNlY3JldHM/OiBTZWNyZXREZWZpbml0aW9uW107XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmblByb2plY3RTZXJ2aWNlQWNjb3VudFByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5Qcm9qZWN0U2VydmljZUFjY291bnRQcm9wcyhcbiAgb2JqOiBDZm5Qcm9qZWN0U2VydmljZUFjY291bnRQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBOYW1lOiBvYmoubmFtZSxcbiAgICBEZXNjcmlwdGlvbjogb2JqLmRlc2NyaXB0aW9uLFxuICAgIFJvbGVzOiBvYmoucm9sZXM/Lm1hcCgoeSkgPT4geSksXG4gICAgU2VjcmV0RXhwaXJlc0FmdGVySG91cnM6IG9iai5zZWNyZXRFeHBpcmVzQWZ0ZXJIb3VycyxcbiAgICBTZWNyZXRzOiBvYmouc2VjcmV0cz8ubWFwKCh5KSA9PiB0b0pzb25fU2VjcmV0RGVmaW5pdGlvbih5KSksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgU2VjcmV0RGVmaW5pdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlY3JldERlZmluaXRpb24ge1xuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIHNlY3JldC5cbiAgICpcbiAgICogQHNjaGVtYSBTZWNyZXREZWZpbml0aW9uI0lkXG4gICAqL1xuICByZWFkb25seSBpZD86IHN0cmluZztcblxuICAvKipcbiAgICogRGF0ZSBhbmQgdGltZSB0aGF0IHRoZSBzZWNyZXQgd2FzIGNyZWF0ZWQgb24uXG4gICAqXG4gICAqIEBzY2hlbWEgU2VjcmV0RGVmaW5pdGlvbiNDcmVhdGVkQXRcbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZWRBdD86IHN0cmluZztcblxuICAvKipcbiAgICogRGF0ZSBhbmQgdGltZSB3aGVuIHRoZSBzZWNyZXQgZXhwaXJlcy5cbiAgICpcbiAgICogQHNjaGVtYSBTZWNyZXREZWZpbml0aW9uI0V4cGlyZXNBdFxuICAgKi9cbiAgcmVhZG9ubHkgZXhwaXJlc0F0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEYXRlIGFuZCB0aW1lIHdoZW4gdGhlIHNlY3JldCB3YXMgbGFzdCB1c2VkLlxuICAgKlxuICAgKiBAc2NoZW1hIFNlY3JldERlZmluaXRpb24jTGFzdFVzZWRBdFxuICAgKi9cbiAgcmVhZG9ubHkgbGFzdFVzZWRBdD86IHN0cmluZztcblxuICAvKipcbiAgICogTWFza2VkIHZhbHVlIG9mIHRoZSBzZWNyZXQuXG4gICAqXG4gICAqIEBzY2hlbWEgU2VjcmV0RGVmaW5pdGlvbiNNYXNrZWRTZWNyZXRWYWx1ZVxuICAgKi9cbiAgcmVhZG9ubHkgbWFza2VkU2VjcmV0VmFsdWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzZWNyZXQgdmFsdWUuIE9ubHkgcmV0dXJuZWQgb24gY3JlYXRlLlxuICAgKlxuICAgKiBAc2NoZW1hIFNlY3JldERlZmluaXRpb24jU2VjcmV0XG4gICAqL1xuICByZWFkb25seSBzZWNyZXQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1NlY3JldERlZmluaXRpb24nIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1NlY3JldERlZmluaXRpb24oXG4gIG9iajogU2VjcmV0RGVmaW5pdGlvbiB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIElkOiBvYmouaWQsXG4gICAgQ3JlYXRlZEF0OiBvYmouY3JlYXRlZEF0LFxuICAgIEV4cGlyZXNBdDogb2JqLmV4cGlyZXNBdCxcbiAgICBMYXN0VXNlZEF0OiBvYmoubGFzdFVzZWRBdCxcbiAgICBNYXNrZWRTZWNyZXRWYWx1ZTogb2JqLm1hc2tlZFNlY3JldFZhbHVlLFxuICAgIFNlY3JldDogb2JqLnNlY3JldCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6OlByb2plY3RTZXJ2aWNlQWNjb3VudGBcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6UHJvamVjdFNlcnZpY2VBY2NvdW50XG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5Qcm9qZWN0U2VydmljZUFjY291bnQgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6UHJvamVjdFNlcnZpY2VBY2NvdW50XCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5Qcm9qZWN0U2VydmljZUFjY291bnRQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6UHJvamVjdFNlcnZpY2VBY2NvdW50LkNsaWVudElkYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJDbGllbnRJZDogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6UHJvamVjdFNlcnZpY2VBY2NvdW50LkNyZWF0ZWRBdGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyQ3JlYXRlZEF0OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6OlByb2plY3RTZXJ2aWNlQWNjb3VudGAuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5Qcm9qZWN0U2VydmljZUFjY291bnRQcm9wc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmblByb2plY3RTZXJ2aWNlQWNjb3VudC5DRk5fUkVTT1VSQ0VfVFlQRV9OQU1FLFxuICAgICAgcHJvcGVydGllczogdG9Kc29uX0NmblByb2plY3RTZXJ2aWNlQWNjb3VudFByb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJDbGllbnRJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkNsaWVudElkXCIpKTtcbiAgICB0aGlzLmF0dHJDcmVhdGVkQXQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJDcmVhdGVkQXRcIikpO1xuICB9XG59XG4iXX0=