@microsoft/terraform-cdk-constructs 0.0.3-pre.6 → 0.0.3-pre.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/.jsii +909 -306
  2. package/API.md +2488 -255
  3. package/README.md +112 -18
  4. package/docs/images/ide-documentation.png +0 -0
  5. package/lib/azure-actiongroup/lib/actiongroup.d.ts +39 -0
  6. package/lib/azure-actiongroup/lib/actiongroup.js +40 -1
  7. package/lib/azure-applicationgateway/lib/gateway.d.ts +76 -0
  8. package/lib/azure-applicationgateway/lib/gateway.js +78 -2
  9. package/lib/azure-applicationinsights/lib/appinsights.d.ts +50 -0
  10. package/lib/azure-applicationinsights/lib/appinsights.js +52 -3
  11. package/lib/azure-containerregistry/lib/registry.d.ts +29 -0
  12. package/lib/azure-containerregistry/lib/registry.js +31 -2
  13. package/lib/azure-datalake/lib/datalake.d.ts +50 -0
  14. package/lib/azure-datalake/lib/datalake.js +51 -1
  15. package/lib/azure-datalake/lib/filesystem.d.ts +51 -0
  16. package/lib/azure-datalake/lib/filesystem.js +52 -1
  17. package/lib/azure-datalake/lib/path.d.ts +37 -0
  18. package/lib/azure-datalake/lib/path.js +38 -1
  19. package/lib/azure-eventhub/lib/authorization.d.ts +30 -0
  20. package/lib/azure-eventhub/lib/authorization.js +32 -2
  21. package/lib/azure-eventhub/lib/cluster.d.ts +29 -0
  22. package/lib/azure-eventhub/lib/cluster.js +31 -2
  23. package/lib/azure-eventhub/lib/consumer.d.ts +28 -0
  24. package/lib/azure-eventhub/lib/consumer.js +30 -2
  25. package/lib/azure-eventhub/lib/instance.d.ts +118 -0
  26. package/lib/azure-eventhub/lib/instance.js +120 -2
  27. package/lib/azure-eventhub/lib/kusto-connection.d.ts +41 -0
  28. package/lib/azure-eventhub/lib/kusto-connection.js +43 -2
  29. package/lib/azure-eventhub/lib/namespace.d.ts +74 -0
  30. package/lib/azure-eventhub/lib/namespace.js +76 -3
  31. package/lib/azure-functionapp/lib/functionapplinux.js +1 -1
  32. package/lib/azure-keyvault/lib/certificate.d.ts +96 -2
  33. package/lib/azure-keyvault/lib/certificate.js +55 -3
  34. package/lib/azure-keyvault/lib/key.d.ts +36 -0
  35. package/lib/azure-keyvault/lib/key.js +38 -2
  36. package/lib/azure-keyvault/lib/policy.d.ts +30 -0
  37. package/lib/azure-keyvault/lib/policy.js +32 -2
  38. package/lib/azure-keyvault/lib/secret.d.ts +31 -0
  39. package/lib/azure-keyvault/lib/secret.js +33 -2
  40. package/lib/azure-keyvault/lib/vault.d.ts +188 -0
  41. package/lib/azure-keyvault/lib/vault.js +191 -7
  42. package/lib/azure-kubernetes/lib/cluster.d.ts +25 -4
  43. package/lib/azure-kubernetes/lib/cluster.js +27 -6
  44. package/lib/azure-kusto/lib/cluster.d.ts +53 -0
  45. package/lib/azure-kusto/lib/cluster.js +55 -2
  46. package/lib/azure-kusto/lib/compute-specification.js +1 -1
  47. package/lib/azure-kusto/lib/database.d.ts +103 -0
  48. package/lib/azure-kusto/lib/database.js +105 -2
  49. package/lib/azure-loganalytics/lib/workspace.d.ts +47 -0
  50. package/lib/azure-loganalytics/lib/workspace.js +49 -2
  51. package/lib/azure-metricalert/lib/metric-alert.d.ts +43 -4
  52. package/lib/azure-metricalert/lib/metric-alert.js +45 -6
  53. package/lib/azure-networksecuritygroup/lib/preconfigured-rules.js +1 -1
  54. package/lib/azure-networksecuritygroup/lib/securitygroup.d.ts +92 -0
  55. package/lib/azure-networksecuritygroup/lib/securitygroup.js +95 -5
  56. package/lib/azure-queryrulealert/lib/query-rule-alert.d.ts +35 -4
  57. package/lib/azure-queryrulealert/lib/query-rule-alert.js +37 -6
  58. package/lib/azure-resourcegroup/lib/resource-group.d.ts +28 -0
  59. package/lib/azure-resourcegroup/lib/resource-group.js +30 -2
  60. package/lib/azure-storageaccount/lib/account.d.ts +75 -48
  61. package/lib/azure-storageaccount/lib/account.js +77 -50
  62. package/lib/azure-storageaccount/lib/container.d.ts +94 -12
  63. package/lib/azure-storageaccount/lib/container.js +97 -15
  64. package/lib/azure-storageaccount/lib/fileshare.d.ts +36 -0
  65. package/lib/azure-storageaccount/lib/fileshare.js +39 -3
  66. package/lib/azure-storageaccount/lib/queue.d.ts +29 -0
  67. package/lib/azure-storageaccount/lib/queue.js +31 -2
  68. package/lib/azure-storageaccount/lib/table.d.ts +32 -0
  69. package/lib/azure-storageaccount/lib/table.js +34 -2
  70. package/lib/azure-virtualmachine/lib/image-references.js +2 -2
  71. package/lib/azure-virtualmachine/lib/vm.d.ts +84 -8
  72. package/lib/azure-virtualmachine/lib/vm.js +87 -11
  73. package/lib/azure-virtualmachinescaleset/lib/cluster.d.ts +98 -8
  74. package/lib/azure-virtualmachinescaleset/lib/cluster.js +101 -11
  75. package/lib/azure-virtualnetwork/lib/network.d.ts +61 -0
  76. package/lib/azure-virtualnetwork/lib/network.js +63 -3
  77. package/lib/azure-virtualnetwork/lib/peering.d.ts +39 -0
  78. package/lib/azure-virtualnetwork/lib/peering.js +41 -2
  79. package/lib/core-azure/lib/diagsettings.d.ts +37 -0
  80. package/lib/core-azure/lib/diagsettings.js +39 -2
  81. package/lib/core-azure/lib/rbac.d.ts +22 -4
  82. package/lib/core-azure/lib/rbac.js +24 -6
  83. package/lib/core-azure/lib/resource.d.ts +45 -0
  84. package/lib/core-azure/lib/resource.js +48 -4
  85. package/package.json +1 -1
@@ -10,6 +10,35 @@ const authorization_1 = require("./authorization");
10
10
  const consumer_1 = require("./consumer");
11
11
  const kusto_connection_1 = require("./kusto-connection");
12
12
  class Instance extends constructs_1.Construct {
13
+ /**
14
+ * Constructs a new Event Hub instance.
15
+ *
16
+ * This class creates an Azure Event Hub instance within a specified namespace. Event Hubs is a highly scalable
17
+ * data streaming platform and event ingestion service, capable of receiving and processing millions of events per second.
18
+ * Event Hubs can process and store events, data, or telemetry produced by distributed software and devices.
19
+ *
20
+ * @param scope - The scope in which to define this construct, typically used for managing lifecycles and creation order.
21
+ * @param name - The unique name for this instance of the Event Hub.
22
+ * @param ehInstanceProps - The properties for configuring the Event Hub instance. The properties include:
23
+ * - `name`: Required. The name of the Event Hub instance.
24
+ * - `partitionCount`: Optional. The number of partitions for the Event Hub. Defaults to 2. Max value is 32 for shared namespaces.
25
+ * - `messageRetention`: Optional. The number of days to retain the messages. Defaults to 1.
26
+ * - `status`: Optional. Specifies the operational status of the Event Hub (Active, Disabled, SendDisabled). Defaults to "Active".
27
+ * - `resourceGroup`: Required. The name of the resource group in which the Event Hub's parent namespace exists.
28
+ * - `namespaceName`: Required. The name of the Event Hub Namespace where this instance will be created.
29
+ *
30
+ * Example usage:
31
+ * ```typescript
32
+ * const eventHubInstance = new Instance(this, 'myEventHubInstance', {
33
+ * name: 'exampleEventHub',
34
+ * namespaceName: 'exampleNamespace',
35
+ * resourceGroup: resourceGroup,
36
+ * partitionCount: 4,
37
+ * messageRetention: 7,
38
+ * status: 'Active'
39
+ * });
40
+ * ```
41
+ */
13
42
  constructor(scope, name, ehInstanceProps) {
14
43
  super(scope, name);
15
44
  this.ehInstanceProps = ehInstanceProps;
@@ -36,6 +65,33 @@ class Instance extends constructs_1.Construct {
36
65
  cdktfTerraformOutputEventhubInstanceId.overrideLogicalId("id");
37
66
  cdktfTerraformOutputEventhubInstancePartitionIds.overrideLogicalId("partition_ids");
38
67
  }
68
+ /**
69
+ * Adds an Authorization Rule to an Event Hub instance.
70
+ *
71
+ * This method creates a new Authorization Rule associated with the specified Event Hub,
72
+ * granting specified permissions such as 'listen', 'send', and 'manage' based on the properties provided.
73
+ * The rule determines the access level granted to users and applications for the Event Hub.
74
+ *
75
+ * @param props - The properties for the Authorization Rule, which include:
76
+ * - `name`: Required. A unique identifier for the Authorization Rule within the Event Hub.
77
+ * - `listen`: Optional. Specifies if the rule allows listening to the Event Hub. Defaults to false.
78
+ * - `send`: Optional. Specifies if the rule allows sending events to the Event Hub. Defaults to false.
79
+ * - `manage`: Optional. Specifies if the rule allows managing the Event Hub. When set to true,
80
+ * both 'listen' and 'send' are implicitly enabled. Defaults to false.
81
+ *
82
+ * @returns An instance of the AuthorizationRule class, configured with the specified permissions and associated
83
+ * with the Event Hub specified in the enclosing construct's properties.
84
+ *
85
+ * Example usage:
86
+ * ```typescript
87
+ * const eventHubAuthRule = eventHubInstance.addAuthorizationRule({
88
+ * name: 'myCustomAuthRule',
89
+ * listen: true,
90
+ * send: true,
91
+ * manage: false // Only listening and sending permissions are granted.
92
+ * });
93
+ * ```
94
+ */
39
95
  addAuthorizationRule(props) {
40
96
  return new authorization_1.AuthorizationRule(this, `ehauthrule-${props.name}`, {
41
97
  resourceGroupName: this.ehInstanceProps.resourceGroup.name,
@@ -44,6 +100,30 @@ class Instance extends constructs_1.Construct {
44
100
  ...props,
45
101
  });
46
102
  }
103
+ /**
104
+ * Adds a Consumer Group to an existing Event Hub instance.
105
+ *
106
+ * This method creates a new Consumer Group for the specified Event Hub. Consumer groups represent a view of the entire Event Hub,
107
+ * allowing consumer applications to have separate, independent views of the event stream. They read the stream at their own pace
108
+ * and maintain their own sequence point or offset. This enables a single Event Hub to support multiple consumer applications.
109
+ *
110
+ * @param name - The name of the Consumer Group to be added. This name must be unique within the Event Hub namespace.
111
+ * @param userMetadata - Optional. User-defined metadata for the Consumer Group. This metadata is useful for storing additional
112
+ * information about the consumer group, such as its purpose or operational details.
113
+ *
114
+ * @returns An instance of the ConsumerGroup class, configured with the specified properties and associated with the Event Hub
115
+ * specified in the enclosing construct's properties.
116
+ *
117
+ * Example usage:
118
+ * ```typescript
119
+ * const myConsumerGroup = eventHubInstance.addConsumerGroup('myConsumerGroupName', 'Metadata about this consumer group');
120
+ * ```
121
+ *
122
+ * @remarks
123
+ * Each consumer group can have multiple concurrent readers, but each partition in the Event Hub can only have one active consumer
124
+ * from a specific consumer group at a time. Multiple consumer groups enable multiple consuming applications to each have a separate
125
+ * view of the event stream, and to read the stream independently at their own pace and with their own offsets.
126
+ */
47
127
  addConsumerGroup(name, userMetadata) {
48
128
  return new consumer_1.ConsumerGroup(this, `ehconsumergroup-${name}`, {
49
129
  resourceGroup: this.ehInstanceProps.resourceGroup,
@@ -53,6 +133,44 @@ class Instance extends constructs_1.Construct {
53
133
  userMetadata: userMetadata,
54
134
  });
55
135
  }
136
+ /**
137
+ * Adds a Kusto Data Connection to an existing Kusto Cluster and Database for ingesting data from an EventHub.
138
+ *
139
+ * This method configures a new Kusto Data Connection linked to the specified EventHub. It facilitates the ingestion of streaming data
140
+ * into the Kusto database, allowing for real-time analytics on streamed data. This connection specifies how data from EventHub
141
+ * is to be ingested into tables within the Kusto Database.
142
+ *
143
+ * @param props - The properties for the Kusto Data Connection, derived from BaseKustoDataConnectionProps, which include:
144
+ * - `name`: Required. The name of the data connection to create.
145
+ * - `location`: Required. The Azure region where the data connection will be created.
146
+ * - `kustoResourceGroup`: Required. The Resource Group where the Kusto database exists.
147
+ * - `kustoClusterName`: Required. The name of the Kusto Cluster to which this data connection will be added.
148
+ * - `kustoDatabaseName`: Required. The name of the Kusto Database to which this data connection will be added.
149
+ * - `consumerGroup`: Optional. The EventHub consumer group used for ingestion. Defaults to "$Default".
150
+ * - `tableName`: Optional. The target table name in the Kusto database used for data ingestion.
151
+ * - `identityId`: Optional. The resource ID of a managed identity used for authentication with EventHub.
152
+ * - `mappingRuleName`: Optional. The mapping rule name used for data ingestion.
153
+ * - `dataFormat`: Optional. Specifies the data format of EventHub messages. Defaults to "JSON".
154
+ * - `databaseRoutingType`: Optional. Indicates the routing type for the database. Defaults to "Single".
155
+ * - `compression`: Optional. Specifies the compression type for the data connection. Defaults to "None".
156
+ *
157
+ * @returns An instance of the KustoDataConnection class, configured with the specified properties and linked to the EventHub
158
+ * specified in the enclosing construct's properties.
159
+ *
160
+ * Example usage:
161
+ * ```typescript
162
+ * const kustoConnection = kustoInstance.addKustoDataConnection({
163
+ * name: 'myKustoDataConnection',
164
+ * location: 'West US',
165
+ * kustoResourceGroup: resourceGroup,
166
+ * kustoClusterName: 'myCluster',
167
+ * kustoDatabaseName: 'myDatabase',
168
+ * tableName: 'IngestionTable',
169
+ * consumerGroup: '$Default',
170
+ * dataFormat: 'JSON'
171
+ * });
172
+ * ```
173
+ */
56
174
  addKustoDataConnection(props) {
57
175
  return new kusto_connection_1.KustoDataConnection(this, `ehkustodataconnection-${this.ehInstanceProps.name}-${props.name}`, {
58
176
  eventhubId: this.id,
@@ -62,5 +180,5 @@ class Instance extends constructs_1.Construct {
62
180
  }
63
181
  exports.Instance = Instance;
64
182
  _a = JSII_RTTI_SYMBOL_1;
65
- Instance[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_eventhub.Instance", version: "0.0.3-pre.6" };
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtZXZlbnRodWIvbGliL2luc3RhbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsbUVBQWdFO0FBRWhFLCtCQUErQjtBQUMvQiwyQ0FBdUM7QUFDdkMsbURBQTRFO0FBQzVFLHlDQUEyQztBQUMzQyx5REFHNEI7QUF5QzVCLE1BQWEsUUFBUyxTQUFRLHNCQUFTO0lBS3JDLFlBQVksS0FBZ0IsRUFBRSxJQUFZLEVBQUUsZUFBOEI7UUFDeEUsS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVuQixJQUFJLENBQUMsZUFBZSxHQUFHLGVBQWUsQ0FBQztRQUV2QyxNQUFNLFFBQVEsR0FBRztZQUNmLGNBQWMsRUFBRSxlQUFlLENBQUMsY0FBYyxJQUFJLENBQUM7WUFDbkQsZ0JBQWdCLEVBQUUsZUFBZSxDQUFDLGdCQUFnQixJQUFJLENBQUM7WUFDdkQsTUFBTSxFQUFFLGVBQWUsQ0FBQyxNQUFNLElBQUksUUFBUTtTQUMzQyxDQUFDO1FBRUYsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLG1CQUFRLENBQ25DLElBQUksRUFDSixjQUFjLGVBQWUsQ0FBQyxJQUFJLEVBQUUsRUFDcEM7WUFDRSxJQUFJLEVBQUUsZUFBZSxDQUFDLElBQUk7WUFDMUIsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLGFBQWEsQ0FBQyxJQUFJO1lBQ3JELGFBQWEsRUFBRSxlQUFlLENBQUMsYUFBYTtZQUM1QyxHQUFHLFFBQVE7U0FDWixDQUNGLENBQUM7UUFFRixVQUFVO1FBQ1YsSUFBSSxDQUFDLEVBQUUsR0FBRyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUM7UUFFbEQsTUFBTSxzQ0FBc0MsR0FBRyxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQ3RFLElBQUksRUFDSixJQUFJLEVBQ0o7WUFDRSxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsRUFBRTtTQUMzQixDQUNGLENBQUM7UUFDRixNQUFNLGdEQUFnRCxHQUNwRCxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRTtZQUMvQyxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsWUFBWTtTQUNyQyxDQUFDLENBQUM7UUFFTCxzQ0FBc0MsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvRCxnREFBZ0QsQ0FBQyxpQkFBaUIsQ0FDaEUsZUFBZSxDQUNoQixDQUFDO0lBQ0osQ0FBQztJQUVNLG9CQUFvQixDQUFDLEtBQTZCO1FBQ3ZELE9BQU8sSUFBSSxpQ0FBaUIsQ0FBQyxJQUFJLEVBQUUsY0FBYyxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDN0QsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsSUFBSTtZQUMxRCxhQUFhLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhO1lBQ2pELFlBQVksRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUk7WUFDdkMsR0FBRyxLQUFLO1NBQ1QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLGdCQUFnQixDQUFDLElBQVksRUFBRSxZQUFxQjtRQUN6RCxPQUFPLElBQUksd0JBQWEsQ0FBQyxJQUFJLEVBQUUsbUJBQW1CLElBQUksRUFBRSxFQUFFO1lBQ3hELGFBQWEsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWE7WUFDakQsYUFBYSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYTtZQUNqRCxZQUFZLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJO1lBQ3ZDLElBQUksRUFBRSxJQUFJO1lBQ1YsWUFBWSxFQUFFLFlBQVk7U0FDM0IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLHNCQUFzQixDQUFDLEtBQW1DO1FBQy9ELE9BQU8sSUFBSSxzQ0FBbUIsQ0FDNUIsSUFBSSxFQUNKLHlCQUF5QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQ2xFO1lBQ0UsVUFBVSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ25CLEdBQUcsS0FBSztTQUNULENBQ0YsQ0FBQztJQUNKLENBQUM7O0FBN0VILDRCQWlGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50aHViIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9ldmVudGh1YlwiO1xuaW1wb3J0IHsgUmVzb3VyY2VHcm91cCB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvcmVzb3VyY2UtZ3JvdXBcIjtcbmltcG9ydCAqIGFzIGNka3RmIGZyb20gXCJjZGt0ZlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IEF1dGhvcml6YXRpb25SdWxlLCBBdXRob3JpemF0aW9uUnVsZVByb3BzIH0gZnJvbSBcIi4vYXV0aG9yaXphdGlvblwiO1xuaW1wb3J0IHsgQ29uc3VtZXJHcm91cCB9IGZyb20gXCIuL2NvbnN1bWVyXCI7XG5pbXBvcnQge1xuICBLdXN0b0RhdGFDb25uZWN0aW9uLFxuICBCYXNlS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzLFxufSBmcm9tIFwiLi9rdXN0by1jb25uZWN0aW9uXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUluc3RhbmNlUHJvcHMge1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBuYW1lIG9mIHRoZSBFdmVudEh1YiByZXNvdXJjZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgY3VycmVudCBudW1iZXIgb2Ygc2hhcmRzIG9uIHRoZSBFdmVudCBIdWIuXG4gICAqIFdoZW4gdXNpbmcgYSBzaGFyZWQgcGFyZW50IEV2ZW50SHViIE5hbWVzcGFjZSwgbWF4aW11bSB2YWx1ZSBpcyAzMi5cbiAgICogQGRlZmF1bHQgMlxuICAgKi9cbiAgcmVhZG9ubHkgcGFydGl0aW9uQ291bnQ/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiBkYXlzIHRvIHJldGFpbiB0aGUgZXZlbnRzIGZvciB0aGlzIEV2ZW50IEh1Yi5cbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgbWVzc2FnZVJldGVudGlvbj86IG51bWJlcjtcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgc3RhdHVzIG9mIHRoZSBFdmVudCBIdWIgcmVzb3VyY2UuIFBvc3NpYmxlIHZhbHVlcyBhcmUgQWN0aXZlLCBEaXNhYmxlZCBhbmQgU2VuZERpc2FibGVkLlxuICAgKiBAZGVmYXVsdCBcIkFjdGl2ZVwiXG4gICAqL1xuICByZWFkb25seSBzdGF0dXM/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRPRE86IGNhcHR1cmVfZGVzY3JpcHRpb25cbiAgICogVE9PRDogZGVzdGluYXRpb25cbiAgICovXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5zdGFuY2VQcm9wcyBleHRlbmRzIEJhc2VJbnN0YW5jZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSByZXNvdXJjZSBncm91cCBpbiB3aGljaCB0aGUgRXZlbnRIdWIncyBwYXJlbnQgTmFtZXNwYWNlIGV4aXN0cy5cbiAgICovXG4gIHJlYWRvbmx5IHJlc291cmNlR3JvdXA6IFJlc291cmNlR3JvdXA7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG5hbWUgb2YgdGhlIEV2ZW50SHViIE5hbWVzcGFjZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWVzcGFjZU5hbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIEluc3RhbmNlIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcmVhZG9ubHkgZWhJbnN0YW5jZVByb3BzOiBJbnN0YW5jZVByb3BzO1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuICByZWFkb25seSBwYXJ0aXRpb25JZHM6IHN0cmluZ1tdO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIG5hbWU6IHN0cmluZywgZWhJbnN0YW5jZVByb3BzOiBJbnN0YW5jZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIG5hbWUpO1xuXG4gICAgdGhpcy5laEluc3RhbmNlUHJvcHMgPSBlaEluc3RhbmNlUHJvcHM7XG5cbiAgICBjb25zdCBkZWZhdWx0cyA9IHtcbiAgICAgIHBhcnRpdGlvbkNvdW50OiBlaEluc3RhbmNlUHJvcHMucGFydGl0aW9uQ291bnQgfHwgMixcbiAgICAgIG1lc3NhZ2VSZXRlbnRpb246IGVoSW5zdGFuY2VQcm9wcy5tZXNzYWdlUmV0ZW50aW9uIHx8IDEsXG4gICAgICBzdGF0dXM6IGVoSW5zdGFuY2VQcm9wcy5zdGF0dXMgfHwgXCJBY3RpdmVcIixcbiAgICB9O1xuXG4gICAgY29uc3QgZXZlbnRodWJJbnN0YW5jZSA9IG5ldyBFdmVudGh1YihcbiAgICAgIHRoaXMsXG4gICAgICBgZWhpbnN0YW5jZS0ke2VoSW5zdGFuY2VQcm9wcy5uYW1lfWAsXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGVoSW5zdGFuY2VQcm9wcy5uYW1lLFxuICAgICAgICByZXNvdXJjZUdyb3VwTmFtZTogZWhJbnN0YW5jZVByb3BzLnJlc291cmNlR3JvdXAubmFtZSxcbiAgICAgICAgbmFtZXNwYWNlTmFtZTogZWhJbnN0YW5jZVByb3BzLm5hbWVzcGFjZU5hbWUsXG4gICAgICAgIC4uLmRlZmF1bHRzLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgLy8gT3V0cHV0c1xuICAgIHRoaXMuaWQgPSBldmVudGh1Ykluc3RhbmNlLmlkO1xuICAgIHRoaXMucGFydGl0aW9uSWRzID0gZXZlbnRodWJJbnN0YW5jZS5wYXJ0aXRpb25JZHM7XG5cbiAgICBjb25zdCBjZGt0ZlRlcnJhZm9ybU91dHB1dEV2ZW50aHViSW5zdGFuY2VJZCA9IG5ldyBjZGt0Zi5UZXJyYWZvcm1PdXRwdXQoXG4gICAgICB0aGlzLFxuICAgICAgXCJpZFwiLFxuICAgICAge1xuICAgICAgICB2YWx1ZTogZXZlbnRodWJJbnN0YW5jZS5pZCxcbiAgICAgIH0sXG4gICAgKTtcbiAgICBjb25zdCBjZGt0ZlRlcnJhZm9ybU91dHB1dEV2ZW50aHViSW5zdGFuY2VQYXJ0aXRpb25JZHMgPVxuICAgICAgbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dCh0aGlzLCBcInBhcnRpdGlvbl9pZHNcIiwge1xuICAgICAgICB2YWx1ZTogZXZlbnRodWJJbnN0YW5jZS5wYXJ0aXRpb25JZHMsXG4gICAgICB9KTtcblxuICAgIGNka3RmVGVycmFmb3JtT3V0cHV0RXZlbnRodWJJbnN0YW5jZUlkLm92ZXJyaWRlTG9naWNhbElkKFwiaWRcIik7XG4gICAgY2RrdGZUZXJyYWZvcm1PdXRwdXRFdmVudGh1Ykluc3RhbmNlUGFydGl0aW9uSWRzLm92ZXJyaWRlTG9naWNhbElkKFxuICAgICAgXCJwYXJ0aXRpb25faWRzXCIsXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRBdXRob3JpemF0aW9uUnVsZShwcm9wczogQXV0aG9yaXphdGlvblJ1bGVQcm9wcykge1xuICAgIHJldHVybiBuZXcgQXV0aG9yaXphdGlvblJ1bGUodGhpcywgYGVoYXV0aHJ1bGUtJHtwcm9wcy5uYW1lfWAsIHtcbiAgICAgIHJlc291cmNlR3JvdXBOYW1lOiB0aGlzLmVoSW5zdGFuY2VQcm9wcy5yZXNvdXJjZUdyb3VwLm5hbWUsXG4gICAgICBuYW1lc3BhY2VOYW1lOiB0aGlzLmVoSW5zdGFuY2VQcm9wcy5uYW1lc3BhY2VOYW1lLFxuICAgICAgZXZlbnRodWJOYW1lOiB0aGlzLmVoSW5zdGFuY2VQcm9wcy5uYW1lLFxuICAgICAgLi4ucHJvcHMsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgYWRkQ29uc3VtZXJHcm91cChuYW1lOiBzdHJpbmcsIHVzZXJNZXRhZGF0YT86IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgQ29uc3VtZXJHcm91cCh0aGlzLCBgZWhjb25zdW1lcmdyb3VwLSR7bmFtZX1gLCB7XG4gICAgICByZXNvdXJjZUdyb3VwOiB0aGlzLmVoSW5zdGFuY2VQcm9wcy5yZXNvdXJjZUdyb3VwLFxuICAgICAgbmFtZXNwYWNlTmFtZTogdGhpcy5laEluc3RhbmNlUHJvcHMubmFtZXNwYWNlTmFtZSxcbiAgICAgIGV2ZW50aHViTmFtZTogdGhpcy5laEluc3RhbmNlUHJvcHMubmFtZSxcbiAgICAgIG5hbWU6IG5hbWUsXG4gICAgICB1c2VyTWV0YWRhdGE6IHVzZXJNZXRhZGF0YSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRLdXN0b0RhdGFDb25uZWN0aW9uKHByb3BzOiBCYXNlS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzKSB7XG4gICAgcmV0dXJuIG5ldyBLdXN0b0RhdGFDb25uZWN0aW9uKFxuICAgICAgdGhpcyxcbiAgICAgIGBlaGt1c3RvZGF0YWNvbm5lY3Rpb24tJHt0aGlzLmVoSW5zdGFuY2VQcm9wcy5uYW1lfS0ke3Byb3BzLm5hbWV9YCxcbiAgICAgIHtcbiAgICAgICAgZXZlbnRodWJJZDogdGhpcy5pZCxcbiAgICAgICAgLi4ucHJvcHMsXG4gICAgICB9LFxuICAgICk7XG4gIH1cblxuICAvLyBUT0RPOiBhZGRBY2Nlc3MgbWV0aG9kLCBObyBhZGREaWFnbm9zdGljcyBtZXRob2RcbiAgLy8gVE9ETzogYWRkRE5TcmVjb3JkIG1ldGhvZFxufVxuIl19
183
+ Instance[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_eventhub.Instance", version: "0.0.3-pre.7" };
184
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtZXZlbnRodWIvbGliL2luc3RhbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsbUVBQWdFO0FBRWhFLCtCQUErQjtBQUMvQiwyQ0FBdUM7QUFDdkMsbURBQTRFO0FBQzVFLHlDQUEyQztBQUMzQyx5REFHNEI7QUF5QzVCLE1BQWEsUUFBUyxTQUFRLHNCQUFTO0lBS3JDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BNEJHO0lBQ0gsWUFBWSxLQUFnQixFQUFFLElBQVksRUFBRSxlQUE4QjtRQUN4RSxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRW5CLElBQUksQ0FBQyxlQUFlLEdBQUcsZUFBZSxDQUFDO1FBRXZDLE1BQU0sUUFBUSxHQUFHO1lBQ2YsY0FBYyxFQUFFLGVBQWUsQ0FBQyxjQUFjLElBQUksQ0FBQztZQUNuRCxnQkFBZ0IsRUFBRSxlQUFlLENBQUMsZ0JBQWdCLElBQUksQ0FBQztZQUN2RCxNQUFNLEVBQUUsZUFBZSxDQUFDLE1BQU0sSUFBSSxRQUFRO1NBQzNDLENBQUM7UUFFRixNQUFNLGdCQUFnQixHQUFHLElBQUksbUJBQVEsQ0FDbkMsSUFBSSxFQUNKLGNBQWMsZUFBZSxDQUFDLElBQUksRUFBRSxFQUNwQztZQUNFLElBQUksRUFBRSxlQUFlLENBQUMsSUFBSTtZQUMxQixpQkFBaUIsRUFBRSxlQUFlLENBQUMsYUFBYSxDQUFDLElBQUk7WUFDckQsYUFBYSxFQUFFLGVBQWUsQ0FBQyxhQUFhO1lBQzVDLEdBQUcsUUFBUTtTQUNaLENBQ0YsQ0FBQztRQUVGLFVBQVU7UUFDVixJQUFJLENBQUMsRUFBRSxHQUFHLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsWUFBWSxHQUFHLGdCQUFnQixDQUFDLFlBQVksQ0FBQztRQUVsRCxNQUFNLHNDQUFzQyxHQUFHLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FDdEUsSUFBSSxFQUNKLElBQUksRUFDSjtZQUNFLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFO1NBQzNCLENBQ0YsQ0FBQztRQUNGLE1BQU0sZ0RBQWdELEdBQ3BELElBQUksS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsZUFBZSxFQUFFO1lBQy9DLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZO1NBQ3JDLENBQUMsQ0FBQztRQUVMLHNDQUFzQyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9ELGdEQUFnRCxDQUFDLGlCQUFpQixDQUNoRSxlQUFlLENBQ2hCLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BMEJHO0lBQ0ksb0JBQW9CLENBQUMsS0FBNkI7UUFDdkQsT0FBTyxJQUFJLGlDQUFpQixDQUFDLElBQUksRUFBRSxjQUFjLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUM3RCxpQkFBaUIsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxJQUFJO1lBQzFELGFBQWEsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWE7WUFDakQsWUFBWSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSTtZQUN2QyxHQUFHLEtBQUs7U0FDVCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BdUJHO0lBQ0ksZ0JBQWdCLENBQUMsSUFBWSxFQUFFLFlBQXFCO1FBQ3pELE9BQU8sSUFBSSx3QkFBYSxDQUFDLElBQUksRUFBRSxtQkFBbUIsSUFBSSxFQUFFLEVBQUU7WUFDeEQsYUFBYSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYTtZQUNqRCxhQUFhLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhO1lBQ2pELFlBQVksRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUk7WUFDdkMsSUFBSSxFQUFFLElBQUk7WUFDVixZQUFZLEVBQUUsWUFBWTtTQUMzQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FxQ0c7SUFDSSxzQkFBc0IsQ0FBQyxLQUFtQztRQUMvRCxPQUFPLElBQUksc0NBQW1CLENBQzVCLElBQUksRUFDSix5QkFBeUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDLElBQUksRUFBRSxFQUNsRTtZQUNFLFVBQVUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNuQixHQUFHLEtBQUs7U0FDVCxDQUNGLENBQUM7SUFDSixDQUFDOztBQW5NSCw0QkFvTUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudGh1YiB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvZXZlbnRodWJcIjtcbmltcG9ydCB7IFJlc291cmNlR3JvdXAgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL3Jlc291cmNlLWdyb3VwXCI7XG5pbXBvcnQgKiBhcyBjZGt0ZiBmcm9tIFwiY2RrdGZcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBBdXRob3JpemF0aW9uUnVsZSwgQXV0aG9yaXphdGlvblJ1bGVQcm9wcyB9IGZyb20gXCIuL2F1dGhvcml6YXRpb25cIjtcbmltcG9ydCB7IENvbnN1bWVyR3JvdXAgfSBmcm9tIFwiLi9jb25zdW1lclwiO1xuaW1wb3J0IHtcbiAgS3VzdG9EYXRhQ29ubmVjdGlvbixcbiAgQmFzZUt1c3RvRGF0YUNvbm5lY3Rpb25Qcm9wcyxcbn0gZnJvbSBcIi4va3VzdG8tY29ubmVjdGlvblwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VJbnN0YW5jZVByb3BzIHtcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbmFtZSBvZiB0aGUgRXZlbnRIdWIgcmVzb3VyY2UuXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIGN1cnJlbnQgbnVtYmVyIG9mIHNoYXJkcyBvbiB0aGUgRXZlbnQgSHViLlxuICAgKiBXaGVuIHVzaW5nIGEgc2hhcmVkIHBhcmVudCBFdmVudEh1YiBOYW1lc3BhY2UsIG1heGltdW0gdmFsdWUgaXMgMzIuXG4gICAqIEBkZWZhdWx0IDJcbiAgICovXG4gIHJlYWRvbmx5IHBhcnRpdGlvbkNvdW50PzogbnVtYmVyO1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBudW1iZXIgb2YgZGF5cyB0byByZXRhaW4gdGhlIGV2ZW50cyBmb3IgdGhpcyBFdmVudCBIdWIuXG4gICAqIEBkZWZhdWx0IDFcbiAgICovXG4gIHJlYWRvbmx5IG1lc3NhZ2VSZXRlbnRpb24/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHN0YXR1cyBvZiB0aGUgRXZlbnQgSHViIHJlc291cmNlLiBQb3NzaWJsZSB2YWx1ZXMgYXJlIEFjdGl2ZSwgRGlzYWJsZWQgYW5kIFNlbmREaXNhYmxlZC5cbiAgICogQGRlZmF1bHQgXCJBY3RpdmVcIlxuICAgKi9cbiAgcmVhZG9ubHkgc3RhdHVzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUT0RPOiBjYXB0dXJlX2Rlc2NyaXB0aW9uXG4gICAqIFRPT0Q6IGRlc3RpbmF0aW9uXG4gICAqL1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluc3RhbmNlUHJvcHMgZXh0ZW5kcyBCYXNlSW5zdGFuY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgcmVzb3VyY2UgZ3JvdXAgaW4gd2hpY2ggdGhlIEV2ZW50SHViJ3MgcGFyZW50IE5hbWVzcGFjZSBleGlzdHMuXG4gICAqL1xuICByZWFkb25seSByZXNvdXJjZUdyb3VwOiBSZXNvdXJjZUdyb3VwO1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBuYW1lIG9mIHRoZSBFdmVudEh1YiBOYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2VOYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBJbnN0YW5jZSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHJlYWRvbmx5IGVoSW5zdGFuY2VQcm9wczogSW5zdGFuY2VQcm9wcztcbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgcGFydGl0aW9uSWRzOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQ29uc3RydWN0cyBhIG5ldyBFdmVudCBIdWIgaW5zdGFuY2UuXG4gICAqXG4gICAqIFRoaXMgY2xhc3MgY3JlYXRlcyBhbiBBenVyZSBFdmVudCBIdWIgaW5zdGFuY2Ugd2l0aGluIGEgc3BlY2lmaWVkIG5hbWVzcGFjZS4gRXZlbnQgSHVicyBpcyBhIGhpZ2hseSBzY2FsYWJsZVxuICAgKiBkYXRhIHN0cmVhbWluZyBwbGF0Zm9ybSBhbmQgZXZlbnQgaW5nZXN0aW9uIHNlcnZpY2UsIGNhcGFibGUgb2YgcmVjZWl2aW5nIGFuZCBwcm9jZXNzaW5nIG1pbGxpb25zIG9mIGV2ZW50cyBwZXIgc2Vjb25kLlxuICAgKiBFdmVudCBIdWJzIGNhbiBwcm9jZXNzIGFuZCBzdG9yZSBldmVudHMsIGRhdGEsIG9yIHRlbGVtZXRyeSBwcm9kdWNlZCBieSBkaXN0cmlidXRlZCBzb2Z0d2FyZSBhbmQgZGV2aWNlcy5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gVGhlIHNjb3BlIGluIHdoaWNoIHRvIGRlZmluZSB0aGlzIGNvbnN0cnVjdCwgdHlwaWNhbGx5IHVzZWQgZm9yIG1hbmFnaW5nIGxpZmVjeWNsZXMgYW5kIGNyZWF0aW9uIG9yZGVyLlxuICAgKiBAcGFyYW0gbmFtZSAtIFRoZSB1bmlxdWUgbmFtZSBmb3IgdGhpcyBpbnN0YW5jZSBvZiB0aGUgRXZlbnQgSHViLlxuICAgKiBAcGFyYW0gZWhJbnN0YW5jZVByb3BzIC0gVGhlIHByb3BlcnRpZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBFdmVudCBIdWIgaW5zdGFuY2UuIFRoZSBwcm9wZXJ0aWVzIGluY2x1ZGU6XG4gICAqICAgICAgICAgICAgICAgIC0gYG5hbWVgOiBSZXF1aXJlZC4gVGhlIG5hbWUgb2YgdGhlIEV2ZW50IEh1YiBpbnN0YW5jZS5cbiAgICogICAgICAgICAgICAgICAgLSBgcGFydGl0aW9uQ291bnRgOiBPcHRpb25hbC4gVGhlIG51bWJlciBvZiBwYXJ0aXRpb25zIGZvciB0aGUgRXZlbnQgSHViLiBEZWZhdWx0cyB0byAyLiBNYXggdmFsdWUgaXMgMzIgZm9yIHNoYXJlZCBuYW1lc3BhY2VzLlxuICAgKiAgICAgICAgICAgICAgICAtIGBtZXNzYWdlUmV0ZW50aW9uYDogT3B0aW9uYWwuIFRoZSBudW1iZXIgb2YgZGF5cyB0byByZXRhaW4gdGhlIG1lc3NhZ2VzLiBEZWZhdWx0cyB0byAxLlxuICAgKiAgICAgICAgICAgICAgICAtIGBzdGF0dXNgOiBPcHRpb25hbC4gU3BlY2lmaWVzIHRoZSBvcGVyYXRpb25hbCBzdGF0dXMgb2YgdGhlIEV2ZW50IEh1YiAoQWN0aXZlLCBEaXNhYmxlZCwgU2VuZERpc2FibGVkKS4gRGVmYXVsdHMgdG8gXCJBY3RpdmVcIi5cbiAgICogICAgICAgICAgICAgICAgLSBgcmVzb3VyY2VHcm91cGA6IFJlcXVpcmVkLiBUaGUgbmFtZSBvZiB0aGUgcmVzb3VyY2UgZ3JvdXAgaW4gd2hpY2ggdGhlIEV2ZW50IEh1YidzIHBhcmVudCBuYW1lc3BhY2UgZXhpc3RzLlxuICAgKiAgICAgICAgICAgICAgICAtIGBuYW1lc3BhY2VOYW1lYDogUmVxdWlyZWQuIFRoZSBuYW1lIG9mIHRoZSBFdmVudCBIdWIgTmFtZXNwYWNlIHdoZXJlIHRoaXMgaW5zdGFuY2Ugd2lsbCBiZSBjcmVhdGVkLlxuICAgKlxuICAgKiBFeGFtcGxlIHVzYWdlOlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIGNvbnN0IGV2ZW50SHViSW5zdGFuY2UgPSBuZXcgSW5zdGFuY2UodGhpcywgJ215RXZlbnRIdWJJbnN0YW5jZScsIHtcbiAgICogICBuYW1lOiAnZXhhbXBsZUV2ZW50SHViJyxcbiAgICogICBuYW1lc3BhY2VOYW1lOiAnZXhhbXBsZU5hbWVzcGFjZScsXG4gICAqICAgcmVzb3VyY2VHcm91cDogcmVzb3VyY2VHcm91cCxcbiAgICogICBwYXJ0aXRpb25Db3VudDogNCxcbiAgICogICBtZXNzYWdlUmV0ZW50aW9uOiA3LFxuICAgKiAgIHN0YXR1czogJ0FjdGl2ZSdcbiAgICogfSk7XG4gICAqIGBgYFxuICAgKi9cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgbmFtZTogc3RyaW5nLCBlaEluc3RhbmNlUHJvcHM6IEluc3RhbmNlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgbmFtZSk7XG5cbiAgICB0aGlzLmVoSW5zdGFuY2VQcm9wcyA9IGVoSW5zdGFuY2VQcm9wcztcblxuICAgIGNvbnN0IGRlZmF1bHRzID0ge1xuICAgICAgcGFydGl0aW9uQ291bnQ6IGVoSW5zdGFuY2VQcm9wcy5wYXJ0aXRpb25Db3VudCB8fCAyLFxuICAgICAgbWVzc2FnZVJldGVudGlvbjogZWhJbnN0YW5jZVByb3BzLm1lc3NhZ2VSZXRlbnRpb24gfHwgMSxcbiAgICAgIHN0YXR1czogZWhJbnN0YW5jZVByb3BzLnN0YXR1cyB8fCBcIkFjdGl2ZVwiLFxuICAgIH07XG5cbiAgICBjb25zdCBldmVudGh1Ykluc3RhbmNlID0gbmV3IEV2ZW50aHViKFxuICAgICAgdGhpcyxcbiAgICAgIGBlaGluc3RhbmNlLSR7ZWhJbnN0YW5jZVByb3BzLm5hbWV9YCxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogZWhJbnN0YW5jZVByb3BzLm5hbWUsXG4gICAgICAgIHJlc291cmNlR3JvdXBOYW1lOiBlaEluc3RhbmNlUHJvcHMucmVzb3VyY2VHcm91cC5uYW1lLFxuICAgICAgICBuYW1lc3BhY2VOYW1lOiBlaEluc3RhbmNlUHJvcHMubmFtZXNwYWNlTmFtZSxcbiAgICAgICAgLi4uZGVmYXVsdHMsXG4gICAgICB9LFxuICAgICk7XG5cbiAgICAvLyBPdXRwdXRzXG4gICAgdGhpcy5pZCA9IGV2ZW50aHViSW5zdGFuY2UuaWQ7XG4gICAgdGhpcy5wYXJ0aXRpb25JZHMgPSBldmVudGh1Ykluc3RhbmNlLnBhcnRpdGlvbklkcztcblxuICAgIGNvbnN0IGNka3RmVGVycmFmb3JtT3V0cHV0RXZlbnRodWJJbnN0YW5jZUlkID0gbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dChcbiAgICAgIHRoaXMsXG4gICAgICBcImlkXCIsXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiBldmVudGh1Ykluc3RhbmNlLmlkLFxuICAgICAgfSxcbiAgICApO1xuICAgIGNvbnN0IGNka3RmVGVycmFmb3JtT3V0cHV0RXZlbnRodWJJbnN0YW5jZVBhcnRpdGlvbklkcyA9XG4gICAgICBuZXcgY2RrdGYuVGVycmFmb3JtT3V0cHV0KHRoaXMsIFwicGFydGl0aW9uX2lkc1wiLCB7XG4gICAgICAgIHZhbHVlOiBldmVudGh1Ykluc3RhbmNlLnBhcnRpdGlvbklkcyxcbiAgICAgIH0pO1xuXG4gICAgY2RrdGZUZXJyYWZvcm1PdXRwdXRFdmVudGh1Ykluc3RhbmNlSWQub3ZlcnJpZGVMb2dpY2FsSWQoXCJpZFwiKTtcbiAgICBjZGt0ZlRlcnJhZm9ybU91dHB1dEV2ZW50aHViSW5zdGFuY2VQYXJ0aXRpb25JZHMub3ZlcnJpZGVMb2dpY2FsSWQoXG4gICAgICBcInBhcnRpdGlvbl9pZHNcIixcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYW4gQXV0aG9yaXphdGlvbiBSdWxlIHRvIGFuIEV2ZW50IEh1YiBpbnN0YW5jZS5cbiAgICpcbiAgICogVGhpcyBtZXRob2QgY3JlYXRlcyBhIG5ldyBBdXRob3JpemF0aW9uIFJ1bGUgYXNzb2NpYXRlZCB3aXRoIHRoZSBzcGVjaWZpZWQgRXZlbnQgSHViLFxuICAgKiBncmFudGluZyBzcGVjaWZpZWQgcGVybWlzc2lvbnMgc3VjaCBhcyAnbGlzdGVuJywgJ3NlbmQnLCBhbmQgJ21hbmFnZScgYmFzZWQgb24gdGhlIHByb3BlcnRpZXMgcHJvdmlkZWQuXG4gICAqIFRoZSBydWxlIGRldGVybWluZXMgdGhlIGFjY2VzcyBsZXZlbCBncmFudGVkIHRvIHVzZXJzIGFuZCBhcHBsaWNhdGlvbnMgZm9yIHRoZSBFdmVudCBIdWIuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wcyAtIFRoZSBwcm9wZXJ0aWVzIGZvciB0aGUgQXV0aG9yaXphdGlvbiBSdWxlLCB3aGljaCBpbmNsdWRlOlxuICAgKiAgICAgICAgICAgICAgICAtIGBuYW1lYDogUmVxdWlyZWQuIEEgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBBdXRob3JpemF0aW9uIFJ1bGUgd2l0aGluIHRoZSBFdmVudCBIdWIuXG4gICAqICAgICAgICAgICAgICAgIC0gYGxpc3RlbmA6IE9wdGlvbmFsLiBTcGVjaWZpZXMgaWYgdGhlIHJ1bGUgYWxsb3dzIGxpc3RlbmluZyB0byB0aGUgRXZlbnQgSHViLiBEZWZhdWx0cyB0byBmYWxzZS5cbiAgICogICAgICAgICAgICAgICAgLSBgc2VuZGA6IE9wdGlvbmFsLiBTcGVjaWZpZXMgaWYgdGhlIHJ1bGUgYWxsb3dzIHNlbmRpbmcgZXZlbnRzIHRvIHRoZSBFdmVudCBIdWIuIERlZmF1bHRzIHRvIGZhbHNlLlxuICAgKiAgICAgICAgICAgICAgICAtIGBtYW5hZ2VgOiBPcHRpb25hbC4gU3BlY2lmaWVzIGlmIHRoZSBydWxlIGFsbG93cyBtYW5hZ2luZyB0aGUgRXZlbnQgSHViLiBXaGVuIHNldCB0byB0cnVlLFxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3RoICdsaXN0ZW4nIGFuZCAnc2VuZCcgYXJlIGltcGxpY2l0bHkgZW5hYmxlZC4gRGVmYXVsdHMgdG8gZmFsc2UuXG4gICAqXG4gICAqIEByZXR1cm5zIEFuIGluc3RhbmNlIG9mIHRoZSBBdXRob3JpemF0aW9uUnVsZSBjbGFzcywgY29uZmlndXJlZCB3aXRoIHRoZSBzcGVjaWZpZWQgcGVybWlzc2lvbnMgYW5kIGFzc29jaWF0ZWRcbiAgICogICAgICAgICAgd2l0aCB0aGUgRXZlbnQgSHViIHNwZWNpZmllZCBpbiB0aGUgZW5jbG9zaW5nIGNvbnN0cnVjdCdzIHByb3BlcnRpZXMuXG4gICAqXG4gICAqIEV4YW1wbGUgdXNhZ2U6XG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogY29uc3QgZXZlbnRIdWJBdXRoUnVsZSA9IGV2ZW50SHViSW5zdGFuY2UuYWRkQXV0aG9yaXphdGlvblJ1bGUoe1xuICAgKiAgIG5hbWU6ICdteUN1c3RvbUF1dGhSdWxlJyxcbiAgICogICBsaXN0ZW46IHRydWUsXG4gICAqICAgc2VuZDogdHJ1ZSxcbiAgICogICBtYW5hZ2U6IGZhbHNlIC8vIE9ubHkgbGlzdGVuaW5nIGFuZCBzZW5kaW5nIHBlcm1pc3Npb25zIGFyZSBncmFudGVkLlxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqL1xuICBwdWJsaWMgYWRkQXV0aG9yaXphdGlvblJ1bGUocHJvcHM6IEF1dGhvcml6YXRpb25SdWxlUHJvcHMpIHtcbiAgICByZXR1cm4gbmV3IEF1dGhvcml6YXRpb25SdWxlKHRoaXMsIGBlaGF1dGhydWxlLSR7cHJvcHMubmFtZX1gLCB7XG4gICAgICByZXNvdXJjZUdyb3VwTmFtZTogdGhpcy5laEluc3RhbmNlUHJvcHMucmVzb3VyY2VHcm91cC5uYW1lLFxuICAgICAgbmFtZXNwYWNlTmFtZTogdGhpcy5laEluc3RhbmNlUHJvcHMubmFtZXNwYWNlTmFtZSxcbiAgICAgIGV2ZW50aHViTmFtZTogdGhpcy5laEluc3RhbmNlUHJvcHMubmFtZSxcbiAgICAgIC4uLnByb3BzLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBDb25zdW1lciBHcm91cCB0byBhbiBleGlzdGluZyBFdmVudCBIdWIgaW5zdGFuY2UuXG4gICAqXG4gICAqIFRoaXMgbWV0aG9kIGNyZWF0ZXMgYSBuZXcgQ29uc3VtZXIgR3JvdXAgZm9yIHRoZSBzcGVjaWZpZWQgRXZlbnQgSHViLiBDb25zdW1lciBncm91cHMgcmVwcmVzZW50IGEgdmlldyBvZiB0aGUgZW50aXJlIEV2ZW50IEh1YixcbiAgICogYWxsb3dpbmcgY29uc3VtZXIgYXBwbGljYXRpb25zIHRvIGhhdmUgc2VwYXJhdGUsIGluZGVwZW5kZW50IHZpZXdzIG9mIHRoZSBldmVudCBzdHJlYW0uIFRoZXkgcmVhZCB0aGUgc3RyZWFtIGF0IHRoZWlyIG93biBwYWNlXG4gICAqIGFuZCBtYWludGFpbiB0aGVpciBvd24gc2VxdWVuY2UgcG9pbnQgb3Igb2Zmc2V0LiBUaGlzIGVuYWJsZXMgYSBzaW5nbGUgRXZlbnQgSHViIHRvIHN1cHBvcnQgbXVsdGlwbGUgY29uc3VtZXIgYXBwbGljYXRpb25zLlxuICAgKlxuICAgKiBAcGFyYW0gbmFtZSAtIFRoZSBuYW1lIG9mIHRoZSBDb25zdW1lciBHcm91cCB0byBiZSBhZGRlZC4gVGhpcyBuYW1lIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgRXZlbnQgSHViIG5hbWVzcGFjZS5cbiAgICogQHBhcmFtIHVzZXJNZXRhZGF0YSAtIE9wdGlvbmFsLiBVc2VyLWRlZmluZWQgbWV0YWRhdGEgZm9yIHRoZSBDb25zdW1lciBHcm91cC4gVGhpcyBtZXRhZGF0YSBpcyB1c2VmdWwgZm9yIHN0b3JpbmcgYWRkaXRpb25hbFxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGNvbnN1bWVyIGdyb3VwLCBzdWNoIGFzIGl0cyBwdXJwb3NlIG9yIG9wZXJhdGlvbmFsIGRldGFpbHMuXG4gICAqXG4gICAqIEByZXR1cm5zIEFuIGluc3RhbmNlIG9mIHRoZSBDb25zdW1lckdyb3VwIGNsYXNzLCBjb25maWd1cmVkIHdpdGggdGhlIHNwZWNpZmllZCBwcm9wZXJ0aWVzIGFuZCBhc3NvY2lhdGVkIHdpdGggdGhlIEV2ZW50IEh1YlxuICAgKiAgICAgICAgICBzcGVjaWZpZWQgaW4gdGhlIGVuY2xvc2luZyBjb25zdHJ1Y3QncyBwcm9wZXJ0aWVzLlxuICAgKlxuICAgKiBFeGFtcGxlIHVzYWdlOlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIGNvbnN0IG15Q29uc3VtZXJHcm91cCA9IGV2ZW50SHViSW5zdGFuY2UuYWRkQ29uc3VtZXJHcm91cCgnbXlDb25zdW1lckdyb3VwTmFtZScsICdNZXRhZGF0YSBhYm91dCB0aGlzIGNvbnN1bWVyIGdyb3VwJyk7XG4gICAqIGBgYFxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBFYWNoIGNvbnN1bWVyIGdyb3VwIGNhbiBoYXZlIG11bHRpcGxlIGNvbmN1cnJlbnQgcmVhZGVycywgYnV0IGVhY2ggcGFydGl0aW9uIGluIHRoZSBFdmVudCBIdWIgY2FuIG9ubHkgaGF2ZSBvbmUgYWN0aXZlIGNvbnN1bWVyXG4gICAqIGZyb20gYSBzcGVjaWZpYyBjb25zdW1lciBncm91cCBhdCBhIHRpbWUuIE11bHRpcGxlIGNvbnN1bWVyIGdyb3VwcyBlbmFibGUgbXVsdGlwbGUgY29uc3VtaW5nIGFwcGxpY2F0aW9ucyB0byBlYWNoIGhhdmUgYSBzZXBhcmF0ZVxuICAgKiB2aWV3IG9mIHRoZSBldmVudCBzdHJlYW0sIGFuZCB0byByZWFkIHRoZSBzdHJlYW0gaW5kZXBlbmRlbnRseSBhdCB0aGVpciBvd24gcGFjZSBhbmQgd2l0aCB0aGVpciBvd24gb2Zmc2V0cy5cbiAgICovXG4gIHB1YmxpYyBhZGRDb25zdW1lckdyb3VwKG5hbWU6IHN0cmluZywgdXNlck1ldGFkYXRhPzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIG5ldyBDb25zdW1lckdyb3VwKHRoaXMsIGBlaGNvbnN1bWVyZ3JvdXAtJHtuYW1lfWAsIHtcbiAgICAgIHJlc291cmNlR3JvdXA6IHRoaXMuZWhJbnN0YW5jZVByb3BzLnJlc291cmNlR3JvdXAsXG4gICAgICBuYW1lc3BhY2VOYW1lOiB0aGlzLmVoSW5zdGFuY2VQcm9wcy5uYW1lc3BhY2VOYW1lLFxuICAgICAgZXZlbnRodWJOYW1lOiB0aGlzLmVoSW5zdGFuY2VQcm9wcy5uYW1lLFxuICAgICAgbmFtZTogbmFtZSxcbiAgICAgIHVzZXJNZXRhZGF0YTogdXNlck1ldGFkYXRhLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBLdXN0byBEYXRhIENvbm5lY3Rpb24gdG8gYW4gZXhpc3RpbmcgS3VzdG8gQ2x1c3RlciBhbmQgRGF0YWJhc2UgZm9yIGluZ2VzdGluZyBkYXRhIGZyb20gYW4gRXZlbnRIdWIuXG4gICAqXG4gICAqIFRoaXMgbWV0aG9kIGNvbmZpZ3VyZXMgYSBuZXcgS3VzdG8gRGF0YSBDb25uZWN0aW9uIGxpbmtlZCB0byB0aGUgc3BlY2lmaWVkIEV2ZW50SHViLiBJdCBmYWNpbGl0YXRlcyB0aGUgaW5nZXN0aW9uIG9mIHN0cmVhbWluZyBkYXRhXG4gICAqIGludG8gdGhlIEt1c3RvIGRhdGFiYXNlLCBhbGxvd2luZyBmb3IgcmVhbC10aW1lIGFuYWx5dGljcyBvbiBzdHJlYW1lZCBkYXRhLiBUaGlzIGNvbm5lY3Rpb24gc3BlY2lmaWVzIGhvdyBkYXRhIGZyb20gRXZlbnRIdWJcbiAgICogaXMgdG8gYmUgaW5nZXN0ZWQgaW50byB0YWJsZXMgd2l0aGluIHRoZSBLdXN0byBEYXRhYmFzZS5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIC0gVGhlIHByb3BlcnRpZXMgZm9yIHRoZSBLdXN0byBEYXRhIENvbm5lY3Rpb24sIGRlcml2ZWQgZnJvbSBCYXNlS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzLCB3aGljaCBpbmNsdWRlOlxuICAgKiAgICAgICAgICAgICAgICAtIGBuYW1lYDogUmVxdWlyZWQuIFRoZSBuYW1lIG9mIHRoZSBkYXRhIGNvbm5lY3Rpb24gdG8gY3JlYXRlLlxuICAgKiAgICAgICAgICAgICAgICAtIGBsb2NhdGlvbmA6IFJlcXVpcmVkLiBUaGUgQXp1cmUgcmVnaW9uIHdoZXJlIHRoZSBkYXRhIGNvbm5lY3Rpb24gd2lsbCBiZSBjcmVhdGVkLlxuICAgKiAgICAgICAgICAgICAgICAtIGBrdXN0b1Jlc291cmNlR3JvdXBgOiBSZXF1aXJlZC4gVGhlIFJlc291cmNlIEdyb3VwIHdoZXJlIHRoZSBLdXN0byBkYXRhYmFzZSBleGlzdHMuXG4gICAqICAgICAgICAgICAgICAgIC0gYGt1c3RvQ2x1c3Rlck5hbWVgOiBSZXF1aXJlZC4gVGhlIG5hbWUgb2YgdGhlIEt1c3RvIENsdXN0ZXIgdG8gd2hpY2ggdGhpcyBkYXRhIGNvbm5lY3Rpb24gd2lsbCBiZSBhZGRlZC5cbiAgICogICAgICAgICAgICAgICAgLSBga3VzdG9EYXRhYmFzZU5hbWVgOiBSZXF1aXJlZC4gVGhlIG5hbWUgb2YgdGhlIEt1c3RvIERhdGFiYXNlIHRvIHdoaWNoIHRoaXMgZGF0YSBjb25uZWN0aW9uIHdpbGwgYmUgYWRkZWQuXG4gICAqICAgICAgICAgICAgICAgIC0gYGNvbnN1bWVyR3JvdXBgOiBPcHRpb25hbC4gVGhlIEV2ZW50SHViIGNvbnN1bWVyIGdyb3VwIHVzZWQgZm9yIGluZ2VzdGlvbi4gRGVmYXVsdHMgdG8gXCIkRGVmYXVsdFwiLlxuICAgKiAgICAgICAgICAgICAgICAtIGB0YWJsZU5hbWVgOiBPcHRpb25hbC4gVGhlIHRhcmdldCB0YWJsZSBuYW1lIGluIHRoZSBLdXN0byBkYXRhYmFzZSB1c2VkIGZvciBkYXRhIGluZ2VzdGlvbi5cbiAgICogICAgICAgICAgICAgICAgLSBgaWRlbnRpdHlJZGA6IE9wdGlvbmFsLiBUaGUgcmVzb3VyY2UgSUQgb2YgYSBtYW5hZ2VkIGlkZW50aXR5IHVzZWQgZm9yIGF1dGhlbnRpY2F0aW9uIHdpdGggRXZlbnRIdWIuXG4gICAqICAgICAgICAgICAgICAgIC0gYG1hcHBpbmdSdWxlTmFtZWA6IE9wdGlvbmFsLiBUaGUgbWFwcGluZyBydWxlIG5hbWUgdXNlZCBmb3IgZGF0YSBpbmdlc3Rpb24uXG4gICAqICAgICAgICAgICAgICAgIC0gYGRhdGFGb3JtYXRgOiBPcHRpb25hbC4gU3BlY2lmaWVzIHRoZSBkYXRhIGZvcm1hdCBvZiBFdmVudEh1YiBtZXNzYWdlcy4gRGVmYXVsdHMgdG8gXCJKU09OXCIuXG4gICAqICAgICAgICAgICAgICAgIC0gYGRhdGFiYXNlUm91dGluZ1R5cGVgOiBPcHRpb25hbC4gSW5kaWNhdGVzIHRoZSByb3V0aW5nIHR5cGUgZm9yIHRoZSBkYXRhYmFzZS4gRGVmYXVsdHMgdG8gXCJTaW5nbGVcIi5cbiAgICogICAgICAgICAgICAgICAgLSBgY29tcHJlc3Npb25gOiBPcHRpb25hbC4gU3BlY2lmaWVzIHRoZSBjb21wcmVzc2lvbiB0eXBlIGZvciB0aGUgZGF0YSBjb25uZWN0aW9uLiBEZWZhdWx0cyB0byBcIk5vbmVcIi5cbiAgICpcbiAgICogQHJldHVybnMgQW4gaW5zdGFuY2Ugb2YgdGhlIEt1c3RvRGF0YUNvbm5lY3Rpb24gY2xhc3MsIGNvbmZpZ3VyZWQgd2l0aCB0aGUgc3BlY2lmaWVkIHByb3BlcnRpZXMgYW5kIGxpbmtlZCB0byB0aGUgRXZlbnRIdWJcbiAgICogICAgICAgICAgc3BlY2lmaWVkIGluIHRoZSBlbmNsb3NpbmcgY29uc3RydWN0J3MgcHJvcGVydGllcy5cbiAgICpcbiAgICogRXhhbXBsZSB1c2FnZTpcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiBjb25zdCBrdXN0b0Nvbm5lY3Rpb24gPSBrdXN0b0luc3RhbmNlLmFkZEt1c3RvRGF0YUNvbm5lY3Rpb24oe1xuICAgKiAgIG5hbWU6ICdteUt1c3RvRGF0YUNvbm5lY3Rpb24nLFxuICAgKiAgIGxvY2F0aW9uOiAnV2VzdCBVUycsXG4gICAqICAga3VzdG9SZXNvdXJjZUdyb3VwOiByZXNvdXJjZUdyb3VwLFxuICAgKiAgIGt1c3RvQ2x1c3Rlck5hbWU6ICdteUNsdXN0ZXInLFxuICAgKiAgIGt1c3RvRGF0YWJhc2VOYW1lOiAnbXlEYXRhYmFzZScsXG4gICAqICAgdGFibGVOYW1lOiAnSW5nZXN0aW9uVGFibGUnLFxuICAgKiAgIGNvbnN1bWVyR3JvdXA6ICckRGVmYXVsdCcsXG4gICAqICAgZGF0YUZvcm1hdDogJ0pTT04nXG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICovXG4gIHB1YmxpYyBhZGRLdXN0b0RhdGFDb25uZWN0aW9uKHByb3BzOiBCYXNlS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzKSB7XG4gICAgcmV0dXJuIG5ldyBLdXN0b0RhdGFDb25uZWN0aW9uKFxuICAgICAgdGhpcyxcbiAgICAgIGBlaGt1c3RvZGF0YWNvbm5lY3Rpb24tJHt0aGlzLmVoSW5zdGFuY2VQcm9wcy5uYW1lfS0ke3Byb3BzLm5hbWV9YCxcbiAgICAgIHtcbiAgICAgICAgZXZlbnRodWJJZDogdGhpcy5pZCxcbiAgICAgICAgLi4ucHJvcHMsXG4gICAgICB9LFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -64,5 +64,46 @@ export interface KustoDataConnectionProps extends BaseKustoDataConnectionProps {
64
64
  }
65
65
  export declare class KustoDataConnection extends Construct {
66
66
  readonly eventhubKustoDataConnectionProps: KustoDataConnectionProps;
67
+ /**
68
+ * Constructs a new Azure Kusto Data Connection for ingesting data from an EventHub.
69
+ *
70
+ * This class creates a data connection within a specified Kusto (Azure Data Explorer) database that connects
71
+ * to an Azure EventHub. This setup enables seamless data ingestion from EventHub into the Kusto database,
72
+ * allowing for real-time analytics on streamed data.
73
+ *
74
+ * @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
75
+ * @param id - The unique identifier for this instance of the data connection.
76
+ * @param kustoDataConnectionProps - The properties for configuring the Kusto EventHub Data Connection. These properties include:
77
+ * - `name`: Required. The name of the data connection.
78
+ * - `location`: Required. The Azure region where the data connection will be created.
79
+ * - `kustoResourceGroup`: Required. The Resource Group where the Kusto database exists.
80
+ * - `kustoClusterName`: Required. The name of the Kusto Cluster to which this data connection will be added.
81
+ * - `kustoDatabaseName`: Required. The name of the Kusto Database to which this data connection will be added.
82
+ * - `eventhubId`: Required. The resource ID of the EventHub used for data ingestion.
83
+ * - `consumerGroup`: Optional. The EventHub consumer group used for ingestion. Defaults to "$Default".
84
+ * - `tableName`: Optional. The target table name in the Kusto database used for data ingestion.
85
+ * - `identityId`: Optional. The resource ID of a managed identity used for authentication with EventHub.
86
+ * - `mappingRuleName`: Optional. The mapping rule name used for data ingestion.
87
+ * - `dataFormat`: Optional. Specifies the data format of EventHub messages. Defaults to "JSON".
88
+ * - `databaseRoutingType`: Optional. Indicates the routing type for the database. Defaults to "Single".
89
+ * - `compression`: Optional. Specifies the compression type for the data connection. Defaults to "None".
90
+ *
91
+ * Example usage:
92
+ * ```typescript
93
+ * const kustoDataConnection = new KustoDataConnection(this, 'myDataConnection', {
94
+ * name: 'exampleDataConnection',
95
+ * location: 'East US',
96
+ * kustoResourceGroup: resourceGroup,
97
+ * kustoClusterName: 'exampleCluster',
98
+ * kustoDatabaseName: 'exampleDatabase',
99
+ * eventhubId: '/subscriptions/{sub-id}/resourceGroups/{rg}/providers/Microsoft.EventHub/namespaces/{namespace}/eventhubs/{eventhub}',
100
+ * consumerGroup: '$Default',
101
+ * tableName: 'destinationTable',
102
+ * dataFormat: 'JSON',
103
+ * databaseRoutingType: 'Single',
104
+ * compression: 'None'
105
+ * });
106
+ * ```
107
+ */
67
108
  constructor(scope: Construct, id: string, kustoDataConnectionProps: KustoDataConnectionProps);
68
109
  }
@@ -6,6 +6,47 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  const kusto_eventhub_data_connection_1 = require("@cdktf/provider-azurerm/lib/kusto-eventhub-data-connection");
7
7
  const constructs_1 = require("constructs");
8
8
  class KustoDataConnection extends constructs_1.Construct {
9
+ /**
10
+ * Constructs a new Azure Kusto Data Connection for ingesting data from an EventHub.
11
+ *
12
+ * This class creates a data connection within a specified Kusto (Azure Data Explorer) database that connects
13
+ * to an Azure EventHub. This setup enables seamless data ingestion from EventHub into the Kusto database,
14
+ * allowing for real-time analytics on streamed data.
15
+ *
16
+ * @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
17
+ * @param id - The unique identifier for this instance of the data connection.
18
+ * @param kustoDataConnectionProps - The properties for configuring the Kusto EventHub Data Connection. These properties include:
19
+ * - `name`: Required. The name of the data connection.
20
+ * - `location`: Required. The Azure region where the data connection will be created.
21
+ * - `kustoResourceGroup`: Required. The Resource Group where the Kusto database exists.
22
+ * - `kustoClusterName`: Required. The name of the Kusto Cluster to which this data connection will be added.
23
+ * - `kustoDatabaseName`: Required. The name of the Kusto Database to which this data connection will be added.
24
+ * - `eventhubId`: Required. The resource ID of the EventHub used for data ingestion.
25
+ * - `consumerGroup`: Optional. The EventHub consumer group used for ingestion. Defaults to "$Default".
26
+ * - `tableName`: Optional. The target table name in the Kusto database used for data ingestion.
27
+ * - `identityId`: Optional. The resource ID of a managed identity used for authentication with EventHub.
28
+ * - `mappingRuleName`: Optional. The mapping rule name used for data ingestion.
29
+ * - `dataFormat`: Optional. Specifies the data format of EventHub messages. Defaults to "JSON".
30
+ * - `databaseRoutingType`: Optional. Indicates the routing type for the database. Defaults to "Single".
31
+ * - `compression`: Optional. Specifies the compression type for the data connection. Defaults to "None".
32
+ *
33
+ * Example usage:
34
+ * ```typescript
35
+ * const kustoDataConnection = new KustoDataConnection(this, 'myDataConnection', {
36
+ * name: 'exampleDataConnection',
37
+ * location: 'East US',
38
+ * kustoResourceGroup: resourceGroup,
39
+ * kustoClusterName: 'exampleCluster',
40
+ * kustoDatabaseName: 'exampleDatabase',
41
+ * eventhubId: '/subscriptions/{sub-id}/resourceGroups/{rg}/providers/Microsoft.EventHub/namespaces/{namespace}/eventhubs/{eventhub}',
42
+ * consumerGroup: '$Default',
43
+ * tableName: 'destinationTable',
44
+ * dataFormat: 'JSON',
45
+ * databaseRoutingType: 'Single',
46
+ * compression: 'None'
47
+ * });
48
+ * ```
49
+ */
9
50
  constructor(scope, id, kustoDataConnectionProps) {
10
51
  super(scope, id);
11
52
  this.eventhubKustoDataConnectionProps = kustoDataConnectionProps;
@@ -31,5 +72,5 @@ class KustoDataConnection extends constructs_1.Construct {
31
72
  }
32
73
  exports.KustoDataConnection = KustoDataConnection;
33
74
  _a = JSII_RTTI_SYMBOL_1;
34
- KustoDataConnection[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_eventhub.KustoDataConnection", version: "0.0.3-pre.6" };
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3VzdG8tY29ubmVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1ldmVudGh1Yi9saWIva3VzdG8tY29ubmVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLCtHQUF5RztBQUV6RywyQ0FBdUM7QUE2RXZDLE1BQWEsbUJBQW9CLFNBQVEsc0JBQVM7SUFHaEQsWUFDRSxLQUFnQixFQUNoQixFQUFVLEVBQ1Ysd0JBQWtEO1FBRWxELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLGdDQUFnQyxHQUFHLHdCQUF3QixDQUFDO1FBRWpFLE1BQU0sUUFBUSxHQUFHO1lBQ2YsU0FBUyxFQUFFLHdCQUF3QixDQUFDLFNBQVMsSUFBSSxTQUFTO1lBQzFELFVBQVUsRUFBRSx3QkFBd0IsQ0FBQyxVQUFVLElBQUksU0FBUztZQUM1RCxlQUFlLEVBQUUsd0JBQXdCLENBQUMsZUFBZSxJQUFJLFNBQVM7WUFDdEUsYUFBYSxFQUFFLHdCQUF3QixDQUFDLGFBQWEsSUFBSSxVQUFVO1lBQ25FLFVBQVUsRUFBRSx3QkFBd0IsQ0FBQyxVQUFVLElBQUksTUFBTTtZQUN6RCxtQkFBbUIsRUFDakIsd0JBQXdCLENBQUMsbUJBQW1CLElBQUksUUFBUTtZQUMxRCxXQUFXLEVBQUUsd0JBQXdCLENBQUMsV0FBVyxJQUFJLE1BQU07U0FDNUQsQ0FBQztRQUVGLElBQUksNERBQTJCLENBQzdCLElBQUksRUFDSix5QkFBeUIsSUFBSSxDQUFDLGdDQUFnQyxDQUFDLElBQUksRUFBRSxFQUNyRTtZQUNFLElBQUksRUFBRSxJQUFJLENBQUMsZ0NBQWdDLENBQUMsSUFBSTtZQUNoRCxRQUFRLEVBQUUsSUFBSSxDQUFDLGdDQUFnQyxDQUFDLFFBQVE7WUFDeEQsaUJBQWlCLEVBQ2YsSUFBSSxDQUFDLGdDQUFnQyxDQUFDLGtCQUFrQixDQUFDLElBQUk7WUFDL0QsV0FBVyxFQUFFLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxnQkFBZ0I7WUFDbkUsWUFBWSxFQUFFLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxpQkFBaUI7WUFDckUsVUFBVSxFQUFFLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxVQUFVO1lBQzVELEdBQUcsUUFBUTtTQUNaLENBQ0YsQ0FBQztJQUNKLENBQUM7O0FBckNILGtEQXNDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEt1c3RvRXZlbnRodWJEYXRhQ29ubmVjdGlvbiB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIva3VzdG8tZXZlbnRodWItZGF0YS1jb25uZWN0aW9uXCI7XG5pbXBvcnQgeyBSZXNvdXJjZUdyb3VwIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9yZXNvdXJjZS1ncm91cFwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBCYXNlS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBLdXN0byBFdmVudEh1YiBEYXRhIENvbm5lY3Rpb24gdG8gY3JlYXRlLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbG9jYXRpb24gd2hlcmUgdGhlIEt1c3RvIEV2ZW50SHViIERhdGEgQ29ubmVjdGlvbiBzaG91bGQgYmUgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGxvY2F0aW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgUmVzb3VyY2UgR3JvdXAgd2hlcmUgdGhlIEt1c3RvIERhdGFiYXNlIHNob3VsZCBleGlzdC5cbiAgICovXG4gIHJlYWRvbmx5IGt1c3RvUmVzb3VyY2VHcm91cDogUmVzb3VyY2VHcm91cDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBuYW1lIG9mIHRoZSBLdXN0byBDbHVzdGVyIHRoaXMgZGF0YSBjb25uZWN0aW9uIHdpbGwgYmUgYWRkZWQgdG8uXG4gICAqL1xuICByZWFkb25seSBrdXN0b0NsdXN0ZXJOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbmFtZSBvZiB0aGUgS3VzdG8gRGF0YWJhc2UgdGhpcyBkYXRhIGNvbm5lY3Rpb24gd2lsbCBiZSBhZGRlZCB0by5cbiAgICovXG4gIHJlYWRvbmx5IGt1c3RvRGF0YWJhc2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgRXZlbnRIdWIgY29uc3VtZXIgZ3JvdXAgdGhpcyBkYXRhIGNvbm5lY3Rpb24gd2lsbCB1c2UgZm9yIGluZ2VzdGlvbi5cbiAgICogQGRlZmF1bHQgXCIkRGVmYXVsdFwiXG4gICAqL1xuICByZWFkb25seSBjb25zdW1lckdyb3VwPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHRhcmdldCB0YWJsZSBuYW1lIHVzZWQgZm9yIHRoZSBtZXNzYWdlIGluZ2VzdGlvbi4gVGFibGUgbXVzdCBleGlzdCBiZWZvcmUgcmVzb3VyY2UgaXMgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IHRhYmxlTmFtZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIHJlc291cmNlIElEIG9mIGEgbWFuYWdlZCBpZGVudGl0eSAoc3lzdGVtIG9yIHVzZXIgYXNzaWduZWQpIHRvIGJlIHVzZWQgdG8gYXV0aGVudGljYXRlIHdpdGggZXZlbnQgaHViLlxuICAgKi9cbiAgcmVhZG9ubHkgaWRlbnRpdHlJZD86IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBtYXBwaW5nIHJ1bGUgdXNlZCBmb3IgdGhlIG1lc3NhZ2UgaW5nZXN0aW9uLiBNYXBwaW5nIHJ1bGUgbXVzdCBleGlzdCBiZWZvcmUgcmVzb3VyY2UgaXMgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IG1hcHBpbmdSdWxlTmFtZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBkYXRhIGZvcm1hdCBvZiB0aGUgRXZlbnRIdWIgbWVzc2FnZXMuXG4gICAqIEFsbG93ZWQgdmFsdWVzOiBBUEFDSEVBVlJPLCBBVlJPLCBDU1YsIEpTT04sIE1VTFRJSlNPTiwgT1JDLCBQQVJRVUVULCBQU1YsIFJBVywgU0NTViwgU0lOR0xFSlNPTiwgU09IU1YsIFRTVkUsIFRTViwgVFhULCBhbmQgVzNDTE9HRklMRS5cbiAgICogQGRlZmF1bHQgXCJKU09OXCJcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFGb3JtYXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEluZGljYXRpb24gZm9yIGRhdGFiYXNlIHJvdXRpbmcgaW5mb3JtYXRpb24gZnJvbSB0aGUgZGF0YSBjb25uZWN0aW9uLCBieSBkZWZhdWx0IG9ubHkgZGF0YWJhc2Ugcm91dGluZyBpbmZvcm1hdGlvbiBpcyBhbGxvd2VkLlxuICAgKiBBbGxvd2VkIHZhbHVlczogU2luZ2xlLCBNdWx0aS5cbiAgICogQGRlZmF1bHQgXCJTaW5nbGVcIlxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YWJhc2VSb3V0aW5nVHlwZT86IHN0cmluZztcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGNvbXByZXNzaW9uIHR5cGUgZm9yIHRoZSBjb25uZWN0aW9uLiBBbGxvd2VkIHZhbHVlczogR1ppcCBhbmQgTm9uZS5cbiAgICogQGRlZmF1bHQgXCJOb25lXCJcbiAgICovXG4gIHJlYWRvbmx5IGNvbXByZXNzaW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEt1c3RvRGF0YUNvbm5lY3Rpb25Qcm9wcyBleHRlbmRzIEJhc2VLdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMge1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSByZXNvdXJjZSBpZCBvZiB0aGUgRXZlbnRIdWIgdGhpcyBkYXRhIGNvbm5lY3Rpb24gd2lsbCB1c2UgZm9yIGluZ2VzdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGV2ZW50aHViSWQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIEt1c3RvRGF0YUNvbm5lY3Rpb24gZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgcmVhZG9ubHkgZXZlbnRodWJLdXN0b0RhdGFDb25uZWN0aW9uUHJvcHM6IEt1c3RvRGF0YUNvbm5lY3Rpb25Qcm9wcztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAga3VzdG9EYXRhQ29ubmVjdGlvblByb3BzOiBLdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMsXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmV2ZW50aHViS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzID0ga3VzdG9EYXRhQ29ubmVjdGlvblByb3BzO1xuXG4gICAgY29uc3QgZGVmYXVsdHMgPSB7XG4gICAgICB0YWJsZU5hbWU6IGt1c3RvRGF0YUNvbm5lY3Rpb25Qcm9wcy50YWJsZU5hbWUgfHwgdW5kZWZpbmVkLFxuICAgICAgaWRlbnRpdHlJZDoga3VzdG9EYXRhQ29ubmVjdGlvblByb3BzLmlkZW50aXR5SWQgfHwgdW5kZWZpbmVkLFxuICAgICAgbWFwcGluZ1J1bGVOYW1lOiBrdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMubWFwcGluZ1J1bGVOYW1lIHx8IHVuZGVmaW5lZCxcbiAgICAgIGNvbnN1bWVyR3JvdXA6IGt1c3RvRGF0YUNvbm5lY3Rpb25Qcm9wcy5jb25zdW1lckdyb3VwIHx8IFwiJERlZmF1bHRcIixcbiAgICAgIGRhdGFGb3JtYXQ6IGt1c3RvRGF0YUNvbm5lY3Rpb25Qcm9wcy5kYXRhRm9ybWF0IHx8IFwiSlNPTlwiLFxuICAgICAgZGF0YWJhc2VSb3V0aW5nVHlwZTpcbiAgICAgICAga3VzdG9EYXRhQ29ubmVjdGlvblByb3BzLmRhdGFiYXNlUm91dGluZ1R5cGUgfHwgXCJTaW5nbGVcIixcbiAgICAgIGNvbXByZXNzaW9uOiBrdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMuY29tcHJlc3Npb24gfHwgXCJOb25lXCIsXG4gICAgfTtcblxuICAgIG5ldyBLdXN0b0V2ZW50aHViRGF0YUNvbm5lY3Rpb24oXG4gICAgICB0aGlzLFxuICAgICAgYGt1c3RvLWRhdGEtY29ubmVjdGlvbi0ke3RoaXMuZXZlbnRodWJLdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMubmFtZX1gLFxuICAgICAge1xuICAgICAgICBuYW1lOiB0aGlzLmV2ZW50aHViS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzLm5hbWUsXG4gICAgICAgIGxvY2F0aW9uOiB0aGlzLmV2ZW50aHViS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzLmxvY2F0aW9uLFxuICAgICAgICByZXNvdXJjZUdyb3VwTmFtZTpcbiAgICAgICAgICB0aGlzLmV2ZW50aHViS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzLmt1c3RvUmVzb3VyY2VHcm91cC5uYW1lLFxuICAgICAgICBjbHVzdGVyTmFtZTogdGhpcy5ldmVudGh1Ykt1c3RvRGF0YUNvbm5lY3Rpb25Qcm9wcy5rdXN0b0NsdXN0ZXJOYW1lLFxuICAgICAgICBkYXRhYmFzZU5hbWU6IHRoaXMuZXZlbnRodWJLdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMua3VzdG9EYXRhYmFzZU5hbWUsXG4gICAgICAgIGV2ZW50aHViSWQ6IHRoaXMuZXZlbnRodWJLdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMuZXZlbnRodWJJZCxcbiAgICAgICAgLi4uZGVmYXVsdHMsXG4gICAgICB9LFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
75
+ KustoDataConnection[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_eventhub.KustoDataConnection", version: "0.0.3-pre.7" };
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3VzdG8tY29ubmVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1ldmVudGh1Yi9saWIva3VzdG8tY29ubmVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLCtHQUF5RztBQUV6RywyQ0FBdUM7QUE2RXZDLE1BQWEsbUJBQW9CLFNBQVEsc0JBQVM7SUFHaEQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0F3Q0c7SUFDSCxZQUNFLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVix3QkFBa0Q7UUFFbEQsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsZ0NBQWdDLEdBQUcsd0JBQXdCLENBQUM7UUFFakUsTUFBTSxRQUFRLEdBQUc7WUFDZixTQUFTLEVBQUUsd0JBQXdCLENBQUMsU0FBUyxJQUFJLFNBQVM7WUFDMUQsVUFBVSxFQUFFLHdCQUF3QixDQUFDLFVBQVUsSUFBSSxTQUFTO1lBQzVELGVBQWUsRUFBRSx3QkFBd0IsQ0FBQyxlQUFlLElBQUksU0FBUztZQUN0RSxhQUFhLEVBQUUsd0JBQXdCLENBQUMsYUFBYSxJQUFJLFVBQVU7WUFDbkUsVUFBVSxFQUFFLHdCQUF3QixDQUFDLFVBQVUsSUFBSSxNQUFNO1lBQ3pELG1CQUFtQixFQUNqQix3QkFBd0IsQ0FBQyxtQkFBbUIsSUFBSSxRQUFRO1lBQzFELFdBQVcsRUFBRSx3QkFBd0IsQ0FBQyxXQUFXLElBQUksTUFBTTtTQUM1RCxDQUFDO1FBRUYsSUFBSSw0REFBMkIsQ0FDN0IsSUFBSSxFQUNKLHlCQUF5QixJQUFJLENBQUMsZ0NBQWdDLENBQUMsSUFBSSxFQUFFLEVBQ3JFO1lBQ0UsSUFBSSxFQUFFLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxJQUFJO1lBQ2hELFFBQVEsRUFBRSxJQUFJLENBQUMsZ0NBQWdDLENBQUMsUUFBUTtZQUN4RCxpQkFBaUIsRUFDZixJQUFJLENBQUMsZ0NBQWdDLENBQUMsa0JBQWtCLENBQUMsSUFBSTtZQUMvRCxXQUFXLEVBQUUsSUFBSSxDQUFDLGdDQUFnQyxDQUFDLGdCQUFnQjtZQUNuRSxZQUFZLEVBQUUsSUFBSSxDQUFDLGdDQUFnQyxDQUFDLGlCQUFpQjtZQUNyRSxVQUFVLEVBQUUsSUFBSSxDQUFDLGdDQUFnQyxDQUFDLFVBQVU7WUFDNUQsR0FBRyxRQUFRO1NBQ1osQ0FDRixDQUFDO0lBQ0osQ0FBQzs7QUE5RUgsa0RBK0VDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgS3VzdG9FdmVudGh1YkRhdGFDb25uZWN0aW9uIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9rdXN0by1ldmVudGh1Yi1kYXRhLWNvbm5lY3Rpb25cIjtcbmltcG9ydCB7IFJlc291cmNlR3JvdXAgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL3Jlc291cmNlLWdyb3VwXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VLdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIEt1c3RvIEV2ZW50SHViIERhdGEgQ29ubmVjdGlvbiB0byBjcmVhdGUuXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBsb2NhdGlvbiB3aGVyZSB0aGUgS3VzdG8gRXZlbnRIdWIgRGF0YSBDb25uZWN0aW9uIHNob3VsZCBiZSBjcmVhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgbG9jYXRpb246IHN0cmluZztcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBSZXNvdXJjZSBHcm91cCB3aGVyZSB0aGUgS3VzdG8gRGF0YWJhc2Ugc2hvdWxkIGV4aXN0LlxuICAgKi9cbiAgcmVhZG9ubHkga3VzdG9SZXNvdXJjZUdyb3VwOiBSZXNvdXJjZUdyb3VwO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG5hbWUgb2YgdGhlIEt1c3RvIENsdXN0ZXIgdGhpcyBkYXRhIGNvbm5lY3Rpb24gd2lsbCBiZSBhZGRlZCB0by5cbiAgICovXG4gIHJlYWRvbmx5IGt1c3RvQ2x1c3Rlck5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBuYW1lIG9mIHRoZSBLdXN0byBEYXRhYmFzZSB0aGlzIGRhdGEgY29ubmVjdGlvbiB3aWxsIGJlIGFkZGVkIHRvLlxuICAgKi9cbiAgcmVhZG9ubHkga3VzdG9EYXRhYmFzZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBFdmVudEh1YiBjb25zdW1lciBncm91cCB0aGlzIGRhdGEgY29ubmVjdGlvbiB3aWxsIHVzZSBmb3IgaW5nZXN0aW9uLlxuICAgKiBAZGVmYXVsdCBcIiREZWZhdWx0XCJcbiAgICovXG4gIHJlYWRvbmx5IGNvbnN1bWVyR3JvdXA/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgdGFyZ2V0IHRhYmxlIG5hbWUgdXNlZCBmb3IgdGhlIG1lc3NhZ2UgaW5nZXN0aW9uLiBUYWJsZSBtdXN0IGV4aXN0IGJlZm9yZSByZXNvdXJjZSBpcyBjcmVhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgdGFibGVOYW1lPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVzb3VyY2UgSUQgb2YgYSBtYW5hZ2VkIGlkZW50aXR5IChzeXN0ZW0gb3IgdXNlciBhc3NpZ25lZCkgdG8gYmUgdXNlZCB0byBhdXRoZW50aWNhdGUgd2l0aCBldmVudCBodWIuXG4gICAqL1xuICByZWFkb25seSBpZGVudGl0eUlkPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG1hcHBpbmcgcnVsZSB1c2VkIGZvciB0aGUgbWVzc2FnZSBpbmdlc3Rpb24uIE1hcHBpbmcgcnVsZSBtdXN0IGV4aXN0IGJlZm9yZSByZXNvdXJjZSBpcyBjcmVhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgbWFwcGluZ1J1bGVOYW1lPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIGRhdGEgZm9ybWF0IG9mIHRoZSBFdmVudEh1YiBtZXNzYWdlcy5cbiAgICogQWxsb3dlZCB2YWx1ZXM6IEFQQUNIRUFWUk8sIEFWUk8sIENTViwgSlNPTiwgTVVMVElKU09OLCBPUkMsIFBBUlFVRVQsIFBTViwgUkFXLCBTQ1NWLCBTSU5HTEVKU09OLCBTT0hTViwgVFNWRSwgVFNWLCBUWFQsIGFuZCBXM0NMT0dGSUxFLlxuICAgKiBAZGVmYXVsdCBcIkpTT05cIlxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YUZvcm1hdD86IHN0cmluZztcblxuICAvKipcbiAgICogSW5kaWNhdGlvbiBmb3IgZGF0YWJhc2Ugcm91dGluZyBpbmZvcm1hdGlvbiBmcm9tIHRoZSBkYXRhIGNvbm5lY3Rpb24sIGJ5IGRlZmF1bHQgb25seSBkYXRhYmFzZSByb3V0aW5nIGluZm9ybWF0aW9uIGlzIGFsbG93ZWQuXG4gICAqIEFsbG93ZWQgdmFsdWVzOiBTaW5nbGUsIE11bHRpLlxuICAgKiBAZGVmYXVsdCBcIlNpbmdsZVwiXG4gICAqL1xuICByZWFkb25seSBkYXRhYmFzZVJvdXRpbmdUeXBlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgY29tcHJlc3Npb24gdHlwZSBmb3IgdGhlIGNvbm5lY3Rpb24uIEFsbG93ZWQgdmFsdWVzOiBHWmlwIGFuZCBOb25lLlxuICAgKiBAZGVmYXVsdCBcIk5vbmVcIlxuICAgKi9cbiAgcmVhZG9ubHkgY29tcHJlc3Npb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzIGV4dGVuZHMgQmFzZUt1c3RvRGF0YUNvbm5lY3Rpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHJlc291cmNlIGlkIG9mIHRoZSBFdmVudEh1YiB0aGlzIGRhdGEgY29ubmVjdGlvbiB3aWxsIHVzZSBmb3IgaW5nZXN0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgZXZlbnRodWJJZDogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgS3VzdG9EYXRhQ29ubmVjdGlvbiBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyByZWFkb25seSBldmVudGh1Ykt1c3RvRGF0YUNvbm5lY3Rpb25Qcm9wczogS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzO1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIGEgbmV3IEF6dXJlIEt1c3RvIERhdGEgQ29ubmVjdGlvbiBmb3IgaW5nZXN0aW5nIGRhdGEgZnJvbSBhbiBFdmVudEh1Yi5cbiAgICpcbiAgICogVGhpcyBjbGFzcyBjcmVhdGVzIGEgZGF0YSBjb25uZWN0aW9uIHdpdGhpbiBhIHNwZWNpZmllZCBLdXN0byAoQXp1cmUgRGF0YSBFeHBsb3JlcikgZGF0YWJhc2UgdGhhdCBjb25uZWN0c1xuICAgKiB0byBhbiBBenVyZSBFdmVudEh1Yi4gVGhpcyBzZXR1cCBlbmFibGVzIHNlYW1sZXNzIGRhdGEgaW5nZXN0aW9uIGZyb20gRXZlbnRIdWIgaW50byB0aGUgS3VzdG8gZGF0YWJhc2UsXG4gICAqIGFsbG93aW5nIGZvciByZWFsLXRpbWUgYW5hbHl0aWNzIG9uIHN0cmVhbWVkIGRhdGEuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIFRoZSBzY29wZSBpbiB3aGljaCB0byBkZWZpbmUgdGhpcyBjb25zdHJ1Y3QsIHR5cGljYWxseSByZXByZXNlbnRpbmcgdGhlIENsb3VkIERldmVsb3BtZW50IEtpdCAoQ0RLKSBzdGFjay5cbiAgICogQHBhcmFtIGlkIC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIGluc3RhbmNlIG9mIHRoZSBkYXRhIGNvbm5lY3Rpb24uXG4gICAqIEBwYXJhbSBrdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMgLSBUaGUgcHJvcGVydGllcyBmb3IgY29uZmlndXJpbmcgdGhlIEt1c3RvIEV2ZW50SHViIERhdGEgQ29ubmVjdGlvbi4gVGhlc2UgcHJvcGVydGllcyBpbmNsdWRlOlxuICAgKiAgICAgICAgICAgICAgICAtIGBuYW1lYDogUmVxdWlyZWQuIFRoZSBuYW1lIG9mIHRoZSBkYXRhIGNvbm5lY3Rpb24uXG4gICAqICAgICAgICAgICAgICAgIC0gYGxvY2F0aW9uYDogUmVxdWlyZWQuIFRoZSBBenVyZSByZWdpb24gd2hlcmUgdGhlIGRhdGEgY29ubmVjdGlvbiB3aWxsIGJlIGNyZWF0ZWQuXG4gICAqICAgICAgICAgICAgICAgIC0gYGt1c3RvUmVzb3VyY2VHcm91cGA6IFJlcXVpcmVkLiBUaGUgUmVzb3VyY2UgR3JvdXAgd2hlcmUgdGhlIEt1c3RvIGRhdGFiYXNlIGV4aXN0cy5cbiAgICogICAgICAgICAgICAgICAgLSBga3VzdG9DbHVzdGVyTmFtZWA6IFJlcXVpcmVkLiBUaGUgbmFtZSBvZiB0aGUgS3VzdG8gQ2x1c3RlciB0byB3aGljaCB0aGlzIGRhdGEgY29ubmVjdGlvbiB3aWxsIGJlIGFkZGVkLlxuICAgKiAgICAgICAgICAgICAgICAtIGBrdXN0b0RhdGFiYXNlTmFtZWA6IFJlcXVpcmVkLiBUaGUgbmFtZSBvZiB0aGUgS3VzdG8gRGF0YWJhc2UgdG8gd2hpY2ggdGhpcyBkYXRhIGNvbm5lY3Rpb24gd2lsbCBiZSBhZGRlZC5cbiAgICogICAgICAgICAgICAgICAgLSBgZXZlbnRodWJJZGA6IFJlcXVpcmVkLiBUaGUgcmVzb3VyY2UgSUQgb2YgdGhlIEV2ZW50SHViIHVzZWQgZm9yIGRhdGEgaW5nZXN0aW9uLlxuICAgKiAgICAgICAgICAgICAgICAtIGBjb25zdW1lckdyb3VwYDogT3B0aW9uYWwuIFRoZSBFdmVudEh1YiBjb25zdW1lciBncm91cCB1c2VkIGZvciBpbmdlc3Rpb24uIERlZmF1bHRzIHRvIFwiJERlZmF1bHRcIi5cbiAgICogICAgICAgICAgICAgICAgLSBgdGFibGVOYW1lYDogT3B0aW9uYWwuIFRoZSB0YXJnZXQgdGFibGUgbmFtZSBpbiB0aGUgS3VzdG8gZGF0YWJhc2UgdXNlZCBmb3IgZGF0YSBpbmdlc3Rpb24uXG4gICAqICAgICAgICAgICAgICAgIC0gYGlkZW50aXR5SWRgOiBPcHRpb25hbC4gVGhlIHJlc291cmNlIElEIG9mIGEgbWFuYWdlZCBpZGVudGl0eSB1c2VkIGZvciBhdXRoZW50aWNhdGlvbiB3aXRoIEV2ZW50SHViLlxuICAgKiAgICAgICAgICAgICAgICAtIGBtYXBwaW5nUnVsZU5hbWVgOiBPcHRpb25hbC4gVGhlIG1hcHBpbmcgcnVsZSBuYW1lIHVzZWQgZm9yIGRhdGEgaW5nZXN0aW9uLlxuICAgKiAgICAgICAgICAgICAgICAtIGBkYXRhRm9ybWF0YDogT3B0aW9uYWwuIFNwZWNpZmllcyB0aGUgZGF0YSBmb3JtYXQgb2YgRXZlbnRIdWIgbWVzc2FnZXMuIERlZmF1bHRzIHRvIFwiSlNPTlwiLlxuICAgKiAgICAgICAgICAgICAgICAtIGBkYXRhYmFzZVJvdXRpbmdUeXBlYDogT3B0aW9uYWwuIEluZGljYXRlcyB0aGUgcm91dGluZyB0eXBlIGZvciB0aGUgZGF0YWJhc2UuIERlZmF1bHRzIHRvIFwiU2luZ2xlXCIuXG4gICAqICAgICAgICAgICAgICAgIC0gYGNvbXByZXNzaW9uYDogT3B0aW9uYWwuIFNwZWNpZmllcyB0aGUgY29tcHJlc3Npb24gdHlwZSBmb3IgdGhlIGRhdGEgY29ubmVjdGlvbi4gRGVmYXVsdHMgdG8gXCJOb25lXCIuXG4gICAqXG4gICAqIEV4YW1wbGUgdXNhZ2U6XG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogY29uc3Qga3VzdG9EYXRhQ29ubmVjdGlvbiA9IG5ldyBLdXN0b0RhdGFDb25uZWN0aW9uKHRoaXMsICdteURhdGFDb25uZWN0aW9uJywge1xuICAgKiAgIG5hbWU6ICdleGFtcGxlRGF0YUNvbm5lY3Rpb24nLFxuICAgKiAgIGxvY2F0aW9uOiAnRWFzdCBVUycsXG4gICAqICAga3VzdG9SZXNvdXJjZUdyb3VwOiByZXNvdXJjZUdyb3VwLFxuICAgKiAgIGt1c3RvQ2x1c3Rlck5hbWU6ICdleGFtcGxlQ2x1c3RlcicsXG4gICAqICAga3VzdG9EYXRhYmFzZU5hbWU6ICdleGFtcGxlRGF0YWJhc2UnLFxuICAgKiAgIGV2ZW50aHViSWQ6ICcvc3Vic2NyaXB0aW9ucy97c3ViLWlkfS9yZXNvdXJjZUdyb3Vwcy97cmd9L3Byb3ZpZGVycy9NaWNyb3NvZnQuRXZlbnRIdWIvbmFtZXNwYWNlcy97bmFtZXNwYWNlfS9ldmVudGh1YnMve2V2ZW50aHVifScsXG4gICAqICAgY29uc3VtZXJHcm91cDogJyREZWZhdWx0JyxcbiAgICogICB0YWJsZU5hbWU6ICdkZXN0aW5hdGlvblRhYmxlJyxcbiAgICogICBkYXRhRm9ybWF0OiAnSlNPTicsXG4gICAqICAgZGF0YWJhc2VSb3V0aW5nVHlwZTogJ1NpbmdsZScsXG4gICAqICAgY29tcHJlc3Npb246ICdOb25lJ1xuICAgKiB9KTtcbiAgICogYGBgXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAga3VzdG9EYXRhQ29ubmVjdGlvblByb3BzOiBLdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMsXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmV2ZW50aHViS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzID0ga3VzdG9EYXRhQ29ubmVjdGlvblByb3BzO1xuXG4gICAgY29uc3QgZGVmYXVsdHMgPSB7XG4gICAgICB0YWJsZU5hbWU6IGt1c3RvRGF0YUNvbm5lY3Rpb25Qcm9wcy50YWJsZU5hbWUgfHwgdW5kZWZpbmVkLFxuICAgICAgaWRlbnRpdHlJZDoga3VzdG9EYXRhQ29ubmVjdGlvblByb3BzLmlkZW50aXR5SWQgfHwgdW5kZWZpbmVkLFxuICAgICAgbWFwcGluZ1J1bGVOYW1lOiBrdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMubWFwcGluZ1J1bGVOYW1lIHx8IHVuZGVmaW5lZCxcbiAgICAgIGNvbnN1bWVyR3JvdXA6IGt1c3RvRGF0YUNvbm5lY3Rpb25Qcm9wcy5jb25zdW1lckdyb3VwIHx8IFwiJERlZmF1bHRcIixcbiAgICAgIGRhdGFGb3JtYXQ6IGt1c3RvRGF0YUNvbm5lY3Rpb25Qcm9wcy5kYXRhRm9ybWF0IHx8IFwiSlNPTlwiLFxuICAgICAgZGF0YWJhc2VSb3V0aW5nVHlwZTpcbiAgICAgICAga3VzdG9EYXRhQ29ubmVjdGlvblByb3BzLmRhdGFiYXNlUm91dGluZ1R5cGUgfHwgXCJTaW5nbGVcIixcbiAgICAgIGNvbXByZXNzaW9uOiBrdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMuY29tcHJlc3Npb24gfHwgXCJOb25lXCIsXG4gICAgfTtcblxuICAgIG5ldyBLdXN0b0V2ZW50aHViRGF0YUNvbm5lY3Rpb24oXG4gICAgICB0aGlzLFxuICAgICAgYGt1c3RvLWRhdGEtY29ubmVjdGlvbi0ke3RoaXMuZXZlbnRodWJLdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMubmFtZX1gLFxuICAgICAge1xuICAgICAgICBuYW1lOiB0aGlzLmV2ZW50aHViS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzLm5hbWUsXG4gICAgICAgIGxvY2F0aW9uOiB0aGlzLmV2ZW50aHViS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzLmxvY2F0aW9uLFxuICAgICAgICByZXNvdXJjZUdyb3VwTmFtZTpcbiAgICAgICAgICB0aGlzLmV2ZW50aHViS3VzdG9EYXRhQ29ubmVjdGlvblByb3BzLmt1c3RvUmVzb3VyY2VHcm91cC5uYW1lLFxuICAgICAgICBjbHVzdGVyTmFtZTogdGhpcy5ldmVudGh1Ykt1c3RvRGF0YUNvbm5lY3Rpb25Qcm9wcy5rdXN0b0NsdXN0ZXJOYW1lLFxuICAgICAgICBkYXRhYmFzZU5hbWU6IHRoaXMuZXZlbnRodWJLdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMua3VzdG9EYXRhYmFzZU5hbWUsXG4gICAgICAgIGV2ZW50aHViSWQ6IHRoaXMuZXZlbnRodWJLdXN0b0RhdGFDb25uZWN0aW9uUHJvcHMuZXZlbnRodWJJZCxcbiAgICAgICAgLi4uZGVmYXVsdHMsXG4gICAgICB9LFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -72,6 +72,80 @@ export declare class Namespace extends AzureResourceWithAlert {
72
72
  resourceGroup: ResourceGroup;
73
73
  id: string;
74
74
  readonly namespaceName: string;
75
+ /**
76
+ * Constructs a new Event Hub Namespace.
77
+ *
78
+ * This class creates an Azure Event Hub Namespace, which serves as a container for all messaging components.
79
+ * Namespaces provide a scoping container for Event Hub resources within a specific region, which can be further
80
+ * controlled and managed using the provided settings.
81
+ *
82
+ * @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
83
+ * @param name - The unique name for this instance of the Event Hub Namespace.
84
+ * @param ehNamespaceProps - The properties for configuring the Event Hub Namespace. These properties include:
85
+ * - `resourceGroup`: Required. The Azure Resource Group in which the namespace will be created.
86
+ * - `name`: Required. The name of the Event Hub Namespace to create.
87
+ * - `sku`: Optional. The SKU tier of the namespace (Basic, Standard, Premium). Defaults to "Basic".
88
+ * - `capacity`: Optional. Specifies the throughput units for a Standard SKU namespace. Defaults to 2.
89
+ * - `autoInflateEnabled`: Optional. Enables or disables Auto Inflate. Defaults to false.
90
+ * - `maximumThroughputUnits`: Optional. The maximum number of throughput units when Auto Inflate is enabled. Defaults to 2.
91
+ * - `zoneRedundant`: Optional. Specifies if the namespace should be zone redundant. Defaults to true.
92
+ * - `tags`: Optional. Tags for resource management and categorization.
93
+ * - `minimumTlsVersion`: Optional. Specifies the minimum supported TLS version. Defaults to "1.2".
94
+ * - `publicNetworkAccessEnabled`: Optional. Specifies if public network access is enabled. Defaults to true.
95
+ * - `localAuthenticationEnabled`: Optional. Specifies if SAS authentication is enabled. Defaults to false.
96
+ * - `identityType`: Optional. The type of Managed Service Identity. Defaults to "SystemAssigned".
97
+ * - `identityIds`: Optional. A list of User Assigned Managed Identity IDs.
98
+ *
99
+ * Example usage:
100
+ * ```typescript
101
+ * const eventHubNamespace = new Namespace(this, 'myNamespace', {
102
+ * resourceGroup: resourceGroup,
103
+ * name: 'myEventHubNamespace',
104
+ * sku: 'Standard',
105
+ * capacity: 4,
106
+ * autoInflateEnabled: true,
107
+ * maximumThroughputUnits: 10,
108
+ * zoneRedundant: false,
109
+ * tags: {
110
+ * department: 'IT'
111
+ * },
112
+ * minimumTlsVersion: '1.2',
113
+ * publicNetworkAccessEnabled: false,
114
+ * localAuthenticationEnabled: true,
115
+ * identityType: 'SystemAssigned'
116
+ * });
117
+ * ```
118
+ */
75
119
  constructor(scope: Construct, name: string, ehNamespaceProps: NamespaceProps);
120
+ /**
121
+ * Creates and adds an Event Hub instance to the current namespace.
122
+ *
123
+ * This method sets up a new Event Hub instance within the namespace defined by this class. An Event Hub instance
124
+ * serves as a container that processes and stores events. This method facilitates the setup of multiple Event Hubs
125
+ * within a single namespace, each configured according to the specified properties.
126
+ *
127
+ * @param props - The properties for configuring the new Event Hub instance. These properties extend `BaseInstanceProps`, which include:
128
+ * - `name`: Required. The name of the Event Hub instance.
129
+ * - `partitionCount`: Optional. The number of partitions in the Event Hub. Default is 2.
130
+ * - `messageRetention`: Optional. The number of days to retain messages in the Event Hub. Default is 1.
131
+ * - `status`: Optional. The operational status of the Event Hub (Active, Disabled, SendDisabled). Default is "Active".
132
+ * Other properties from `BaseInstanceProps` can also be passed and will be used in the creation of the Event Hub.
133
+ *
134
+ * @returns An instance of the Event Hub (`Instance` class), configured with the specified properties.
135
+ *
136
+ * Example usage:
137
+ * ```typescript
138
+ * const eventHub = namespace.addEventhubInstance({
139
+ * name: 'myEventHub',
140
+ * partitionCount: 4,
141
+ * messageRetention: 7,
142
+ * status: 'Active'
143
+ * });
144
+ * ```
145
+ *
146
+ * @remarks
147
+ * Ensure that the namespace has sufficient capacity and configuration to support the properties of the Event Hub being created,
148
+ * especially in terms of partition count and throughput units if applicable.
149
+ */
76
150
  addEventhubInstance(props: BaseInstanceProps): Instance;
77
151
  }
@@ -8,6 +8,50 @@ const cdktf = require("cdktf");
8
8
  const instance_1 = require("./instance");
9
9
  const lib_1 = require("../../core-azure/lib");
10
10
  class Namespace extends lib_1.AzureResourceWithAlert {
11
+ /**
12
+ * Constructs a new Event Hub Namespace.
13
+ *
14
+ * This class creates an Azure Event Hub Namespace, which serves as a container for all messaging components.
15
+ * Namespaces provide a scoping container for Event Hub resources within a specific region, which can be further
16
+ * controlled and managed using the provided settings.
17
+ *
18
+ * @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
19
+ * @param name - The unique name for this instance of the Event Hub Namespace.
20
+ * @param ehNamespaceProps - The properties for configuring the Event Hub Namespace. These properties include:
21
+ * - `resourceGroup`: Required. The Azure Resource Group in which the namespace will be created.
22
+ * - `name`: Required. The name of the Event Hub Namespace to create.
23
+ * - `sku`: Optional. The SKU tier of the namespace (Basic, Standard, Premium). Defaults to "Basic".
24
+ * - `capacity`: Optional. Specifies the throughput units for a Standard SKU namespace. Defaults to 2.
25
+ * - `autoInflateEnabled`: Optional. Enables or disables Auto Inflate. Defaults to false.
26
+ * - `maximumThroughputUnits`: Optional. The maximum number of throughput units when Auto Inflate is enabled. Defaults to 2.
27
+ * - `zoneRedundant`: Optional. Specifies if the namespace should be zone redundant. Defaults to true.
28
+ * - `tags`: Optional. Tags for resource management and categorization.
29
+ * - `minimumTlsVersion`: Optional. Specifies the minimum supported TLS version. Defaults to "1.2".
30
+ * - `publicNetworkAccessEnabled`: Optional. Specifies if public network access is enabled. Defaults to true.
31
+ * - `localAuthenticationEnabled`: Optional. Specifies if SAS authentication is enabled. Defaults to false.
32
+ * - `identityType`: Optional. The type of Managed Service Identity. Defaults to "SystemAssigned".
33
+ * - `identityIds`: Optional. A list of User Assigned Managed Identity IDs.
34
+ *
35
+ * Example usage:
36
+ * ```typescript
37
+ * const eventHubNamespace = new Namespace(this, 'myNamespace', {
38
+ * resourceGroup: resourceGroup,
39
+ * name: 'myEventHubNamespace',
40
+ * sku: 'Standard',
41
+ * capacity: 4,
42
+ * autoInflateEnabled: true,
43
+ * maximumThroughputUnits: 10,
44
+ * zoneRedundant: false,
45
+ * tags: {
46
+ * department: 'IT'
47
+ * },
48
+ * minimumTlsVersion: '1.2',
49
+ * publicNetworkAccessEnabled: false,
50
+ * localAuthenticationEnabled: true,
51
+ * identityType: 'SystemAssigned'
52
+ * });
53
+ * ```
54
+ */
11
55
  constructor(scope, name, ehNamespaceProps) {
12
56
  super(scope, name);
13
57
  this.ehNamespaceProps = ehNamespaceProps;
@@ -43,7 +87,36 @@ class Namespace extends lib_1.AzureResourceWithAlert {
43
87
  });
44
88
  cdktfTerraformOutputEventhubNamespceId.overrideLogicalId("id");
45
89
  }
46
- // Create an EventHub Instance Method
90
+ /**
91
+ * Creates and adds an Event Hub instance to the current namespace.
92
+ *
93
+ * This method sets up a new Event Hub instance within the namespace defined by this class. An Event Hub instance
94
+ * serves as a container that processes and stores events. This method facilitates the setup of multiple Event Hubs
95
+ * within a single namespace, each configured according to the specified properties.
96
+ *
97
+ * @param props - The properties for configuring the new Event Hub instance. These properties extend `BaseInstanceProps`, which include:
98
+ * - `name`: Required. The name of the Event Hub instance.
99
+ * - `partitionCount`: Optional. The number of partitions in the Event Hub. Default is 2.
100
+ * - `messageRetention`: Optional. The number of days to retain messages in the Event Hub. Default is 1.
101
+ * - `status`: Optional. The operational status of the Event Hub (Active, Disabled, SendDisabled). Default is "Active".
102
+ * Other properties from `BaseInstanceProps` can also be passed and will be used in the creation of the Event Hub.
103
+ *
104
+ * @returns An instance of the Event Hub (`Instance` class), configured with the specified properties.
105
+ *
106
+ * Example usage:
107
+ * ```typescript
108
+ * const eventHub = namespace.addEventhubInstance({
109
+ * name: 'myEventHub',
110
+ * partitionCount: 4,
111
+ * messageRetention: 7,
112
+ * status: 'Active'
113
+ * });
114
+ * ```
115
+ *
116
+ * @remarks
117
+ * Ensure that the namespace has sufficient capacity and configuration to support the properties of the Event Hub being created,
118
+ * especially in terms of partition count and throughput units if applicable.
119
+ */
47
120
  addEventhubInstance(props) {
48
121
  return new instance_1.Instance(this, "ehinstance", {
49
122
  resourceGroup: this.resourceGroup,
@@ -54,5 +127,5 @@ class Namespace extends lib_1.AzureResourceWithAlert {
54
127
  }
55
128
  exports.Namespace = Namespace;
56
129
  _a = JSII_RTTI_SYMBOL_1;
57
- Namespace[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_eventhub.Namespace", version: "0.0.3-pre.6" };
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZXNwYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F6dXJlLWV2ZW50aHViL2xpYi9uYW1lc3BhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx1RkFBbUY7QUFFbkYsK0JBQStCO0FBRS9CLHlDQUF5RDtBQUN6RCw4Q0FBOEQ7QUFzRTlELE1BQWEsU0FBVSxTQUFRLDRCQUFzQjtJQU1uRCxZQUNFLEtBQWdCLEVBQ2hCLElBQVksRUFDWixnQkFBZ0M7UUFFaEMsS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVuQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUM7UUFDekMsSUFBSSxDQUFDLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7UUFDcEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7UUFFM0MsTUFBTSxRQUFRLEdBQUc7WUFDZixHQUFHLEVBQUUsZ0JBQWdCLENBQUMsR0FBRyxJQUFJLE9BQU87WUFDcEMsUUFBUSxFQUFFLGdCQUFnQixDQUFDLFFBQVEsSUFBSSxDQUFDO1lBQ3hDLGtCQUFrQixFQUFFLGdCQUFnQixDQUFDLGtCQUFrQixJQUFJLEtBQUs7WUFDaEUsc0JBQXNCLEVBQUUsZ0JBQWdCLENBQUMsc0JBQXNCLElBQUksQ0FBQztZQUNwRSxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsYUFBYSxJQUFJLEtBQUs7WUFDdEQsSUFBSSxFQUFFLGdCQUFnQixDQUFDLElBQUksSUFBSSxFQUFFO1lBQ2pDLGlCQUFpQixFQUFFLGdCQUFnQixDQUFDLGlCQUFpQixJQUFJLEtBQUs7WUFDOUQsMEJBQTBCLEVBQ3hCLGdCQUFnQixDQUFDLDBCQUEwQixJQUFJLElBQUk7WUFDckQsMEJBQTBCLEVBQ3hCLGdCQUFnQixDQUFDLDBCQUEwQixJQUFJLElBQUk7WUFDckQsUUFBUSxFQUFFO2dCQUNSLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZLElBQUksZ0JBQWdCO2dCQUN2RCxXQUFXLEVBQ1QsZ0JBQWdCLENBQUMsWUFBWSxJQUFJLGNBQWM7b0JBQzdDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXO29CQUM5QixDQUFDLENBQUMsU0FBUzthQUNoQjtTQUNGLENBQUM7UUFFRixNQUFNLGdCQUFnQixHQUFHLElBQUksc0NBQWlCLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUNsRSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsSUFBSTtZQUMzQixpQkFBaUIsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUk7WUFDMUMsUUFBUSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUTtZQUNyQyxHQUFHLFFBQVE7U0FDWixDQUFDLENBQUM7UUFFSCxVQUFVO1FBQ1YsSUFBSSxDQUFDLEVBQUUsR0FBRyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7UUFDOUIsTUFBTSxzQ0FBc0MsR0FBRyxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQ3RFLElBQUksRUFDSixJQUFJLEVBQ0o7WUFDRSxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsRUFBRTtTQUMzQixDQUNGLENBQUM7UUFDRixzQ0FBc0MsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQscUNBQXFDO0lBQ3JDLG1CQUFtQixDQUFDLEtBQXdCO1FBQzFDLE9BQU8sSUFBSSxtQkFBUSxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUU7WUFDdEMsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxHQUFHLEtBQUs7U0FDVCxDQUFDLENBQUM7SUFDTCxDQUFDOztBQWhFSCw4QkFpRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudGh1Yk5hbWVzcGFjZSB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvZXZlbnRodWItbmFtZXNwYWNlXCI7XG5pbXBvcnQgeyBSZXNvdXJjZUdyb3VwIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9yZXNvdXJjZS1ncm91cFwiO1xuaW1wb3J0ICogYXMgY2RrdGYgZnJvbSBcImNka3RmXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgSW5zdGFuY2UsIEJhc2VJbnN0YW5jZVByb3BzIH0gZnJvbSBcIi4vaW5zdGFuY2VcIjtcbmltcG9ydCB7IEF6dXJlUmVzb3VyY2VXaXRoQWxlcnQgfSBmcm9tIFwiLi4vLi4vY29yZS1henVyZS9saWJcIjtcblxuZXhwb3J0IGludGVyZmFjZSBOYW1lc3BhY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgQXp1cmUgUmVzb3VyY2UgR3JvdXAgaW4gd2hpY2ggdG8gY3JlYXRlIHRoZSBFdmVudEh1YiBOYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSByZXNvdXJjZUdyb3VwOiBSZXNvdXJjZUdyb3VwO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIEV2ZW50SHViIE5hbWVzcGFjZSB0byBjcmVhdGUuXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEZWZpbmVzIHdoaWNoIHRpZXIgdG8gdXNlLiBWYWxpZCBvcHRpb25zIGFyZSBCYXNpYywgU3RhbmRhcmQsIGFuZCBQcmVtaXVtLlxuICAgKiBAZGVmYXVsdCBcIkJhc2ljXCJcbiAgICovXG4gIHJlYWRvbmx5IHNrdT86IHN0cmluZztcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgQ2FwYWNpdHkgLyBUaHJvdWdocHV0IFVuaXRzIGZvciBhIFN0YW5kYXJkIFNLVSBuYW1lc3BhY2UuXG4gICAqIEBkZWZhdWx0IDJcbiAgICovXG4gIHJlYWRvbmx5IGNhcGFjaXR5PzogbnVtYmVyO1xuICAvKipcbiAgICogU3BlY2lmaWVzIGlmIHRoZSBFdmVudEh1YiBOYW1lc3BhY2Ugc2hvdWxkIGJlIEF1dG8gSW5mbGF0ZSBlbmFibGVkLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b0luZmxhdGVFbmFibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbWF4aW11bSBudW1iZXIgb2YgdGhyb3VnaHB1dCB1bml0cyB3aGVuIEF1dG8gSW5mbGF0ZSBpcyBFbmFibGVkLiBWYWxpZCB2YWx1ZXMgcmFuZ2UgZnJvbSAxIC0gMjAuXG4gICAqIEBkZWZhdWx0IDJcbiAgICovXG4gIHJlYWRvbmx5IG1heGltdW1UaHJvdWdocHV0VW5pdHM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgaWYgdGhlIEV2ZW50SHViIE5hbWVzcGFjZSBzaG91bGQgYmUgWm9uZSBSZWR1bmRhbnQgKGNyZWF0ZWQgYWNyb3NzIEF2YWlsYWJpbGl0eSBab25lcykuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHpvbmVSZWR1bmRhbnQ/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIHRhZ3MgdG8gYXNzaWduIHRvIHRoZSBLZXkgVmF1bHQuXG4gICAqL1xuICByZWFkb25seSB0YWdzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbiAgLyoqXG4gICAqIFRoZSBtaW5pbXVtIHN1cHBvcnRlZCBUTFMgdmVyc2lvbiBmb3IgdGhpcyBFdmVudEh1YiBOYW1lc3BhY2UuIFZhbGlkIHZhbHVlcyBhcmU6IDEuMCwgMS4xIGFuZCAxLjIuXG4gICAqIEBkZWZhdWx0IFwiMS4yXCJcbiAgICovXG4gIHJlYWRvbmx5IG1pbmltdW1UbHNWZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogSXMgcHVibGljIG5ldHdvcmsgYWNjZXNzIGVuYWJsZWQgZm9yIHRoZSBFdmVudEh1YiBOYW1lc3BhY2U/XG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHB1YmxpY05ldHdvcmtBY2Nlc3NFbmFibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIElzIFNBUyBhdXRoZW50aWNhdGlvbiBlbmFibGVkIGZvciB0aGUgRXZlbnRIdWIgTmFtZXNwYWNlPyBOb3J0aCBDZW50cmFsIFVTIE5vdCBzdXBwb3J0ZWQuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBsb2NhbEF1dGhlbnRpY2F0aW9uRW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHR5cGUgb2YgTWFuYWdlZCBTZXJ2aWNlIElkZW50aXR5IHRoYXQgc2hvdWxkIGJlIGNvbmZpZ3VyZWQgb24gdGhpcyBFdmVudCBIdWIgTmFtZXNwYWNlLiBQb3NzaWJsZSB2YWx1ZXMgYXJlIFN5c3RlbUFzc2lnbmVkIG9yIFVzZXJBc3NpZ25lZC5cbiAgICogQGRlZmF1bHQgXCJTeXN0ZW1Bc3NpZ25lZFwiXG4gICAqL1xuICByZWFkb25seSBpZGVudGl0eVR5cGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYSBsaXN0IG9mIFVzZXIgQXNzaWduZWQgTWFuYWdlZCBJZGVudGl0eSBJRHMgdG8gYmUgYXNzaWduZWQgdG8gdGhpcyBFdmVudEh1YiBuYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSBpZGVudGl0eUlkcz86IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUT0RPOiBuZXR3b3JrX3J1bGVzZXRzXG4gICAqL1xufVxuXG5leHBvcnQgY2xhc3MgTmFtZXNwYWNlIGV4dGVuZHMgQXp1cmVSZXNvdXJjZVdpdGhBbGVydCB7XG4gIHJlYWRvbmx5IGVoTmFtZXNwYWNlUHJvcHM6IE5hbWVzcGFjZVByb3BzO1xuICBwdWJsaWMgcmVzb3VyY2VHcm91cDogUmVzb3VyY2VHcm91cDtcbiAgcHVibGljIGlkOiBzdHJpbmc7XG4gIHJlYWRvbmx5IG5hbWVzcGFjZU5hbWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICBlaE5hbWVzcGFjZVByb3BzOiBOYW1lc3BhY2VQcm9wcyxcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIG5hbWUpO1xuXG4gICAgdGhpcy5laE5hbWVzcGFjZVByb3BzID0gZWhOYW1lc3BhY2VQcm9wcztcbiAgICB0aGlzLnJlc291cmNlR3JvdXAgPSBlaE5hbWVzcGFjZVByb3BzLnJlc291cmNlR3JvdXA7XG4gICAgdGhpcy5uYW1lc3BhY2VOYW1lID0gZWhOYW1lc3BhY2VQcm9wcy5uYW1lO1xuXG4gICAgY29uc3QgZGVmYXVsdHMgPSB7XG4gICAgICBza3U6IGVoTmFtZXNwYWNlUHJvcHMuc2t1IHx8IFwiQmFzaWNcIixcbiAgICAgIGNhcGFjaXR5OiBlaE5hbWVzcGFjZVByb3BzLmNhcGFjaXR5IHx8IDIsXG4gICAgICBhdXRvSW5mbGF0ZUVuYWJsZWQ6IGVoTmFtZXNwYWNlUHJvcHMuYXV0b0luZmxhdGVFbmFibGVkIHx8IGZhbHNlLFxuICAgICAgbWF4aW11bVRocm91Z2hwdXRVbml0czogZWhOYW1lc3BhY2VQcm9wcy5tYXhpbXVtVGhyb3VnaHB1dFVuaXRzIHx8IDIsXG4gICAgICB6b25lUmVkdW5kYW50OiBlaE5hbWVzcGFjZVByb3BzLnpvbmVSZWR1bmRhbnQgfHwgZmFsc2UsXG4gICAgICB0YWdzOiBlaE5hbWVzcGFjZVByb3BzLnRhZ3MgfHwge30sXG4gICAgICBtaW5pbXVtVGxzVmVyc2lvbjogZWhOYW1lc3BhY2VQcm9wcy5taW5pbXVtVGxzVmVyc2lvbiB8fCBcIjEuMlwiLFxuICAgICAgcHVibGljTmV0d29ya0FjY2Vzc0VuYWJsZWQ6XG4gICAgICAgIGVoTmFtZXNwYWNlUHJvcHMucHVibGljTmV0d29ya0FjY2Vzc0VuYWJsZWQgfHwgdHJ1ZSxcbiAgICAgIGxvY2FsQXV0aGVudGljYXRpb25FbmFibGVkOlxuICAgICAgICBlaE5hbWVzcGFjZVByb3BzLmxvY2FsQXV0aGVudGljYXRpb25FbmFibGVkIHx8IHRydWUsXG4gICAgICBpZGVudGl0eToge1xuICAgICAgICB0eXBlOiBlaE5hbWVzcGFjZVByb3BzLmlkZW50aXR5VHlwZSB8fCBcIlN5c3RlbUFzc2lnbmVkXCIsXG4gICAgICAgIGlkZW50aXR5SWRzOlxuICAgICAgICAgIGVoTmFtZXNwYWNlUHJvcHMuaWRlbnRpdHlUeXBlID09IFwiVXNlckFzc2lnbmVkXCJcbiAgICAgICAgICAgID8gZWhOYW1lc3BhY2VQcm9wcy5pZGVudGl0eUlkc1xuICAgICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICB9LFxuICAgIH07XG5cbiAgICBjb25zdCBldmVudGh1Yk5hbWVzcGNlID0gbmV3IEV2ZW50aHViTmFtZXNwYWNlKHRoaXMsIFwiZWhuYW1lc3BhY2VcIiwge1xuICAgICAgbmFtZTogZWhOYW1lc3BhY2VQcm9wcy5uYW1lLFxuICAgICAgcmVzb3VyY2VHcm91cE5hbWU6IHRoaXMucmVzb3VyY2VHcm91cC5uYW1lLFxuICAgICAgbG9jYXRpb246IHRoaXMucmVzb3VyY2VHcm91cC5sb2NhdGlvbixcbiAgICAgIC4uLmRlZmF1bHRzLFxuICAgIH0pO1xuXG4gICAgLy8gT3V0cHV0c1xuICAgIHRoaXMuaWQgPSBldmVudGh1Yk5hbWVzcGNlLmlkO1xuICAgIGNvbnN0IGNka3RmVGVycmFmb3JtT3V0cHV0RXZlbnRodWJOYW1lc3BjZUlkID0gbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dChcbiAgICAgIHRoaXMsXG4gICAgICBcImlkXCIsXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiBldmVudGh1Yk5hbWVzcGNlLmlkLFxuICAgICAgfSxcbiAgICApO1xuICAgIGNka3RmVGVycmFmb3JtT3V0cHV0RXZlbnRodWJOYW1lc3BjZUlkLm92ZXJyaWRlTG9naWNhbElkKFwiaWRcIik7XG4gIH1cblxuICAvLyBDcmVhdGUgYW4gRXZlbnRIdWIgSW5zdGFuY2UgTWV0aG9kXG4gIGFkZEV2ZW50aHViSW5zdGFuY2UocHJvcHM6IEJhc2VJbnN0YW5jZVByb3BzKSB7XG4gICAgcmV0dXJuIG5ldyBJbnN0YW5jZSh0aGlzLCBcImVoaW5zdGFuY2VcIiwge1xuICAgICAgcmVzb3VyY2VHcm91cDogdGhpcy5yZXNvdXJjZUdyb3VwLFxuICAgICAgbmFtZXNwYWNlTmFtZTogdGhpcy5uYW1lc3BhY2VOYW1lLFxuICAgICAgLi4ucHJvcHMsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
130
+ Namespace[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_eventhub.Namespace", version: "0.0.3-pre.7" };
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZXNwYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F6dXJlLWV2ZW50aHViL2xpYi9uYW1lc3BhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx1RkFBbUY7QUFFbkYsK0JBQStCO0FBRS9CLHlDQUF5RDtBQUN6RCw4Q0FBOEQ7QUFzRTlELE1BQWEsU0FBVSxTQUFRLDRCQUFzQjtJQU1uRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQTJDRztJQUNILFlBQ0UsS0FBZ0IsRUFDaEIsSUFBWSxFQUNaLGdCQUFnQztRQUVoQyxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRW5CLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUN6QyxJQUFJLENBQUMsYUFBYSxHQUFHLGdCQUFnQixDQUFDLGFBQWEsQ0FBQztRQUNwRCxJQUFJLENBQUMsYUFBYSxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQztRQUUzQyxNQUFNLFFBQVEsR0FBRztZQUNmLEdBQUcsRUFBRSxnQkFBZ0IsQ0FBQyxHQUFHLElBQUksT0FBTztZQUNwQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsUUFBUSxJQUFJLENBQUM7WUFDeEMsa0JBQWtCLEVBQUUsZ0JBQWdCLENBQUMsa0JBQWtCLElBQUksS0FBSztZQUNoRSxzQkFBc0IsRUFBRSxnQkFBZ0IsQ0FBQyxzQkFBc0IsSUFBSSxDQUFDO1lBQ3BFLGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhLElBQUksS0FBSztZQUN0RCxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDakMsaUJBQWlCLEVBQUUsZ0JBQWdCLENBQUMsaUJBQWlCLElBQUksS0FBSztZQUM5RCwwQkFBMEIsRUFDeEIsZ0JBQWdCLENBQUMsMEJBQTBCLElBQUksSUFBSTtZQUNyRCwwQkFBMEIsRUFDeEIsZ0JBQWdCLENBQUMsMEJBQTBCLElBQUksSUFBSTtZQUNyRCxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFFLGdCQUFnQixDQUFDLFlBQVksSUFBSSxnQkFBZ0I7Z0JBQ3ZELFdBQVcsRUFDVCxnQkFBZ0IsQ0FBQyxZQUFZLElBQUksY0FBYztvQkFDN0MsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLFdBQVc7b0JBQzlCLENBQUMsQ0FBQyxTQUFTO2FBQ2hCO1NBQ0YsQ0FBQztRQUVGLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxzQ0FBaUIsQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFO1lBQ2xFLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJO1lBQzNCLGlCQUFpQixFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSTtZQUMxQyxRQUFRLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRO1lBQ3JDLEdBQUcsUUFBUTtTQUNaLENBQUMsQ0FBQztRQUVILFVBQVU7UUFDVixJQUFJLENBQUMsRUFBRSxHQUFHLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztRQUM5QixNQUFNLHNDQUFzQyxHQUFHLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FDdEUsSUFBSSxFQUNKLElBQUksRUFDSjtZQUNFLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFO1NBQzNCLENBQ0YsQ0FBQztRQUNGLHNDQUFzQyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0E2Qkc7SUFDSCxtQkFBbUIsQ0FBQyxLQUF3QjtRQUMxQyxPQUFPLElBQUksbUJBQVEsQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFO1lBQ3RDLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsR0FBRyxLQUFLO1NBQ1QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUF6SUgsOEJBMElDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRodWJOYW1lc3BhY2UgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL2V2ZW50aHViLW5hbWVzcGFjZVwiO1xuaW1wb3J0IHsgUmVzb3VyY2VHcm91cCB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvcmVzb3VyY2UtZ3JvdXBcIjtcbmltcG9ydCAqIGFzIGNka3RmIGZyb20gXCJjZGt0ZlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IEluc3RhbmNlLCBCYXNlSW5zdGFuY2VQcm9wcyB9IGZyb20gXCIuL2luc3RhbmNlXCI7XG5pbXBvcnQgeyBBenVyZVJlc291cmNlV2l0aEFsZXJ0IH0gZnJvbSBcIi4uLy4uL2NvcmUtYXp1cmUvbGliXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmFtZXNwYWNlUHJvcHMge1xuICAvKipcbiAgICogVGhlIEF6dXJlIFJlc291cmNlIEdyb3VwIGluIHdoaWNoIHRvIGNyZWF0ZSB0aGUgRXZlbnRIdWIgTmFtZXNwYWNlLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVzb3VyY2VHcm91cDogUmVzb3VyY2VHcm91cDtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBFdmVudEh1YiBOYW1lc3BhY2UgdG8gY3JlYXRlLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogRGVmaW5lcyB3aGljaCB0aWVyIHRvIHVzZS4gVmFsaWQgb3B0aW9ucyBhcmUgQmFzaWMsIFN0YW5kYXJkLCBhbmQgUHJlbWl1bS5cbiAgICogQGRlZmF1bHQgXCJCYXNpY1wiXG4gICAqL1xuICByZWFkb25seSBza3U/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIENhcGFjaXR5IC8gVGhyb3VnaHB1dCBVbml0cyBmb3IgYSBTdGFuZGFyZCBTS1UgbmFtZXNwYWNlLlxuICAgKiBAZGVmYXVsdCAyXG4gICAqL1xuICByZWFkb25seSBjYXBhY2l0eT86IG51bWJlcjtcbiAgLyoqXG4gICAqIFNwZWNpZmllcyBpZiB0aGUgRXZlbnRIdWIgTmFtZXNwYWNlIHNob3VsZCBiZSBBdXRvIEluZmxhdGUgZW5hYmxlZC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9JbmZsYXRlRW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG1heGltdW0gbnVtYmVyIG9mIHRocm91Z2hwdXQgdW5pdHMgd2hlbiBBdXRvIEluZmxhdGUgaXMgRW5hYmxlZC4gVmFsaWQgdmFsdWVzIHJhbmdlIGZyb20gMSAtIDIwLlxuICAgKiBAZGVmYXVsdCAyXG4gICAqL1xuICByZWFkb25seSBtYXhpbXVtVGhyb3VnaHB1dFVuaXRzPzogbnVtYmVyO1xuICAvKipcbiAgICogU3BlY2lmaWVzIGlmIHRoZSBFdmVudEh1YiBOYW1lc3BhY2Ugc2hvdWxkIGJlIFpvbmUgUmVkdW5kYW50IChjcmVhdGVkIGFjcm9zcyBBdmFpbGFiaWxpdHkgWm9uZXMpLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSB6b25lUmVkdW5kYW50PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSB0YWdzIHRvIGFzc2lnbiB0byB0aGUgS2V5IFZhdWx0LlxuICAgKi9cbiAgcmVhZG9ubHkgdGFncz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBzdXBwb3J0ZWQgVExTIHZlcnNpb24gZm9yIHRoaXMgRXZlbnRIdWIgTmFtZXNwYWNlLiBWYWxpZCB2YWx1ZXMgYXJlOiAxLjAsIDEuMSBhbmQgMS4yLlxuICAgKiBAZGVmYXVsdCBcIjEuMlwiXG4gICAqL1xuICByZWFkb25seSBtaW5pbXVtVGxzVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIElzIHB1YmxpYyBuZXR3b3JrIGFjY2VzcyBlbmFibGVkIGZvciB0aGUgRXZlbnRIdWIgTmFtZXNwYWNlP1xuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBwdWJsaWNOZXR3b3JrQWNjZXNzRW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJcyBTQVMgYXV0aGVudGljYXRpb24gZW5hYmxlZCBmb3IgdGhlIEV2ZW50SHViIE5hbWVzcGFjZT8gTm9ydGggQ2VudHJhbCBVUyBOb3Qgc3VwcG9ydGVkLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgbG9jYWxBdXRoZW50aWNhdGlvbkVuYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSB0eXBlIG9mIE1hbmFnZWQgU2VydmljZSBJZGVudGl0eSB0aGF0IHNob3VsZCBiZSBjb25maWd1cmVkIG9uIHRoaXMgRXZlbnQgSHViIE5hbWVzcGFjZS4gUG9zc2libGUgdmFsdWVzIGFyZSBTeXN0ZW1Bc3NpZ25lZCBvciBVc2VyQXNzaWduZWQuXG4gICAqIEBkZWZhdWx0IFwiU3lzdGVtQXNzaWduZWRcIlxuICAgKi9cbiAgcmVhZG9ubHkgaWRlbnRpdHlUeXBlPzogc3RyaW5nO1xuICAvKipcbiAgICogU3BlY2lmaWVzIGEgbGlzdCBvZiBVc2VyIEFzc2lnbmVkIE1hbmFnZWQgSWRlbnRpdHkgSURzIHRvIGJlIGFzc2lnbmVkIHRvIHRoaXMgRXZlbnRIdWIgbmFtZXNwYWNlLlxuICAgKi9cbiAgcmVhZG9ubHkgaWRlbnRpdHlJZHM/OiBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVE9ETzogbmV0d29ya19ydWxlc2V0c1xuICAgKi9cbn1cblxuZXhwb3J0IGNsYXNzIE5hbWVzcGFjZSBleHRlbmRzIEF6dXJlUmVzb3VyY2VXaXRoQWxlcnQge1xuICByZWFkb25seSBlaE5hbWVzcGFjZVByb3BzOiBOYW1lc3BhY2VQcm9wcztcbiAgcHVibGljIHJlc291cmNlR3JvdXA6IFJlc291cmNlR3JvdXA7XG4gIHB1YmxpYyBpZDogc3RyaW5nO1xuICByZWFkb25seSBuYW1lc3BhY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdHMgYSBuZXcgRXZlbnQgSHViIE5hbWVzcGFjZS5cbiAgICpcbiAgICogVGhpcyBjbGFzcyBjcmVhdGVzIGFuIEF6dXJlIEV2ZW50IEh1YiBOYW1lc3BhY2UsIHdoaWNoIHNlcnZlcyBhcyBhIGNvbnRhaW5lciBmb3IgYWxsIG1lc3NhZ2luZyBjb21wb25lbnRzLlxuICAgKiBOYW1lc3BhY2VzIHByb3ZpZGUgYSBzY29waW5nIGNvbnRhaW5lciBmb3IgRXZlbnQgSHViIHJlc291cmNlcyB3aXRoaW4gYSBzcGVjaWZpYyByZWdpb24sIHdoaWNoIGNhbiBiZSBmdXJ0aGVyXG4gICAqIGNvbnRyb2xsZWQgYW5kIG1hbmFnZWQgdXNpbmcgdGhlIHByb3ZpZGVkIHNldHRpbmdzLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBUaGUgc2NvcGUgaW4gd2hpY2ggdG8gZGVmaW5lIHRoaXMgY29uc3RydWN0LCB0eXBpY2FsbHkgcmVwcmVzZW50aW5nIHRoZSBDbG91ZCBEZXZlbG9wbWVudCBLaXQgKENESykgc3RhY2suXG4gICAqIEBwYXJhbSBuYW1lIC0gVGhlIHVuaXF1ZSBuYW1lIGZvciB0aGlzIGluc3RhbmNlIG9mIHRoZSBFdmVudCBIdWIgTmFtZXNwYWNlLlxuICAgKiBAcGFyYW0gZWhOYW1lc3BhY2VQcm9wcyAtIFRoZSBwcm9wZXJ0aWVzIGZvciBjb25maWd1cmluZyB0aGUgRXZlbnQgSHViIE5hbWVzcGFjZS4gVGhlc2UgcHJvcGVydGllcyBpbmNsdWRlOlxuICAgKiAgICAgICAgICAgICAgICAtIGByZXNvdXJjZUdyb3VwYDogUmVxdWlyZWQuIFRoZSBBenVyZSBSZXNvdXJjZSBHcm91cCBpbiB3aGljaCB0aGUgbmFtZXNwYWNlIHdpbGwgYmUgY3JlYXRlZC5cbiAgICogICAgICAgICAgICAgICAgLSBgbmFtZWA6IFJlcXVpcmVkLiBUaGUgbmFtZSBvZiB0aGUgRXZlbnQgSHViIE5hbWVzcGFjZSB0byBjcmVhdGUuXG4gICAqICAgICAgICAgICAgICAgIC0gYHNrdWA6IE9wdGlvbmFsLiBUaGUgU0tVIHRpZXIgb2YgdGhlIG5hbWVzcGFjZSAoQmFzaWMsIFN0YW5kYXJkLCBQcmVtaXVtKS4gRGVmYXVsdHMgdG8gXCJCYXNpY1wiLlxuICAgKiAgICAgICAgICAgICAgICAtIGBjYXBhY2l0eWA6IE9wdGlvbmFsLiBTcGVjaWZpZXMgdGhlIHRocm91Z2hwdXQgdW5pdHMgZm9yIGEgU3RhbmRhcmQgU0tVIG5hbWVzcGFjZS4gRGVmYXVsdHMgdG8gMi5cbiAgICogICAgICAgICAgICAgICAgLSBgYXV0b0luZmxhdGVFbmFibGVkYDogT3B0aW9uYWwuIEVuYWJsZXMgb3IgZGlzYWJsZXMgQXV0byBJbmZsYXRlLiBEZWZhdWx0cyB0byBmYWxzZS5cbiAgICogICAgICAgICAgICAgICAgLSBgbWF4aW11bVRocm91Z2hwdXRVbml0c2A6IE9wdGlvbmFsLiBUaGUgbWF4aW11bSBudW1iZXIgb2YgdGhyb3VnaHB1dCB1bml0cyB3aGVuIEF1dG8gSW5mbGF0ZSBpcyBlbmFibGVkLiBEZWZhdWx0cyB0byAyLlxuICAgKiAgICAgICAgICAgICAgICAtIGB6b25lUmVkdW5kYW50YDogT3B0aW9uYWwuIFNwZWNpZmllcyBpZiB0aGUgbmFtZXNwYWNlIHNob3VsZCBiZSB6b25lIHJlZHVuZGFudC4gRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICogICAgICAgICAgICAgICAgLSBgdGFnc2A6IE9wdGlvbmFsLiBUYWdzIGZvciByZXNvdXJjZSBtYW5hZ2VtZW50IGFuZCBjYXRlZ29yaXphdGlvbi5cbiAgICogICAgICAgICAgICAgICAgLSBgbWluaW11bVRsc1ZlcnNpb25gOiBPcHRpb25hbC4gU3BlY2lmaWVzIHRoZSBtaW5pbXVtIHN1cHBvcnRlZCBUTFMgdmVyc2lvbi4gRGVmYXVsdHMgdG8gXCIxLjJcIi5cbiAgICogICAgICAgICAgICAgICAgLSBgcHVibGljTmV0d29ya0FjY2Vzc0VuYWJsZWRgOiBPcHRpb25hbC4gU3BlY2lmaWVzIGlmIHB1YmxpYyBuZXR3b3JrIGFjY2VzcyBpcyBlbmFibGVkLiBEZWZhdWx0cyB0byB0cnVlLlxuICAgKiAgICAgICAgICAgICAgICAtIGBsb2NhbEF1dGhlbnRpY2F0aW9uRW5hYmxlZGA6IE9wdGlvbmFsLiBTcGVjaWZpZXMgaWYgU0FTIGF1dGhlbnRpY2F0aW9uIGlzIGVuYWJsZWQuIERlZmF1bHRzIHRvIGZhbHNlLlxuICAgKiAgICAgICAgICAgICAgICAtIGBpZGVudGl0eVR5cGVgOiBPcHRpb25hbC4gVGhlIHR5cGUgb2YgTWFuYWdlZCBTZXJ2aWNlIElkZW50aXR5LiBEZWZhdWx0cyB0byBcIlN5c3RlbUFzc2lnbmVkXCIuXG4gICAqICAgICAgICAgICAgICAgIC0gYGlkZW50aXR5SWRzYDogT3B0aW9uYWwuIEEgbGlzdCBvZiBVc2VyIEFzc2lnbmVkIE1hbmFnZWQgSWRlbnRpdHkgSURzLlxuICAgKlxuICAgKiBFeGFtcGxlIHVzYWdlOlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIGNvbnN0IGV2ZW50SHViTmFtZXNwYWNlID0gbmV3IE5hbWVzcGFjZSh0aGlzLCAnbXlOYW1lc3BhY2UnLCB7XG4gICAqICAgcmVzb3VyY2VHcm91cDogcmVzb3VyY2VHcm91cCxcbiAgICogICBuYW1lOiAnbXlFdmVudEh1Yk5hbWVzcGFjZScsXG4gICAqICAgc2t1OiAnU3RhbmRhcmQnLFxuICAgKiAgIGNhcGFjaXR5OiA0LFxuICAgKiAgIGF1dG9JbmZsYXRlRW5hYmxlZDogdHJ1ZSxcbiAgICogICBtYXhpbXVtVGhyb3VnaHB1dFVuaXRzOiAxMCxcbiAgICogICB6b25lUmVkdW5kYW50OiBmYWxzZSxcbiAgICogICB0YWdzOiB7XG4gICAqICAgICBkZXBhcnRtZW50OiAnSVQnXG4gICAqICAgfSxcbiAgICogICBtaW5pbXVtVGxzVmVyc2lvbjogJzEuMicsXG4gICAqICAgcHVibGljTmV0d29ya0FjY2Vzc0VuYWJsZWQ6IGZhbHNlLFxuICAgKiAgIGxvY2FsQXV0aGVudGljYXRpb25FbmFibGVkOiB0cnVlLFxuICAgKiAgIGlkZW50aXR5VHlwZTogJ1N5c3RlbUFzc2lnbmVkJ1xuICAgKiB9KTtcbiAgICogYGBgXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICBlaE5hbWVzcGFjZVByb3BzOiBOYW1lc3BhY2VQcm9wcyxcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIG5hbWUpO1xuXG4gICAgdGhpcy5laE5hbWVzcGFjZVByb3BzID0gZWhOYW1lc3BhY2VQcm9wcztcbiAgICB0aGlzLnJlc291cmNlR3JvdXAgPSBlaE5hbWVzcGFjZVByb3BzLnJlc291cmNlR3JvdXA7XG4gICAgdGhpcy5uYW1lc3BhY2VOYW1lID0gZWhOYW1lc3BhY2VQcm9wcy5uYW1lO1xuXG4gICAgY29uc3QgZGVmYXVsdHMgPSB7XG4gICAgICBza3U6IGVoTmFtZXNwYWNlUHJvcHMuc2t1IHx8IFwiQmFzaWNcIixcbiAgICAgIGNhcGFjaXR5OiBlaE5hbWVzcGFjZVByb3BzLmNhcGFjaXR5IHx8IDIsXG4gICAgICBhdXRvSW5mbGF0ZUVuYWJsZWQ6IGVoTmFtZXNwYWNlUHJvcHMuYXV0b0luZmxhdGVFbmFibGVkIHx8IGZhbHNlLFxuICAgICAgbWF4aW11bVRocm91Z2hwdXRVbml0czogZWhOYW1lc3BhY2VQcm9wcy5tYXhpbXVtVGhyb3VnaHB1dFVuaXRzIHx8IDIsXG4gICAgICB6b25lUmVkdW5kYW50OiBlaE5hbWVzcGFjZVByb3BzLnpvbmVSZWR1bmRhbnQgfHwgZmFsc2UsXG4gICAgICB0YWdzOiBlaE5hbWVzcGFjZVByb3BzLnRhZ3MgfHwge30sXG4gICAgICBtaW5pbXVtVGxzVmVyc2lvbjogZWhOYW1lc3BhY2VQcm9wcy5taW5pbXVtVGxzVmVyc2lvbiB8fCBcIjEuMlwiLFxuICAgICAgcHVibGljTmV0d29ya0FjY2Vzc0VuYWJsZWQ6XG4gICAgICAgIGVoTmFtZXNwYWNlUHJvcHMucHVibGljTmV0d29ya0FjY2Vzc0VuYWJsZWQgfHwgdHJ1ZSxcbiAgICAgIGxvY2FsQXV0aGVudGljYXRpb25FbmFibGVkOlxuICAgICAgICBlaE5hbWVzcGFjZVByb3BzLmxvY2FsQXV0aGVudGljYXRpb25FbmFibGVkIHx8IHRydWUsXG4gICAgICBpZGVudGl0eToge1xuICAgICAgICB0eXBlOiBlaE5hbWVzcGFjZVByb3BzLmlkZW50aXR5VHlwZSB8fCBcIlN5c3RlbUFzc2lnbmVkXCIsXG4gICAgICAgIGlkZW50aXR5SWRzOlxuICAgICAgICAgIGVoTmFtZXNwYWNlUHJvcHMuaWRlbnRpdHlUeXBlID09IFwiVXNlckFzc2lnbmVkXCJcbiAgICAgICAgICAgID8gZWhOYW1lc3BhY2VQcm9wcy5pZGVudGl0eUlkc1xuICAgICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICB9LFxuICAgIH07XG5cbiAgICBjb25zdCBldmVudGh1Yk5hbWVzcGNlID0gbmV3IEV2ZW50aHViTmFtZXNwYWNlKHRoaXMsIFwiZWhuYW1lc3BhY2VcIiwge1xuICAgICAgbmFtZTogZWhOYW1lc3BhY2VQcm9wcy5uYW1lLFxuICAgICAgcmVzb3VyY2VHcm91cE5hbWU6IHRoaXMucmVzb3VyY2VHcm91cC5uYW1lLFxuICAgICAgbG9jYXRpb246IHRoaXMucmVzb3VyY2VHcm91cC5sb2NhdGlvbixcbiAgICAgIC4uLmRlZmF1bHRzLFxuICAgIH0pO1xuXG4gICAgLy8gT3V0cHV0c1xuICAgIHRoaXMuaWQgPSBldmVudGh1Yk5hbWVzcGNlLmlkO1xuICAgIGNvbnN0IGNka3RmVGVycmFmb3JtT3V0cHV0RXZlbnRodWJOYW1lc3BjZUlkID0gbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dChcbiAgICAgIHRoaXMsXG4gICAgICBcImlkXCIsXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiBldmVudGh1Yk5hbWVzcGNlLmlkLFxuICAgICAgfSxcbiAgICApO1xuICAgIGNka3RmVGVycmFmb3JtT3V0cHV0RXZlbnRodWJOYW1lc3BjZUlkLm92ZXJyaWRlTG9naWNhbElkKFwiaWRcIik7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhbmQgYWRkcyBhbiBFdmVudCBIdWIgaW5zdGFuY2UgdG8gdGhlIGN1cnJlbnQgbmFtZXNwYWNlLlxuICAgKlxuICAgKiBUaGlzIG1ldGhvZCBzZXRzIHVwIGEgbmV3IEV2ZW50IEh1YiBpbnN0YW5jZSB3aXRoaW4gdGhlIG5hbWVzcGFjZSBkZWZpbmVkIGJ5IHRoaXMgY2xhc3MuIEFuIEV2ZW50IEh1YiBpbnN0YW5jZVxuICAgKiBzZXJ2ZXMgYXMgYSBjb250YWluZXIgdGhhdCBwcm9jZXNzZXMgYW5kIHN0b3JlcyBldmVudHMuIFRoaXMgbWV0aG9kIGZhY2lsaXRhdGVzIHRoZSBzZXR1cCBvZiBtdWx0aXBsZSBFdmVudCBIdWJzXG4gICAqIHdpdGhpbiBhIHNpbmdsZSBuYW1lc3BhY2UsIGVhY2ggY29uZmlndXJlZCBhY2NvcmRpbmcgdG8gdGhlIHNwZWNpZmllZCBwcm9wZXJ0aWVzLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgLSBUaGUgcHJvcGVydGllcyBmb3IgY29uZmlndXJpbmcgdGhlIG5ldyBFdmVudCBIdWIgaW5zdGFuY2UuIFRoZXNlIHByb3BlcnRpZXMgZXh0ZW5kIGBCYXNlSW5zdGFuY2VQcm9wc2AsIHdoaWNoIGluY2x1ZGU6XG4gICAqICAgICAgICAgICAgICAgIC0gYG5hbWVgOiBSZXF1aXJlZC4gVGhlIG5hbWUgb2YgdGhlIEV2ZW50IEh1YiBpbnN0YW5jZS5cbiAgICogICAgICAgICAgICAgICAgLSBgcGFydGl0aW9uQ291bnRgOiBPcHRpb25hbC4gVGhlIG51bWJlciBvZiBwYXJ0aXRpb25zIGluIHRoZSBFdmVudCBIdWIuIERlZmF1bHQgaXMgMi5cbiAgICogICAgICAgICAgICAgICAgLSBgbWVzc2FnZVJldGVudGlvbmA6IE9wdGlvbmFsLiBUaGUgbnVtYmVyIG9mIGRheXMgdG8gcmV0YWluIG1lc3NhZ2VzIGluIHRoZSBFdmVudCBIdWIuIERlZmF1bHQgaXMgMS5cbiAgICogICAgICAgICAgICAgICAgLSBgc3RhdHVzYDogT3B0aW9uYWwuIFRoZSBvcGVyYXRpb25hbCBzdGF0dXMgb2YgdGhlIEV2ZW50IEh1YiAoQWN0aXZlLCBEaXNhYmxlZCwgU2VuZERpc2FibGVkKS4gRGVmYXVsdCBpcyBcIkFjdGl2ZVwiLlxuICAgKiAgICAgICAgICAgICAgICBPdGhlciBwcm9wZXJ0aWVzIGZyb20gYEJhc2VJbnN0YW5jZVByb3BzYCBjYW4gYWxzbyBiZSBwYXNzZWQgYW5kIHdpbGwgYmUgdXNlZCBpbiB0aGUgY3JlYXRpb24gb2YgdGhlIEV2ZW50IEh1Yi5cbiAgICpcbiAgICogQHJldHVybnMgQW4gaW5zdGFuY2Ugb2YgdGhlIEV2ZW50IEh1YiAoYEluc3RhbmNlYCBjbGFzcyksIGNvbmZpZ3VyZWQgd2l0aCB0aGUgc3BlY2lmaWVkIHByb3BlcnRpZXMuXG4gICAqXG4gICAqIEV4YW1wbGUgdXNhZ2U6XG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogY29uc3QgZXZlbnRIdWIgPSBuYW1lc3BhY2UuYWRkRXZlbnRodWJJbnN0YW5jZSh7XG4gICAqICAgbmFtZTogJ215RXZlbnRIdWInLFxuICAgKiAgIHBhcnRpdGlvbkNvdW50OiA0LFxuICAgKiAgIG1lc3NhZ2VSZXRlbnRpb246IDcsXG4gICAqICAgc3RhdHVzOiAnQWN0aXZlJ1xuICAgKiB9KTtcbiAgICogYGBgXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIEVuc3VyZSB0aGF0IHRoZSBuYW1lc3BhY2UgaGFzIHN1ZmZpY2llbnQgY2FwYWNpdHkgYW5kIGNvbmZpZ3VyYXRpb24gdG8gc3VwcG9ydCB0aGUgcHJvcGVydGllcyBvZiB0aGUgRXZlbnQgSHViIGJlaW5nIGNyZWF0ZWQsXG4gICAqIGVzcGVjaWFsbHkgaW4gdGVybXMgb2YgcGFydGl0aW9uIGNvdW50IGFuZCB0aHJvdWdocHV0IHVuaXRzIGlmIGFwcGxpY2FibGUuXG4gICAqL1xuICBhZGRFdmVudGh1Ykluc3RhbmNlKHByb3BzOiBCYXNlSW5zdGFuY2VQcm9wcykge1xuICAgIHJldHVybiBuZXcgSW5zdGFuY2UodGhpcywgXCJlaGluc3RhbmNlXCIsIHtcbiAgICAgIHJlc291cmNlR3JvdXA6IHRoaXMucmVzb3VyY2VHcm91cCxcbiAgICAgIG5hbWVzcGFjZU5hbWU6IHRoaXMubmFtZXNwYWNlTmFtZSxcbiAgICAgIC4uLnByb3BzLFxuICAgIH0pO1xuICB9XG59XG4iXX0=