UNPKG

awscdk-resources-mongodbatlas

Version:

MongoDB Atlas CDK Construct Library for AWS CloudFormation Resources

110 lines 18.8 kB
"use strict"; var _a; Object.defineProperty(exports, "__esModule", { value: true }); exports.CfnThirdPartyIntegration = exports.CfnThirdPartyIntegrationPropsServiceDiscovery = exports.CfnThirdPartyIntegrationPropsType = void 0; exports.toJson_CfnThirdPartyIntegrationProps = toJson_CfnThirdPartyIntegrationProps; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); // Generated by cdk-import const cdk = require("aws-cdk-lib"); /** * Converts an object of type 'CfnThirdPartyIntegrationProps' to JSON representation. */ /* eslint-disable max-len, quote-props */ function toJson_CfnThirdPartyIntegrationProps(obj) { if (obj === undefined) { return undefined; } const result = { ProjectId: obj.projectId, Profile: obj.profile, Type: obj.type, ApiKey: obj.apiKey, Region: obj.region, ServiceKey: obj.serviceKey, ApiToken: obj.apiToken, TeamName: obj.teamName, ChannelName: obj.channelName, RoutingKey: obj.routingKey, Url: obj.url, Secret: obj.secret, MicrosoftTeamsWebhookUrl: obj.microsoftTeamsWebhookUrl, UserName: obj.userName, Password: obj.password, ServiceDiscovery: obj.serviceDiscovery, Enabled: obj.enabled, ListenAddress: obj.listenAddress, TlsPemPath: obj.tlsPemPath, SendUserProvidedResourceTags: obj.sendUserProvidedResourceTags, SendCollectionLatencyMetrics: obj.sendCollectionLatencyMetrics, SendDatabaseMetrics: obj.sendDatabaseMetrics, }; // 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 */ /** * Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud. The value must match the third-party service integration type. * * @schema CfnThirdPartyIntegrationPropsType */ var CfnThirdPartyIntegrationPropsType; (function (CfnThirdPartyIntegrationPropsType) { /** PAGER_DUTY */ CfnThirdPartyIntegrationPropsType["PAGER_DUTY"] = "PAGER_DUTY"; /** MICROSOFT_TEAMS */ CfnThirdPartyIntegrationPropsType["MICROSOFT_TEAMS"] = "MICROSOFT_TEAMS"; /** SLACK */ CfnThirdPartyIntegrationPropsType["SLACK"] = "SLACK"; /** DATADOG */ CfnThirdPartyIntegrationPropsType["DATADOG"] = "DATADOG"; /** OPS_GENIE */ CfnThirdPartyIntegrationPropsType["OPS_GENIE"] = "OPS_GENIE"; /** VICTOR_OPS */ CfnThirdPartyIntegrationPropsType["VICTOR_OPS"] = "VICTOR_OPS"; /** WEBHOOK */ CfnThirdPartyIntegrationPropsType["WEBHOOK"] = "WEBHOOK"; /** PROMETHEUS */ CfnThirdPartyIntegrationPropsType["PROMETHEUS"] = "PROMETHEUS"; })(CfnThirdPartyIntegrationPropsType || (exports.CfnThirdPartyIntegrationPropsType = CfnThirdPartyIntegrationPropsType = {})); /** * Desired method to discover the Prometheus service. * * @schema CfnThirdPartyIntegrationPropsServiceDiscovery */ var CfnThirdPartyIntegrationPropsServiceDiscovery; (function (CfnThirdPartyIntegrationPropsServiceDiscovery) { /** http */ CfnThirdPartyIntegrationPropsServiceDiscovery["HTTP"] = "http"; /** file */ CfnThirdPartyIntegrationPropsServiceDiscovery["FILE"] = "file"; })(CfnThirdPartyIntegrationPropsServiceDiscovery || (exports.CfnThirdPartyIntegrationPropsServiceDiscovery = CfnThirdPartyIntegrationPropsServiceDiscovery = {})); /** * A CloudFormation `MongoDB::Atlas::ThirdPartyIntegration` * * @cloudformationResource MongoDB::Atlas::ThirdPartyIntegration * @stability external */ class CfnThirdPartyIntegration extends cdk.CfnResource { /** * Create a new `MongoDB::Atlas::ThirdPartyIntegration`. * * @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: CfnThirdPartyIntegration.CFN_RESOURCE_TYPE_NAME, properties: toJson_CfnThirdPartyIntegrationProps(props), }); this.props = props; } } exports.CfnThirdPartyIntegration = CfnThirdPartyIntegration; _a = JSII_RTTI_SYMBOL_1; CfnThirdPartyIntegration[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnThirdPartyIntegration", version: "4.0.0" }; /** * The CloudFormation resource type name for this resource class. */ CfnThirdPartyIntegration.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::ThirdPartyIntegration"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3RoaXJkLXBhcnR5LWludGVncmF0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUF5S0Esb0ZBbUNDOztBQTVNRCwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBb0tuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixvQ0FBb0MsQ0FDbEQsR0FBOEM7SUFFOUMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDdEIsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1FBQ3hCLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7UUFDZCxNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07UUFDbEIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNO1FBQ2xCLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVTtRQUMxQixRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7UUFDdEIsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRO1FBQ3RCLFdBQVcsRUFBRSxHQUFHLENBQUMsV0FBVztRQUM1QixVQUFVLEVBQUUsR0FBRyxDQUFDLFVBQVU7UUFDMUIsR0FBRyxFQUFFLEdBQUcsQ0FBQyxHQUFHO1FBQ1osTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNO1FBQ2xCLHdCQUF3QixFQUFFLEdBQUcsQ0FBQyx3QkFBd0I7UUFDdEQsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRO1FBQ3RCLFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUTtRQUN0QixnQkFBZ0IsRUFBRSxHQUFHLENBQUMsZ0JBQWdCO1FBQ3RDLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixhQUFhLEVBQUUsR0FBRyxDQUFDLGFBQWE7UUFDaEMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVO1FBQzFCLDRCQUE0QixFQUFFLEdBQUcsQ0FBQyw0QkFBNEI7UUFDOUQsNEJBQTRCLEVBQUUsR0FBRyxDQUFDLDRCQUE0QjtRQUM5RCxtQkFBbUIsRUFBRSxHQUFHLENBQUMsbUJBQW1CO0tBQzdDLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQUNELHdDQUF3QztBQUV4Qzs7OztHQUlHO0FBQ0gsSUFBWSxpQ0FpQlg7QUFqQkQsV0FBWSxpQ0FBaUM7SUFDM0MsaUJBQWlCO0lBQ2pCLDhEQUF5QixDQUFBO0lBQ3pCLHNCQUFzQjtJQUN0Qix3RUFBbUMsQ0FBQTtJQUNuQyxZQUFZO0lBQ1osb0RBQWUsQ0FBQTtJQUNmLGNBQWM7SUFDZCx3REFBbUIsQ0FBQTtJQUNuQixnQkFBZ0I7SUFDaEIsNERBQXVCLENBQUE7SUFDdkIsaUJBQWlCO0lBQ2pCLDhEQUF5QixDQUFBO0lBQ3pCLGNBQWM7SUFDZCx3REFBbUIsQ0FBQTtJQUNuQixpQkFBaUI7SUFDakIsOERBQXlCLENBQUE7QUFDM0IsQ0FBQyxFQWpCVyxpQ0FBaUMsaURBQWpDLGlDQUFpQyxRQWlCNUM7QUFFRDs7OztHQUlHO0FBQ0gsSUFBWSw2Q0FLWDtBQUxELFdBQVksNkNBQTZDO0lBQ3ZELFdBQVc7SUFDWCw4REFBYSxDQUFBO0lBQ2IsV0FBVztJQUNYLDhEQUFhLENBQUE7QUFDZixDQUFDLEVBTFcsNkNBQTZDLDZEQUE3Qyw2Q0FBNkMsUUFLeEQ7QUFFRDs7Ozs7R0FLRztBQUNILE1BQWEsd0JBQXlCLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFZM0Q7Ozs7OztPQU1HO0lBQ0gsWUFDRSxLQUEyQixFQUMzQixFQUFVLEVBQ1YsS0FBb0M7UUFFcEMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixJQUFJLEVBQUUsd0JBQXdCLENBQUMsc0JBQXNCO1lBQ3JELFVBQVUsRUFBRSxvQ0FBb0MsQ0FBQyxLQUFLLENBQUU7U0FDekQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQzs7QUE5QkgsNERBK0JDOzs7QUE5QkM7O0dBRUc7QUFDb0IsK0NBQXNCLEdBQzNDLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBSZXR1cm5zLCBhZGRzLCBlZGl0cywgYW5kIHJlbW92ZXMgdGhpcmQtcGFydHkgc2VydmljZSBpbnRlZ3JhdGlvbiBjb25maWd1cmF0aW9ucy4gTW9uZ29EQiBDbG91ZCBzZW5kcyBhbGVydHMgdG8gZWFjaCB0aGlyZC1wYXJ0eSBzZXJ2aWNlIHRoYXQgeW91IGNvbmZpZ3VyZS5cbiAqXG4gKiBAc2NoZW1hIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uUHJvcHMge1xuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgeW91ciBwcm9qZWN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzI1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwcm9maWxlIGlzIGRlZmluZWQgaW4gQVdTIFNlY3JldCBtYW5hZ2VyLiBTZWUgW1NlY3JldCBNYW5hZ2VyIFByb2ZpbGUgc2V0dXBdKC4uLy4uLy4uL2V4YW1wbGVzL3Byb2ZpbGUtc2VjcmV0LnlhbWwpLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgc2VydmljZSB0byB3aGljaCB5b3Ugd2FudCB0byBpbnRlZ3JhdGUgd2l0aCBNb25nb0RCIENsb3VkLiBUaGUgdmFsdWUgbXVzdCBtYXRjaCB0aGUgdGhpcmQtcGFydHkgc2VydmljZSBpbnRlZ3JhdGlvbiB0eXBlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzI1R5cGVcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU6IENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzVHlwZTtcblxuICAvKipcbiAgICogS2V5IHRoYXQgYWxsb3dzIE1vbmdvREIgQ2xvdWQgdG8gYWNjZXNzIHlvdXIgT3BzZ2VuaWUvRGF0YWRvZyBhY2NvdW50LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzI0FwaUtleVxuICAgKi9cbiAgcmVhZG9ubHkgYXBpS2V5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUd28tbGV0dGVyIGNvZGUgdGhhdCBpbmRpY2F0ZXMgd2hpY2ggcmVnaW9uYWwgVVJMIE1vbmdvREIgdXNlcyB0byBhY2Nlc3MgdGhlIE9wc2dlbmllL0RhdGFkb2cgQVBJLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzI1JlZ2lvblxuICAgKi9cbiAgcmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTZXJ2aWNlIGtleSBhc3NvY2lhdGVkIHdpdGggeW91ciBQYWdlckR1dHkgYWNjb3VudC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wcyNTZXJ2aWNlS2V5XG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlS2V5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBLZXkgdGhhdCBhbGxvd3MgTW9uZ29EQiBDbG91ZCB0byBhY2Nlc3MgeW91ciBTbGFjayBhY2NvdW50LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzI0FwaVRva2VuXG4gICAqL1xuICByZWFkb25seSBhcGlUb2tlbj86IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHlvdXIgU2xhY2sgdGVhbS4gU2V0IHRoaXMgcGFyYW1ldGVyIHdoZW4geW91IGNvbmZpZ3VyZSBhIGxlZ2FjeSBTbGFjayBpbnRlZ3JhdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wcyNUZWFtTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgdGVhbU5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIFNsYWNrIGNoYW5uZWwgdG8gd2hpY2ggTW9uZ29EQiBDbG91ZCBzZW5kcyBhbGVydCBub3RpZmljYXRpb25zLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzI0NoYW5uZWxOYW1lXG4gICAqL1xuICByZWFkb25seSBjaGFubmVsTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogUm91dGluZyBrZXkgYXNzb2NpYXRlZCB3aXRoIHlvdXIgU3BsdW5rIE9uLUNhbGwgYWNjb3VudC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wcyNSb3V0aW5nS2V5XG4gICAqL1xuICByZWFkb25seSByb3V0aW5nS2V5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFbmRwb2ludCB3ZWIgYWRkcmVzcyB0byB3aGljaCBNb25nb0RCIENsb3VkIHNlbmRzIG5vdGlmaWNhdGlvbnMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uUHJvcHMjVXJsXG4gICAqL1xuICByZWFkb25seSB1cmw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBhcmFtZXRlciByZXR1cm5lZCBpZiBzb21lb25lIGNvbmZpZ3VyZSB0aGlzIHdlYmhvb2sgd2l0aCBhIHNlY3JldC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wcyNTZWNyZXRcbiAgICovXG4gIHJlYWRvbmx5IHNlY3JldD86IHN0cmluZztcblxuICAvKipcbiAgICogRW5kcG9pbnQgd2ViIGFkZHJlc3Mgb2YgdGhlIE1pY3Jvc29mdCBUZWFtcyB3ZWJob29rIHRvIHdoaWNoIE1vbmdvREIgQ2xvdWQgc2VuZHMgbm90aWZpY2F0aW9ucy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wcyNNaWNyb3NvZnRUZWFtc1dlYmhvb2tVcmxcbiAgICovXG4gIHJlYWRvbmx5IG1pY3Jvc29mdFRlYW1zV2ViaG9va1VybD86IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHlvdXIgUHJvbWV0aGV1cyBpbmNvbWluZyB3ZWJob29rLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzI1VzZXJOYW1lXG4gICAqL1xuICByZWFkb25seSB1c2VyTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogUGFzc3dvcmQgcmVxdWlyZWQgZm9yIHlvdXIgaW50ZWdyYXRpb24gd2l0aCBQcm9tZXRoZXVzXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uUHJvcHMjUGFzc3dvcmRcbiAgICovXG4gIHJlYWRvbmx5IHBhc3N3b3JkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZXNpcmVkIG1ldGhvZCB0byBkaXNjb3ZlciB0aGUgUHJvbWV0aGV1cyBzZXJ2aWNlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzI1NlcnZpY2VEaXNjb3ZlcnlcbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VEaXNjb3Zlcnk/OiBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wc1NlcnZpY2VEaXNjb3Zlcnk7XG5cbiAgLyoqXG4gICAqIEZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciBzb21lb25lIGhhcyBhY3RpdmF0ZWQgdGhlIFByb21ldGhldXMgaW50ZWdyYXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uUHJvcHMjRW5hYmxlZFxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIENvbWJpbmF0aW9uIG9mIElQdjQgYWRkcmVzcyBhbmQgSW50ZXJuZXQgQXNzaWduZWQgTnVtYmVycyBBdXRob3JpdHkgKElBTkEpIHBvcnQgb3IgdGhlIElBTkEgcG9ydCBhbG9uZSB0byB3aGljaCBQcm9tZXRoZXVzIGJpbmRzIHRvIGluZ2VzdCBNb25nb0RCIG1ldHJpY3MuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uUHJvcHMjTGlzdGVuQWRkcmVzc1xuICAgKi9cbiAgcmVhZG9ubHkgbGlzdGVuQWRkcmVzcz86IHN0cmluZztcblxuICAvKipcbiAgICogUm9vdC1yZWxhdGl2ZSBwYXRoIHRvIHRoZSBUcmFuc3BvcnQgTGF5ZXIgU2VjdXJpdHkgKFRMUykgUHJpdmFjeSBFbmhhbmNlZCBNYWlsIChQRU0pIGtleSBhbmQgY2VydGlmaWNhdGUgZmlsZSBvbiB0aGUgaG9zdC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wcyNUbHNQZW1QYXRoXG4gICAqL1xuICByZWFkb25seSB0bHNQZW1QYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgdG8gaW5jbHVkZSB1c2VyLWRlZmluZWQgcmVzb3VyY2UgdGFncyB3aGVuIHNlbmRpbmcgbWV0cmljcyBhbmQgYWxlcnRzIHRvIHRoaXJkLXBhcnR5IHNlcnZpY2VzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzI1NlbmRVc2VyUHJvdmlkZWRSZXNvdXJjZVRhZ3NcbiAgICovXG4gIHJlYWRvbmx5IHNlbmRVc2VyUHJvdmlkZWRSZXNvdXJjZVRhZ3M/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgdG8gc2VuZCBjb2xsZWN0aW9uIGxhdGVuY3kgbWV0cmljcyB0byBEYXRhZG9nLCBpbmNsdWRpbmcgZGF0YWJhc2UgbmFtZXMsIGNvbGxlY3Rpb24gbmFtZXMsIGFuZCBsYXRlbmN5IG1ldHJpY3Mgb24gcmVhZHMsIHdyaXRlcywgY29tbWFuZHMsIGFuZCB0cmFuc2FjdGlvbnMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uUHJvcHMjU2VuZENvbGxlY3Rpb25MYXRlbmN5TWV0cmljc1xuICAgKi9cbiAgcmVhZG9ubHkgc2VuZENvbGxlY3Rpb25MYXRlbmN5TWV0cmljcz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciB0byBzZW5kIGRhdGFiYXNlIG1ldHJpY3MgdG8gRGF0YWRvZywgaW5jbHVkaW5nIGRhdGFiYXNlIG5hbWVzIGFuZCBtZXRyaWNzIG9uIHRoZSBudW1iZXIgb2YgY29sbGVjdGlvbnMsIHN0b3JhZ2Ugc2l6ZSwgYW5kIGluZGV4IHNpemUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uUHJvcHMjU2VuZERhdGFiYXNlTWV0cmljc1xuICAgKi9cbiAgcmVhZG9ubHkgc2VuZERhdGFiYXNlTWV0cmljcz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wcyhcbiAgb2JqOiBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgICBUeXBlOiBvYmoudHlwZSxcbiAgICBBcGlLZXk6IG9iai5hcGlLZXksXG4gICAgUmVnaW9uOiBvYmoucmVnaW9uLFxuICAgIFNlcnZpY2VLZXk6IG9iai5zZXJ2aWNlS2V5LFxuICAgIEFwaVRva2VuOiBvYmouYXBpVG9rZW4sXG4gICAgVGVhbU5hbWU6IG9iai50ZWFtTmFtZSxcbiAgICBDaGFubmVsTmFtZTogb2JqLmNoYW5uZWxOYW1lLFxuICAgIFJvdXRpbmdLZXk6IG9iai5yb3V0aW5nS2V5LFxuICAgIFVybDogb2JqLnVybCxcbiAgICBTZWNyZXQ6IG9iai5zZWNyZXQsXG4gICAgTWljcm9zb2Z0VGVhbXNXZWJob29rVXJsOiBvYmoubWljcm9zb2Z0VGVhbXNXZWJob29rVXJsLFxuICAgIFVzZXJOYW1lOiBvYmoudXNlck5hbWUsXG4gICAgUGFzc3dvcmQ6IG9iai5wYXNzd29yZCxcbiAgICBTZXJ2aWNlRGlzY292ZXJ5OiBvYmouc2VydmljZURpc2NvdmVyeSxcbiAgICBFbmFibGVkOiBvYmouZW5hYmxlZCxcbiAgICBMaXN0ZW5BZGRyZXNzOiBvYmoubGlzdGVuQWRkcmVzcyxcbiAgICBUbHNQZW1QYXRoOiBvYmoudGxzUGVtUGF0aCxcbiAgICBTZW5kVXNlclByb3ZpZGVkUmVzb3VyY2VUYWdzOiBvYmouc2VuZFVzZXJQcm92aWRlZFJlc291cmNlVGFncyxcbiAgICBTZW5kQ29sbGVjdGlvbkxhdGVuY3lNZXRyaWNzOiBvYmouc2VuZENvbGxlY3Rpb25MYXRlbmN5TWV0cmljcyxcbiAgICBTZW5kRGF0YWJhc2VNZXRyaWNzOiBvYmouc2VuZERhdGFiYXNlTWV0cmljcyxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBzZXJ2aWNlIHRvIHdoaWNoIHlvdSB3YW50IHRvIGludGVncmF0ZSB3aXRoIE1vbmdvREIgQ2xvdWQuIFRoZSB2YWx1ZSBtdXN0IG1hdGNoIHRoZSB0aGlyZC1wYXJ0eSBzZXJ2aWNlIGludGVncmF0aW9uIHR5cGUuXG4gKlxuICogQHNjaGVtYSBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wc1R5cGVcbiAqL1xuZXhwb3J0IGVudW0gQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uUHJvcHNUeXBlIHtcbiAgLyoqIFBBR0VSX0RVVFkgKi9cbiAgUEFHRVJfRFVUWSA9IFwiUEFHRVJfRFVUWVwiLFxuICAvKiogTUlDUk9TT0ZUX1RFQU1TICovXG4gIE1JQ1JPU09GVF9URUFNUyA9IFwiTUlDUk9TT0ZUX1RFQU1TXCIsXG4gIC8qKiBTTEFDSyAqL1xuICBTTEFDSyA9IFwiU0xBQ0tcIixcbiAgLyoqIERBVEFET0cgKi9cbiAgREFUQURPRyA9IFwiREFUQURPR1wiLFxuICAvKiogT1BTX0dFTklFICovXG4gIE9QU19HRU5JRSA9IFwiT1BTX0dFTklFXCIsXG4gIC8qKiBWSUNUT1JfT1BTICovXG4gIFZJQ1RPUl9PUFMgPSBcIlZJQ1RPUl9PUFNcIixcbiAgLyoqIFdFQkhPT0sgKi9cbiAgV0VCSE9PSyA9IFwiV0VCSE9PS1wiLFxuICAvKiogUFJPTUVUSEVVUyAqL1xuICBQUk9NRVRIRVVTID0gXCJQUk9NRVRIRVVTXCIsXG59XG5cbi8qKlxuICogRGVzaXJlZCBtZXRob2QgdG8gZGlzY292ZXIgdGhlIFByb21ldGhldXMgc2VydmljZS5cbiAqXG4gKiBAc2NoZW1hIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzU2VydmljZURpc2NvdmVyeVxuICovXG5leHBvcnQgZW51bSBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wc1NlcnZpY2VEaXNjb3Zlcnkge1xuICAvKiogaHR0cCAqL1xuICBIVFRQID0gXCJodHRwXCIsXG4gIC8qKiBmaWxlICovXG4gIEZJTEUgPSBcImZpbGVcIixcbn1cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6VGhpcmRQYXJ0eUludGVncmF0aW9uYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpUaGlyZFBhcnR5SW50ZWdyYXRpb25cbiAqIEBzdGFiaWxpdHkgZXh0ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvbiBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID1cbiAgICBcIk1vbmdvREI6OkF0bGFzOjpUaGlyZFBhcnR5SW50ZWdyYXRpb25cIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpUaGlyZFBhcnR5SW50ZWdyYXRpb25gLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uUHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb24uQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICB9XG59XG4iXX0=