awscdk-resources-mongodbatlas
Version:
MongoDB Atlas CDK Construct Library for AWS CloudFormation Resources
110 lines • 18.8 kB
JavaScript
;
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=