awscdk-resources-mongodbatlas
Version:
MongoDB Atlas CDK Construct Library for AWS CloudFormation Resources
82 lines • 15.9 kB
JavaScript
;
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CfnOrganization = void 0;
exports.toJson_CfnOrganizationProps = toJson_CfnOrganizationProps;
exports.toJson_ApiKey = toJson_ApiKey;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
// Generated by cdk-import
const cdk = require("aws-cdk-lib");
/**
* Converts an object of type 'CfnOrganizationProps' to JSON representation.
*/
/* eslint-disable max-len, quote-props */
function toJson_CfnOrganizationProps(obj) {
if (obj === undefined) {
return undefined;
}
const result = {
Name: obj.name,
APIKey: toJson_ApiKey(obj.apiKey),
FederatedSettingsId: obj.federatedSettingsId,
OrgOwnerId: obj.orgOwnerId,
Profile: obj.profile,
AwsSecretName: obj.awsSecretName,
SkipDefaultAlertsSettings: obj.skipDefaultAlertsSettings,
GenAIFeaturesEnabled: obj.genAiFeaturesEnabled,
IsDeleted: obj.isDeleted,
ApiAccessListRequired: obj.apiAccessListRequired,
MultiFactorAuthRequired: obj.multiFactorAuthRequired,
RestrictEmployeeAccess: obj.restrictEmployeeAccess,
SecurityContact: obj.securityContact,
};
// filter undefined values
return Object.entries(result).reduce((r, i) => (i[1] === undefined ? r : { ...r, [i[0]]: i[1] }), {});
}
/**
* Converts an object of type 'ApiKey' to JSON representation.
*/
/* eslint-disable max-len, quote-props */
function toJson_ApiKey(obj) {
if (obj === undefined) {
return undefined;
}
const result = {
Description: obj.description,
Roles: obj.roles?.map((y) => y),
};
// 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::Organization`
*
* @cloudformationResource MongoDB::Atlas::Organization
* @stability external
*/
class CfnOrganization extends cdk.CfnResource {
/**
* Create a new `MongoDB::Atlas::Organization`.
*
* @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: CfnOrganization.CFN_RESOURCE_TYPE_NAME,
properties: toJson_CfnOrganizationProps(props),
});
this.props = props;
this.attrOrgId = cdk.Token.asString(this.getAtt("OrgId"));
}
}
exports.CfnOrganization = CfnOrganization;
_a = JSII_RTTI_SYMBOL_1;
CfnOrganization[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnOrganization", version: "4.0.0" };
/**
* The CloudFormation resource type name for this resource class.
*/
CfnOrganization.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::Organization";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL29yZ2FuaXphdGlvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBeUdBLGtFQTBCQztBQTBCRCxzQ0FlQzs7QUE1S0QsMEJBQTBCO0FBQzFCLG1DQUFtQztBQW9HbkM7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsMkJBQTJCLENBQ3pDLEdBQXFDO0lBRXJDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3RCLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtRQUNkLE1BQU0sRUFBRSxhQUFhLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQztRQUNqQyxtQkFBbUIsRUFBRSxHQUFHLENBQUMsbUJBQW1CO1FBQzVDLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVTtRQUMxQixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsYUFBYSxFQUFFLEdBQUcsQ0FBQyxhQUFhO1FBQ2hDLHlCQUF5QixFQUFFLEdBQUcsQ0FBQyx5QkFBeUI7UUFDeEQsb0JBQW9CLEVBQUUsR0FBRyxDQUFDLG9CQUFvQjtRQUM5QyxTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIscUJBQXFCLEVBQUUsR0FBRyxDQUFDLHFCQUFxQjtRQUNoRCx1QkFBdUIsRUFBRSxHQUFHLENBQUMsdUJBQXVCO1FBQ3BELHNCQUFzQixFQUFFLEdBQUcsQ0FBQyxzQkFBc0I7UUFDbEQsZUFBZSxFQUFFLEdBQUcsQ0FBQyxlQUFlO0tBQ3JDLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQXNCRDs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixhQUFhLENBQzNCLEdBQXVCO0lBRXZCLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3RCLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLFdBQVcsRUFBRSxHQUFHLENBQUMsV0FBVztRQUM1QixLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztLQUNoQyxDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFDRCx3Q0FBd0M7QUFFeEM7Ozs7O0dBS0c7QUFDSCxNQUFhLGVBQWdCLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFpQmxEOzs7Ozs7T0FNRztJQUNILFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQTJCO1FBRTNCLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLGVBQWUsQ0FBQyxzQkFBc0I7WUFDNUMsVUFBVSxFQUFFLDJCQUEyQixDQUFDLEtBQUssQ0FBRTtTQUNoRCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUM1RCxDQUFDOztBQXJDSCwwQ0FzQ0M7OztBQXJDQzs7R0FFRztBQUNvQixzQ0FBc0IsR0FDM0MsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIFJldHVybnMsIGFkZHMsIGFuZCBlZGl0cyBvcmdhbml6YXRpb25hbCB1bml0cyBpbiBNb25nb0RCIENsb3VkLlxuICpcbiAqIEBzY2hlbWEgQ2ZuT3JnYW5pemF0aW9uUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5Pcmdhbml6YXRpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIG9yZ2FuaXphdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5Pcmdhbml6YXRpb25Qcm9wcyNOYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnYW5pemF0aW9uUHJvcHMjQVBJS2V5XG4gICAqL1xuICByZWFkb25seSBhcGlLZXk/OiBBcGlLZXk7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBmZWRlcmF0aW9uIHRvIGxpbmsgdGhlIG5ld2x5IGNyZWF0ZWQgb3JnYW5pemF0aW9uIHRvLiBJZiBzcGVjaWZpZWQsIHRoZSBwcm9wb3NlZCBPcmdhbml6YXRpb24gT3duZXIgb2YgdGhlIG5ldyBvcmdhbml6YXRpb24gbXVzdCBoYXZlIHRoZSBPcmdhbml6YXRpb24gT3duZXIgcm9sZSBpbiBhbiBvcmdhbml6YXRpb24gYXNzb2NpYXRlZCB3aXRoIHRoZSBmZWRlcmF0aW9uLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9yZ2FuaXphdGlvblByb3BzI0ZlZGVyYXRlZFNldHRpbmdzSWRcbiAgICovXG4gIHJlYWRvbmx5IGZlZGVyYXRlZFNldHRpbmdzSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBNb25nb0RCIENsb3VkIHVzZXIgdGhhdCB5b3Ugd2FudCB0byBhc3NpZ24gdGhlIE9yZ2FuaXphdGlvbiBPd25lciByb2xlLiBUaGlzIHVzZXIgbXVzdCBiZSBhIG1lbWJlciBvZiB0aGUgc2FtZSBvcmdhbml6YXRpb24gYXMgdGhlIGNhbGxpbmcgQVBJIGtleS4gSWYgeW91IHByb3ZpZGUgZmVkZXJhdGlvblNldHRpbmdzSWQsIHRoaXMgdXNlciBtdXN0IGluc3RlYWQgaGF2ZSB0aGUgT3JnYW5pemF0aW9uIE93bmVyIHJvbGUgb24gYW4gb3JnYW5pemF0aW9uIGluIHRoZSBzcGVjaWZpZWQgZmVkZXJhdGlvbi4gVGhpcyBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQgb25seSB3aGVuIHlvdSBhdXRoZW50aWNhdGUgd2l0aCBQcm9ncmFtbWF0aWMgQVBJIEtleXMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnYW5pemF0aW9uUHJvcHMjT3JnT3duZXJJZFxuICAgKi9cbiAgcmVhZG9ubHkgb3JnT3duZXJJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQcm9maWxlIHVzZWQgdG8gcHJvdmlkZSBjcmVkZW50aWFscyBpbmZvcm1hdGlvbiwgKGEgc2VjcmV0IHdpdGggdGhlIGNmbi9hdGxhcy9wcm9maWxlL3tQcm9maWxlfSwgaXMgcmVxdWlyZWQpLCBpZiBub3QgcHJvdmlkZWQgZGVmYXVsdCBpcyB1c2VkXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnYW5pemF0aW9uUHJvcHMjUHJvZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvZmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogQXdzU2VjcmV0TmFtZSB1c2VkIHRvIHNldCBuZXdseSBjcmVhdGVkIE9yZyBjcmVkZW50aWFscyBpbmZvcm1hdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5Pcmdhbml6YXRpb25Qcm9wcyNBd3NTZWNyZXROYW1lXG4gICAqL1xuICByZWFkb25seSBhd3NTZWNyZXROYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERpc2FibGVzIGF1dG9tYXRpYyBhbGVydCBjcmVhdGlvbi4gV2hlbiBzZXQgdG8gYHRydWVgLCBBdGxhcyBkb2Vzbid0IGF1dG9tYXRpY2FsbHkgY3JlYXRlIG9yZ2FuaXphdGlvbi1sZXZlbCBhbGVydHMuIERlZmF1bHRzIHRvIGB0cnVlYCBmb3IgbmV3IEF0bGFzIE9yZ2FuaXphdGlvbnMgY3JlYXRlZCB3aXRoIHRoZSBwcm92aWRlciB0byBwcmV2ZW50IGluZnJhc3RydWN0dXJlIGRyaWZ0IGNhdXNlZCBieSBjcmVhdGlvbiBvZiBuZXcgYWxlcnRzLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlYCBmb3IgbmV3IEF0bGFzIE9yZ2FuaXphdGlvbnMgY3JlYXRlZCB3aXRoIHRoZSBwcm92aWRlciB0byBwcmV2ZW50IGluZnJhc3RydWN0dXJlIGRyaWZ0IGNhdXNlZCBieSBjcmVhdGlvbiBvZiBuZXcgYWxlcnRzLlxuICAgKiBAc2NoZW1hIENmbk9yZ2FuaXphdGlvblByb3BzI1NraXBEZWZhdWx0QWxlcnRzU2V0dGluZ3NcbiAgICovXG4gIHJlYWRvbmx5IHNraXBEZWZhdWx0QWxlcnRzU2V0dGluZ3M/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgdGhpcyBvcmdhbml6YXRpb24gaGFzIGFjY2VzcyB0byBnZW5lcmF0aXZlIEFJIGZlYXR1cmVzLiBUaGlzIHNldHRpbmcgb25seSBhcHBsaWVzIHRvIEF0bGFzIENvbW1lcmNpYWwgYW5kIGRlZmF1bHRzIHRvIGB0cnVlYC4gV2l0aCB0aGlzIHNldHRpbmcgb24sIFByb2plY3QgT3duZXJzIG1heSBiZSBhYmxlIHRvIGVuYWJsZSBvciBkaXNhYmxlIGluZGl2aWR1YWwgQUkgZmVhdHVyZXMgYXQgdGhlIHByb2plY3QgbGV2ZWwuIFRvIGxlYXJuIG1vcmUsIHNlZSBodHRwczovL3d3dy5tb25nb2RiLmNvbS9kb2NzL2dlbmVyYXRpdmUtYWktZmFxL1xuICAgKlxuICAgKiBAc2NoZW1hIENmbk9yZ2FuaXphdGlvblByb3BzI0dlbkFJRmVhdHVyZXNFbmFibGVkXG4gICAqL1xuICByZWFkb25seSBnZW5BaUZlYXR1cmVzRW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciB0aGlzIG9yZ2FuaXphdGlvbiBoYXMgYmVlbiBkZWxldGVkLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9yZ2FuaXphdGlvblByb3BzI0lzRGVsZXRlZFxuICAgKi9cbiAgcmVhZG9ubHkgaXNEZWxldGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRvIHJlcXVpcmUgQVBJIG9wZXJhdGlvbnMgdG8gb3JpZ2luYXRlIGZyb20gYW4gSVAgQWRkcmVzcyBhZGRlZCB0byB0aGUgQVBJIGFjY2VzcyBsaXN0IGZvciB0aGUgc3BlY2lmaWVkIG9yZ2FuaXphdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5Pcmdhbml6YXRpb25Qcm9wcyNBcGlBY2Nlc3NMaXN0UmVxdWlyZWRcbiAgICovXG4gIHJlYWRvbmx5IGFwaUFjY2Vzc0xpc3RSZXF1aXJlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciB0byByZXF1aXJlIHVzZXJzIHRvIHNldCB1cCBNdWx0aS1GYWN0b3IgQXV0aGVudGljYXRpb24gKE1GQSkgYmVmb3JlIGFjY2Vzc2luZyB0aGUgc3BlY2lmaWVkIG9yZ2FuaXphdGlvbi4gVG8gbGVhcm4gbW9yZSwgc2VlOiBodHRwczovL3d3dy5tb25nb2RiLmNvbS9kb2NzL2F0bGFzL3NlY3VyaXR5LW11bHRpLWZhY3Rvci1hdXRoZW50aWNhdGlvbi8uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnYW5pemF0aW9uUHJvcHMjTXVsdGlGYWN0b3JBdXRoUmVxdWlyZWRcbiAgICovXG4gIHJlYWRvbmx5IG11bHRpRmFjdG9yQXV0aFJlcXVpcmVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRvIGJsb2NrIE1vbmdvREIgU3VwcG9ydCBmcm9tIGFjY2Vzc2luZyBBdGxhcyBpbmZyYXN0cnVjdHVyZSBmb3IgYW55IGRlcGxveW1lbnQgaW4gdGhlIHNwZWNpZmllZCBvcmdhbml6YXRpb24gd2l0aG91dCBleHBsaWNpdCBwZXJtaXNzaW9uLiBPbmNlIHRoaXMgc2V0dGluZyBpcyB0dXJuZWQgb24sIHlvdSBjYW4gZ3JhbnQgTW9uZ29EQiBTdXBwb3J0IGEgMjQtaG91ciBieXBhc3MgYWNjZXNzIHRvIHRoZSBBdGxhcyBkZXBsb3ltZW50IHRvIHJlc29sdmUgc3VwcG9ydCBpc3N1ZXMuIFRvIGxlYXJuIG1vcmUsIHNlZTogaHR0cHM6Ly93d3cubW9uZ29kYi5jb20vZG9jcy9hdGxhcy9zZWN1cml0eS1yZXN0cmljdC1zdXBwb3J0LWFjY2Vzcy8uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnYW5pemF0aW9uUHJvcHMjUmVzdHJpY3RFbXBsb3llZUFjY2Vzc1xuICAgKi9cbiAgcmVhZG9ubHkgcmVzdHJpY3RFbXBsb3llZUFjY2Vzcz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEVtYWlsIGFkZHJlc3Mgb2YgdGhlIHNlY3VyaXR5IGNvbnRhY3QgZm9yIHRoZSBvcmdhbml6YXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnYW5pemF0aW9uUHJvcHMjU2VjdXJpdHlDb250YWN0XG4gICAqL1xuICByZWFkb25seSBzZWN1cml0eUNvbnRhY3Q/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0Nmbk9yZ2FuaXphdGlvblByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5Pcmdhbml6YXRpb25Qcm9wcyhcbiAgb2JqOiBDZm5Pcmdhbml6YXRpb25Qcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIE5hbWU6IG9iai5uYW1lLFxuICAgIEFQSUtleTogdG9Kc29uX0FwaUtleShvYmouYXBpS2V5KSxcbiAgICBGZWRlcmF0ZWRTZXR0aW5nc0lkOiBvYmouZmVkZXJhdGVkU2V0dGluZ3NJZCxcbiAgICBPcmdPd25lcklkOiBvYmoub3JnT3duZXJJZCxcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgICBBd3NTZWNyZXROYW1lOiBvYmouYXdzU2VjcmV0TmFtZSxcbiAgICBTa2lwRGVmYXVsdEFsZXJ0c1NldHRpbmdzOiBvYmouc2tpcERlZmF1bHRBbGVydHNTZXR0aW5ncyxcbiAgICBHZW5BSUZlYXR1cmVzRW5hYmxlZDogb2JqLmdlbkFpRmVhdHVyZXNFbmFibGVkLFxuICAgIElzRGVsZXRlZDogb2JqLmlzRGVsZXRlZCxcbiAgICBBcGlBY2Nlc3NMaXN0UmVxdWlyZWQ6IG9iai5hcGlBY2Nlc3NMaXN0UmVxdWlyZWQsXG4gICAgTXVsdGlGYWN0b3JBdXRoUmVxdWlyZWQ6IG9iai5tdWx0aUZhY3RvckF1dGhSZXF1aXJlZCxcbiAgICBSZXN0cmljdEVtcGxveWVlQWNjZXNzOiBvYmoucmVzdHJpY3RFbXBsb3llZUFjY2VzcyxcbiAgICBTZWN1cml0eUNvbnRhY3Q6IG9iai5zZWN1cml0eUNvbnRhY3QsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgQVBJS2V5XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBpS2V5IHtcbiAgLyoqXG4gICAqIFB1cnBvc2Ugb3IgZXhwbGFuYXRpb24gcHJvdmlkZWQgd2hlbiBzb21lb25lIGNyZWF0ZWQgdGhpcyBvcmdhbml6YXRpb24gQVBJIGtleS4gMSB0byAyNTAgY2hhcmFjdGVyc1xuICAgKlxuICAgKiBAc2NoZW1hIEFQSUtleSNEZXNjcmlwdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExpc3Qgb2Ygcm9sZXMgdG8gZ3JhbnQgdGhpcyBBUEkga2V5LiBJZiB5b3UgcHJvdmlkZSB0aGlzIGxpc3QsIHByb3ZpZGUgYSBtaW5pbXVtIG9mIG9uZSByb2xlIGFuZCBlbnN1cmUgZWFjaCByb2xlIGFwcGxpZXMgdG8gdGhpcyBvcmdhbml6YXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgQVBJS2V5I1JvbGVzXG4gICAqL1xuICByZWFkb25seSByb2xlcz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdBcGlLZXknIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0FwaUtleShcbiAgb2JqOiBBcGlLZXkgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBEZXNjcmlwdGlvbjogb2JqLmRlc2NyaXB0aW9uLFxuICAgIFJvbGVzOiBvYmoucm9sZXM/Lm1hcCgoeSkgPT4geSksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpPcmdhbml6YXRpb25gXG4gKlxuICogQGNsb3VkZm9ybWF0aW9uUmVzb3VyY2UgTW9uZ29EQjo6QXRsYXM6Ok9yZ2FuaXphdGlvblxuICogQHN0YWJpbGl0eSBleHRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgQ2ZuT3JnYW5pemF0aW9uIGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6Ok9yZ2FuaXphdGlvblwiO1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZSBwcm9wcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwcm9wczogQ2ZuT3JnYW5pemF0aW9uUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6Ok9yZ2FuaXphdGlvbi5PcmdJZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyT3JnSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6T3JnYW5pemF0aW9uYC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmbk9yZ2FuaXphdGlvblByb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuT3JnYW5pemF0aW9uLkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuT3JnYW5pemF0aW9uUHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0ck9yZ0lkID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiT3JnSWRcIikpO1xuICB9XG59XG4iXX0=