@aws-solutions-constructs/aws-alb-lambda 1.129.0 → 1.130.0

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.
package/.jsii CHANGED
@@ -8,15 +8,15 @@
8
8
  "url": "https://aws.amazon.com"
9
9
  },
10
10
  "dependencies": {
11
- "@aws-cdk/aws-certificatemanager": "1.129.0",
12
- "@aws-cdk/aws-ec2": "1.129.0",
13
- "@aws-cdk/aws-elasticloadbalancingv2": "1.129.0",
14
- "@aws-cdk/aws-iam": "1.129.0",
15
- "@aws-cdk/aws-lambda": "1.129.0",
16
- "@aws-cdk/aws-lambda-event-sources": "1.129.0",
17
- "@aws-cdk/aws-s3": "1.129.0",
18
- "@aws-cdk/core": "1.129.0",
19
- "@aws-solutions-constructs/core": "1.129.0",
11
+ "@aws-cdk/aws-certificatemanager": "1.130.0",
12
+ "@aws-cdk/aws-ec2": "1.130.0",
13
+ "@aws-cdk/aws-elasticloadbalancingv2": "1.130.0",
14
+ "@aws-cdk/aws-iam": "1.130.0",
15
+ "@aws-cdk/aws-lambda": "1.130.0",
16
+ "@aws-cdk/aws-lambda-event-sources": "1.130.0",
17
+ "@aws-cdk/aws-s3": "1.130.0",
18
+ "@aws-cdk/core": "1.130.0",
19
+ "@aws-solutions-constructs/core": "1.130.0",
20
20
  "constructs": "^3.2.0"
21
21
  },
22
22
  "dependencyClosure": {
@@ -1452,7 +1452,7 @@
1452
1452
  },
1453
1453
  "description": "CDK Constructs for Application Load Balancer to AWS Lambda integration",
1454
1454
  "homepage": "https://github.com/awslabs/aws-solutions-constructs.git",
1455
- "jsiiVersion": "1.46.0 (build cd08c55)",
1455
+ "jsiiVersion": "1.47.0 (build 86d2c33)",
1456
1456
  "keywords": [
1457
1457
  "aws",
1458
1458
  "cdk",
@@ -1509,7 +1509,7 @@
1509
1509
  "initializer": {
1510
1510
  "locationInModule": {
1511
1511
  "filename": "lib/index.ts",
1512
- "line": 123
1512
+ "line": 124
1513
1513
  },
1514
1514
  "parameters": [
1515
1515
  {
@@ -1535,7 +1535,7 @@
1535
1535
  "kind": "class",
1536
1536
  "locationInModule": {
1537
1537
  "filename": "lib/index.ts",
1538
- "line": 117
1538
+ "line": 118
1539
1539
  },
1540
1540
  "name": "AlbToLambda",
1541
1541
  "properties": [
@@ -1543,7 +1543,7 @@
1543
1543
  "immutable": true,
1544
1544
  "locationInModule": {
1545
1545
  "filename": "lib/index.ts",
1546
- "line": 120
1546
+ "line": 121
1547
1547
  },
1548
1548
  "name": "lambdaFunction",
1549
1549
  "type": {
@@ -1554,7 +1554,7 @@
1554
1554
  "immutable": true,
1555
1555
  "locationInModule": {
1556
1556
  "filename": "lib/index.ts",
1557
- "line": 121
1557
+ "line": 122
1558
1558
  },
1559
1559
  "name": "listener",
1560
1560
  "type": {
@@ -1565,7 +1565,7 @@
1565
1565
  "immutable": true,
1566
1566
  "locationInModule": {
1567
1567
  "filename": "lib/index.ts",
1568
- "line": 118
1568
+ "line": 119
1569
1569
  },
1570
1570
  "name": "loadBalancer",
1571
1571
  "type": {
@@ -1576,7 +1576,7 @@
1576
1576
  "immutable": true,
1577
1577
  "locationInModule": {
1578
1578
  "filename": "lib/index.ts",
1579
- "line": 119
1579
+ "line": 120
1580
1580
  },
1581
1581
  "name": "vpc",
1582
1582
  "type": {
@@ -1593,7 +1593,7 @@
1593
1593
  "kind": "interface",
1594
1594
  "locationInModule": {
1595
1595
  "filename": "lib/index.ts",
1596
- "line": 22
1596
+ "line": 23
1597
1597
  },
1598
1598
  "name": "AlbToLambdaProps",
1599
1599
  "properties": [
@@ -1607,7 +1607,7 @@
1607
1607
  "immutable": true,
1608
1608
  "locationInModule": {
1609
1609
  "filename": "lib/index.ts",
1610
- "line": 114
1610
+ "line": 115
1611
1611
  },
1612
1612
  "name": "publicApi",
1613
1613
  "type": {
@@ -1624,7 +1624,7 @@
1624
1624
  "immutable": true,
1625
1625
  "locationInModule": {
1626
1626
  "filename": "lib/index.ts",
1627
- "line": 108
1627
+ "line": 109
1628
1628
  },
1629
1629
  "name": "albLoggingBucketProps",
1630
1630
  "optional": true,
@@ -1641,7 +1641,7 @@
1641
1641
  "immutable": true,
1642
1642
  "locationInModule": {
1643
1643
  "filename": "lib/index.ts",
1644
- "line": 45
1644
+ "line": 46
1645
1645
  },
1646
1646
  "name": "existingLambdaObj",
1647
1647
  "optional": true,
@@ -1659,7 +1659,7 @@
1659
1659
  "immutable": true,
1660
1660
  "locationInModule": {
1661
1661
  "filename": "lib/index.ts",
1662
- "line": 38
1662
+ "line": 39
1663
1663
  },
1664
1664
  "name": "existingLoadBalancerObj",
1665
1665
  "optional": true,
@@ -1677,7 +1677,7 @@
1677
1677
  "immutable": true,
1678
1678
  "locationInModule": {
1679
1679
  "filename": "lib/index.ts",
1680
- "line": 94
1680
+ "line": 95
1681
1681
  },
1682
1682
  "name": "existingVpc",
1683
1683
  "optional": true,
@@ -1694,7 +1694,7 @@
1694
1694
  "immutable": true,
1695
1695
  "locationInModule": {
1696
1696
  "filename": "lib/index.ts",
1697
- "line": 51
1697
+ "line": 52
1698
1698
  },
1699
1699
  "name": "lambdaFunctionProps",
1700
1700
  "optional": true,
@@ -1712,7 +1712,7 @@
1712
1712
  "immutable": true,
1713
1713
  "locationInModule": {
1714
1714
  "filename": "lib/index.ts",
1715
- "line": 60
1715
+ "line": 61
1716
1716
  },
1717
1717
  "name": "listenerProps",
1718
1718
  "optional": true,
@@ -1730,7 +1730,7 @@
1730
1730
  "immutable": true,
1731
1731
  "locationInModule": {
1732
1732
  "filename": "lib/index.ts",
1733
- "line": 30
1733
+ "line": 31
1734
1734
  },
1735
1735
  "name": "loadBalancerProps",
1736
1736
  "optional": true,
@@ -1748,7 +1748,7 @@
1748
1748
  "immutable": true,
1749
1749
  "locationInModule": {
1750
1750
  "filename": "lib/index.ts",
1751
- "line": 101
1751
+ "line": 102
1752
1752
  },
1753
1753
  "name": "logAlbAccessLogs",
1754
1754
  "optional": true,
@@ -1766,7 +1766,7 @@
1766
1766
  "immutable": true,
1767
1767
  "locationInModule": {
1768
1768
  "filename": "lib/index.ts",
1769
- "line": 77
1769
+ "line": 78
1770
1770
  },
1771
1771
  "name": "ruleProps",
1772
1772
  "optional": true,
@@ -1784,7 +1784,7 @@
1784
1784
  "immutable": true,
1785
1785
  "locationInModule": {
1786
1786
  "filename": "lib/index.ts",
1787
- "line": 68
1787
+ "line": 69
1788
1788
  },
1789
1789
  "name": "targetProps",
1790
1790
  "optional": true,
@@ -1802,7 +1802,7 @@
1802
1802
  "immutable": true,
1803
1803
  "locationInModule": {
1804
1804
  "filename": "lib/index.ts",
1805
- "line": 86
1805
+ "line": 87
1806
1806
  },
1807
1807
  "name": "vpcProps",
1808
1808
  "optional": true,
@@ -1814,6 +1814,6 @@
1814
1814
  "symbolId": "lib/index:AlbToLambdaProps"
1815
1815
  }
1816
1816
  },
1817
- "version": "1.129.0",
1818
- "fingerprint": "cOvC49TD7hG9pKvIlfBU8uIZOidAX3iYTLR+6vslibY="
1817
+ "version": "1.130.0",
1818
+ "fingerprint": "PNnXKZoprOpLYGzK3hmGjH1bs2V97bGAdZ7BRrjlwN8="
1819
1819
  }
package/lib/index.js CHANGED
@@ -5,6 +5,7 @@ exports.AlbToLambda = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  const core_1 = require("@aws-cdk/core");
7
7
  const defaults = require("@aws-solutions-constructs/core");
8
+ const core_2 = require("@aws-solutions-constructs/core");
8
9
  class AlbToLambda extends core_1.Construct {
9
10
  constructor(scope, id, props) {
10
11
  var _b;
@@ -54,43 +55,33 @@ class AlbToLambda extends core_1.Construct {
54
55
  lambdaFunctionProps: props.lambdaFunctionProps,
55
56
  vpc: this.vpc,
56
57
  });
58
+ let newListener;
57
59
  if (this.loadBalancer.listeners.length === 0) {
58
- // This is a new listener, we need to create it along with the default target
59
- const newTargetGroup = defaults.CreateLambdaTargetGroup(this, `tg${this.loadBalancer.listeners.length + 1}`, this.lambdaFunction, props.targetProps);
60
- this.listener = defaults.AddListener(this, this.loadBalancer, newTargetGroup, props.listenerProps);
61
- // Testing occasionally caused a TargetGroup not found error, this
62
- // code ensures the Group will be complete before the Listener tries
63
- // to access it.
64
- const newListener = this.listener.node.defaultChild;
65
- const cfnTargetGroup = newTargetGroup.node.defaultChild;
66
- newListener.addDependsOn(cfnTargetGroup);
60
+ newListener = true;
67
61
  }
68
62
  else {
69
- // We're adding a target to an existing listener. If this.loadBalancer.listeners.length
70
- // is >0, then this.loadBalancer was set from existingLoadBalancer
71
- this.listener = GetActiveListener(this.loadBalancer.listeners);
72
- defaults.AddTarget(this, defaults.CreateLambdaTargetGroup(this, `tg${this.loadBalancer.listeners.length + 1}`, this.lambdaFunction, props.targetProps), this.listener, props.ruleProps);
63
+ newListener = false;
73
64
  }
74
- }
75
- }
76
- exports.AlbToLambda = AlbToLambda;
77
- _a = JSII_RTTI_SYMBOL_1;
78
- AlbToLambda[_a] = { fqn: "@aws-solutions-constructs/aws-alb-lambda.AlbToLambda", version: "1.129.0" };
79
- function GetActiveListener(listeners) {
80
- let listener;
81
- if (listeners.length === 1) {
82
- listener = listeners[0];
83
- }
84
- else {
85
- const correctListener = listeners.find(i => i.node.children[0].protocol === "HTTPS");
86
- if (correctListener) {
87
- listener = correctListener;
65
+ // If there's no listener, then we add one here
66
+ if (newListener) {
67
+ this.listener = defaults.AddListener(this, this.loadBalancer, props.listenerProps);
88
68
  }
89
69
  else {
90
- // This line should be unreachable
91
- throw new Error(`Two listeners in the ALB, but neither are HTTPS`);
70
+ this.listener = core_2.GetActiveListener(this.loadBalancer.listeners);
71
+ }
72
+ const newTargetGroup = defaults.AddLambdaTarget(this, `tg${this.loadBalancer.listeners.length + 1}`, this.listener, this.lambdaFunction, props.ruleProps, props.targetProps);
73
+ // this.listener needs to be set on the construct.
74
+ // could be above: else { defaults.GetActiveListener }
75
+ // do we then move that funcionality back into the construct (not the function). If so do
76
+ // we leave it in AddNewTarget or just do it here and pass the listener?
77
+ if (newListener && this.listener) {
78
+ const levelOneListener = this.listener.node.defaultChild;
79
+ const cfnTargetGroup = newTargetGroup.node.defaultChild;
80
+ levelOneListener.addDependsOn(cfnTargetGroup);
92
81
  }
93
82
  }
94
- return listener;
95
83
  }
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQWlCQSx3Q0FBMEM7QUFDMUMsMkRBQTJEO0FBOEIzRCxNQUFhLFdBQVksU0FBUSxnQkFBUztJQU14QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXVCOztRQUMvRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLFFBQVEsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFM0IsVUFBSSxLQUFLLENBQUMsYUFBYSwwQ0FBRSxlQUFlLEVBQUU7WUFDeEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxrR0FBa0csQ0FBQyxDQUFDO1NBQ3JIO1FBRUQsSUFDRSxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsSUFBSSxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLHVCQUF1QixDQUFDO2VBQ3hILENBQUMsS0FBSyxDQUFDLGFBQWEsRUFDdkI7WUFDQSxNQUFNLElBQUksS0FBSyxDQUNiLG9KQUFvSixDQUNySixDQUFDO1NBQ0g7UUFFRCxJQUNFLENBQUMsQ0FBQyxLQUFLLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3pGLEtBQUssQ0FBQyxhQUFhLEVBQ25CO1lBQ0EsTUFBTSxJQUFJLEtBQUssQ0FDYiwrRUFBK0UsQ0FDaEYsQ0FBQztTQUNIO1FBRUQsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRTtZQUNqSCxN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QUNKLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxFQUM3QyxJQUFJLENBQUMsY0FBYyxFQUNuQixLQUFLLENBQUMsV0FBVyxDQUNsQixFQUNELElBQUksQ0FBQyxRQUFRLEVBQ2IsS0FBSyxDQUFDLFNBQVMsQ0FDaEIsQ0FBQztTQUNIO0lBQ0gsQ0FBQzs7QUF2SEgsa0NBd0hDOzs7QUFFRCxTQUFTLGlCQUFpQixDQUFDLFNBQW9DO0lBQzdELElBQUksUUFBaUMsQ0FBQztJQUV0QyxJQUFJLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFHO1FBQzNCLFFBQVEsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDekI7U0FBTTtRQUNMLE1BQU0sZUFBZSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQXFCLENBQUMsUUFBUSxLQUFLLE9BQU8sQ0FBQyxDQUFDO1FBQzFHLElBQUksZUFBZSxFQUFFO1lBQ25CLFFBQVEsR0FBRyxlQUFlLENBQUM7U0FDNUI7YUFBTTtZQUNMLGtDQUFrQztZQUNsQyxNQUFNLElBQUksS0FBSyxDQUFDLGlEQUFpRCxDQUFDLENBQUM7U0FDcEU7S0FDRjtJQUNELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICBDb3B5cmlnaHQgMjAyMSBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpLiBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4gKiAgd2l0aCB0aGUgTGljZW5zZS4gQSBjb3B5IG9mIHRoZSBMaWNlbnNlIGlzIGxvY2F0ZWQgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqICBvciBpbiB0aGUgJ2xpY2Vuc2UnIGZpbGUgYWNjb21wYW55aW5nIHRoaXMgZmlsZS4gVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICdBUyBJUycgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFU1xuICogIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zXG4gKiAgYW5kIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCAqIGFzIGVsYiBmcm9tIFwiQGF3cy1jZGsvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjJcIjtcbmltcG9ydCAqIGFzIGVjMiBmcm9tIFwiQGF3cy1jZGsvYXdzLWVjMlwiO1xuaW1wb3J0ICogYXMgczMgZnJvbSBcIkBhd3MtY2RrL2F3cy1zM1wiO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gXCJAYXdzLWNkay9hd3MtbGFtYmRhXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiQGF3cy1jZGsvY29yZVwiO1xuaW1wb3J0ICogYXMgZGVmYXVsdHMgZnJvbSBcIkBhd3Mtc29sdXRpb25zLWNvbnN0cnVjdHMvY29yZVwiO1xuaW1wb3J0IHsgQ2ZuTGlzdGVuZXIsIENmblRhcmdldEdyb3VwIH0gZnJvbSBcIkBhd3MtY2RrL2F3cy1lbGFzdGljbG9hZGJhbGFuY2luZ3YyXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWxiVG9MYW1iZGFQcm9wcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBsb2FkQmFsYW5jZXJQcm9wcz86IGVsYi5BcHBsaWNhdGlvbkxvYWRCYWxhbmNlclByb3BzIHwgYW55O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBleGlzdGluZ0xvYWRCYWxhbmNlck9iaj86IGVsYi5BcHBsaWNhdGlvbkxvYWRCYWxhbmNlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBleGlzdGluZ0xhbWJkYU9iaj86IGxhbWJkYS5GdW5jdGlvbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBsYW1iZGFGdW5jdGlvblByb3BzPzogbGFtYmRhLkZ1bmN0aW9uUHJvcHM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBsaXN0ZW5lclByb3BzPzogZWxiLkFwcGxpY2F0aW9uTGlzdGVuZXJQcm9wcyB8IGFueTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgdGFyZ2V0UHJvcHM/OiBlbGIuQXBwbGljYXRpb25UYXJnZXRHcm91cFByb3BzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHJ1bGVQcm9wcz86IGVsYi5BZGRSdWxlUHJvcHM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgdnBjUHJvcHM/OiBlYzIuVnBjUHJvcHM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBleGlzdGluZ1ZwYz86IGVjMi5JVnBjO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbG9nQWxiQWNjZXNzTG9ncz86IGJvb2xlYW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYWxiTG9nZ2luZ0J1Y2tldFByb3BzPzogczMuQnVja2V0UHJvcHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHB1YmxpY0FwaTogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNsYXNzIEFsYlRvTGFtYmRhIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIHJlYWRvbmx5IGxvYWRCYWxhbmNlcjogZWxiLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyO1xuICBwdWJsaWMgcmVhZG9ubHkgdnBjOiBlYzIuSVZwYztcbiAgcHVibGljIHJlYWRvbmx5IGxhbWJkYUZ1bmN0aW9uOiBsYW1iZGEuRnVuY3Rpb247XG4gIHB1YmxpYyByZWFkb25seSBsaXN0ZW5lcjogZWxiLkFwcGxpY2F0aW9uTGlzdGVuZXI7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEFsYlRvTGFtYmRhUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIGRlZmF1bHRzLkNoZWNrUHJvcHMocHJvcHMpO1xuXG4gICAgaWYgKHByb3BzLmxpc3RlbmVyUHJvcHM/LmNlcnRpZmljYXRlQXJucykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdjZXJ0aWZpY2F0ZUFybnMgaXMgZGVwcmVjYXRlZC4gUGxlYXNlIHN1cHBseSBjZXJ0aWZpY2F0ZXMgdXNpbmcgcHJvcHMubGlzdGVuZXJQcm9wcy5jZXJ0aWZpY2F0ZXMnKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICAocHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmogJiYgKHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqLmxpc3RlbmVycy5sZW5ndGggPT09IDApIHx8ICFwcm9wcy5leGlzdGluZ0xvYWRCYWxhbmNlck9iailcbiAgICAgICYmICFwcm9wcy5saXN0ZW5lclByb3BzXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiV2hlbiBhZGRpbmcgdGhlIGZpcnN0IGxpc3RlbmVyIGFuZCB0YXJnZXQgdG8gYSBsb2FkIGJhbGFuY2VyLCBsaXN0ZW5lclByb3BzIG11c3QgYmUgc3BlY2lmaWVkIGFuZCBpbmNsdWRlIGF0IGxlYXN0IGEgY2VydGlmaWNhdGUgb3IgcHJvdG9jb2w6IEhUVFBcIlxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICAoKHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqKSAmJiAocHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmoubGlzdGVuZXJzLmxlbmd0aCA+IDApKSAmJlxuICAgICAgcHJvcHMubGlzdGVuZXJQcm9wc1xuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIlRoaXMgbG9hZCBiYWxhbmNlciBhbHJlYWR5IGhhcyBhIGxpc3RlbmVyLCBsaXN0ZW5lclByb3BzIG1heSBub3QgYmUgc3BlY2lmaWVkXCJcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCgocHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmopICYmIChwcm9wcy5leGlzdGluZ0xvYWRCYWxhbmNlck9iai5saXN0ZW5lcnMubGVuZ3RoID4gMCkpICYmICFwcm9wcy5ydWxlUHJvcHMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgXCJXaGVuIGFkZGluZyBhIHNlY29uZCB0YXJnZXQgdG8gYW4gZXhpc3RpbmcgbGlzdGVuZXIsIHRoZXJlIG11c3QgYmUgcnVsZXMgcHJvdmlkZWRcIlxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBDaGVjayBjb25zdHJ1Y3Qgc3BlY2lmaWMgaW52YWxpZCBpbnB1dHNcbiAgICBpZiAocHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmogJiYgIXByb3BzLmV4aXN0aW5nVnBjKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiQW4gZXhpc3RpbmcgQUxCIGFscmVhZHkgZXhpc3RzIGluIGEgVlBDLCB0aGF0IFZQQyBtdXN0IGJlIHByb3ZpZGVkIGluIHByb3BzLmV4aXN0aW5nVnBjIGZvciB0aGUgcmVzdCBvZiB0aGUgY29uc3RydWN0IHRvIHVzZS5cIlxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoIHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqICkge1xuICAgICAgZGVmYXVsdHMucHJpbnRXYXJuaW5nKFxuICAgICAgICBcIlRoZSBwdWJsaWMvcHJpdmF0ZSBwcm9wZXJ0eSBvZiBhbiBleGlzbmcgQUxCIG11c3QgbWF0Y2ggdGhlIHByb3BzLnB1YmxpY0FwaSBzZXR0aW5nIHByb3ZpZGVkLlwiXG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIE9idGFpbiBWUEMgZm9yIGNvbnN0cnVjdCAoZXhpc3Rpbmcgb3IgY3JlYXRlZClcbiAgICAvLyBEZXRlcm1pbmUgYWxsIHRoZSByZXNvdXJjZXMgdG8gdXNlIChleGlzdGluZyBvciBsYXVuY2ggbmV3KVxuICAgIGlmIChwcm9wcy5leGlzdGluZ1ZwYykge1xuICAgICAgdGhpcy52cGMgPSBwcm9wcy5leGlzdGluZ1ZwYztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52cGMgPSBkZWZhdWx0cy5idWlsZFZwYyhzY29wZSwge1xuICAgICAgICBkZWZhdWx0VnBjUHJvcHM6IHByb3BzLnB1YmxpY0FwaVxuICAgICAgICAgID8gZGVmYXVsdHMuRGVmYXVsdFB1YmxpY1ByaXZhdGVWcGNQcm9wcygpXG4gICAgICAgICAgOiBkZWZhdWx0cy5EZWZhdWx0SXNvbGF0ZWRWcGNQcm9wcygpLFxuICAgICAgICB1c2VyVnBjUHJvcHM6IHByb3BzLnZwY1Byb3BzLFxuICAgICAgICBjb25zdHJ1Y3RWcGNQcm9wczogcHJvcHMucHVibGljQXBpXG4gICAgICAgICAgPyB1bmRlZmluZWRcbiAgICAgICAgICA6IHsgZW5hYmxlRG5zSG9zdG5hbWVzOiB0cnVlLCBlbmFibGVEbnNTdXBwb3J0OiB0cnVlLCB9LFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5sb2FkQmFsYW5jZXIgPSBkZWZhdWx0cy5PYnRhaW5BbGIoXG4gICAgICB0aGlzLFxuICAgICAgaWQsXG4gICAgICB0aGlzLnZwYyxcbiAgICAgIHByb3BzLnB1YmxpY0FwaSxcbiAgICAgIHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqLFxuICAgICAgcHJvcHMubG9hZEJhbGFuY2VyUHJvcHMsXG4gICAgICBwcm9wcy5sb2dBbGJBY2Nlc3NMb2dzLFxuICAgICAgcHJvcHMuYWxiTG9nZ2luZ0J1Y2tldFByb3BzXG4gICAgKTtcblxuICAgIC8vIE9idGFpbiBMYW1iZGEgZnVuY3Rpb24gZm9yIGNvbnN0cnVjdCAoZXhpc3Rpbmcgb3IgY3JlYXRlZClcbiAgICB0aGlzLmxhbWJkYUZ1bmN0aW9uID0gZGVmYXVsdHMuYnVpbGRMYW1iZGFGdW5jdGlvbih0aGlzLCB7XG4gICAgICBleGlzdGluZ0xhbWJkYU9iajogcHJvcHMuZXhpc3RpbmdMYW1iZGFPYmosXG4gICAgICBsYW1iZGFGdW5jdGlvblByb3BzOiBwcm9wcy5sYW1iZGFGdW5jdGlvblByb3BzLFxuICAgICAgdnBjOiB0aGlzLnZwYyxcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLmxvYWRCYWxhbmNlci5saXN0ZW5lcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAvLyBUaGlzIGlzIGEgbmV3IGxpc3RlbmVyLCB3ZSBuZWVkIHRvIGNyZWF0ZSBpdCBhbG9uZyB3aXRoIHRoZSBkZWZhdWx0IHRhcmdldFxuICAgICAgY29uc3QgbmV3VGFyZ2V0R3JvdXAgPSBkZWZhdWx0cy5DcmVhdGVMYW1iZGFUYXJnZXRHcm91cCh0aGlzLFxuICAgICAgICBgdGcke3RoaXMubG9hZEJhbGFuY2VyLmxpc3RlbmVycy5sZW5ndGggKyAxfWAsXG4gICAgICAgIHRoaXMubGFtYmRhRnVuY3Rpb24sXG4gICAgICAgIHByb3BzLnRhcmdldFByb3BzKTtcbiAgICAgIHRoaXMubGlzdGVuZXIgPSBkZWZhdWx0cy5BZGRMaXN0ZW5lcihcbiAgICAgICAgdGhpcyxcbiAgICAgICAgdGhpcy5sb2FkQmFsYW5jZXIsXG4gICAgICAgIG5ld1RhcmdldEdyb3VwLFxuICAgICAgICBwcm9wcy5saXN0ZW5lclByb3BzXG4gICAgICApO1xuICAgICAgLy8gVGVzdGluZyBvY2Nhc2lvbmFsbHkgY2F1c2VkIGEgVGFyZ2V0R3JvdXAgbm90IGZvdW5kIGVycm9yLCB0aGlzXG4gICAgICAvLyBjb2RlIGVuc3VyZXMgdGhlIEdyb3VwIHdpbGwgYmUgY29tcGxldGUgYmVmb3JlIHRoZSBMaXN0ZW5lciB0cmllc1xuICAgICAgLy8gdG8gYWNjZXNzIGl0LlxuICAgICAgY29uc3QgbmV3TGlzdGVuZXIgPSB0aGlzLmxpc3RlbmVyLm5vZGUuZGVmYXVsdENoaWxkIGFzIENmbkxpc3RlbmVyO1xuICAgICAgY29uc3QgY2ZuVGFyZ2V0R3JvdXAgPSBuZXdUYXJnZXRHcm91cC5ub2RlLmRlZmF1bHRDaGlsZCBhcyBDZm5UYXJnZXRHcm91cDtcbiAgICAgIG5ld0xpc3RlbmVyLmFkZERlcGVuZHNPbihjZm5UYXJnZXRHcm91cCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFdlJ3JlIGFkZGluZyBhIHRhcmdldCB0byBhbiBleGlzdGluZyBsaXN0ZW5lci4gSWYgdGhpcy5sb2FkQmFsYW5jZXIubGlzdGVuZXJzLmxlbmd0aFxuICAgICAgLy8gaXMgPjAsIHRoZW4gdGhpcy5sb2FkQmFsYW5jZXIgd2FzIHNldCBmcm9tIGV4aXN0aW5nTG9hZEJhbGFuY2VyXG4gICAgICB0aGlzLmxpc3RlbmVyID0gR2V0QWN0aXZlTGlzdGVuZXIodGhpcy5sb2FkQmFsYW5jZXIubGlzdGVuZXJzKTtcbiAgICAgIGRlZmF1bHRzLkFkZFRhcmdldChcbiAgICAgICAgdGhpcyxcbiAgICAgICAgZGVmYXVsdHMuQ3JlYXRlTGFtYmRhVGFyZ2V0R3JvdXAoXG4gICAgICAgICAgdGhpcyxcbiAgICAgICAgICBgdGcke3RoaXMubG9hZEJhbGFuY2VyLmxpc3RlbmVycy5sZW5ndGggKyAxfWAsXG4gICAgICAgICAgdGhpcy5sYW1iZGFGdW5jdGlvbixcbiAgICAgICAgICBwcm9wcy50YXJnZXRQcm9wc1xuICAgICAgICApLFxuICAgICAgICB0aGlzLmxpc3RlbmVyLFxuICAgICAgICBwcm9wcy5ydWxlUHJvcHNcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIEdldEFjdGl2ZUxpc3RlbmVyKGxpc3RlbmVyczogZWxiLkFwcGxpY2F0aW9uTGlzdGVuZXJbXSk6IGVsYi5BcHBsaWNhdGlvbkxpc3RlbmVyIHtcbiAgbGV0IGxpc3RlbmVyOiBlbGIuQXBwbGljYXRpb25MaXN0ZW5lcjtcblxuICBpZiAobGlzdGVuZXJzLmxlbmd0aCA9PT0gMSApIHtcbiAgICBsaXN0ZW5lciA9IGxpc3RlbmVyc1swXTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBjb3JyZWN0TGlzdGVuZXIgPSBsaXN0ZW5lcnMuZmluZChpID0+IChpLm5vZGUuY2hpbGRyZW5bMF0gYXMgZWxiLkNmbkxpc3RlbmVyKS5wcm90b2NvbCA9PT0gXCJIVFRQU1wiKTtcbiAgICBpZiAoY29ycmVjdExpc3RlbmVyKSB7XG4gICAgICBsaXN0ZW5lciA9IGNvcnJlY3RMaXN0ZW5lcjtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gVGhpcyBsaW5lIHNob3VsZCBiZSB1bnJlYWNoYWJsZVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUd28gbGlzdGVuZXJzIGluIHRoZSBBTEIsIGJ1dCBuZWl0aGVyIGFyZSBIVFRQU2ApO1xuICAgIH1cbiAgfVxuICByZXR1cm4gbGlzdGVuZXI7XG59XG4iXX0=
84
+ exports.AlbToLambda = AlbToLambda;
85
+ _a = JSII_RTTI_SYMBOL_1;
86
+ AlbToLambda[_a] = { fqn: "@aws-solutions-constructs/aws-alb-lambda.AlbToLambda", version: "1.130.0" };
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQWlCQSx3Q0FBMEM7QUFDMUMsMkRBQTJEO0FBRTNELHlEQUFtRTtBQTZCbkUsTUFBYSxXQUFZLFNBQVEsZ0JBQVM7SUFNeEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF1Qjs7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixRQUFRLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTNCLFVBQUksS0FBSyxDQUFDLGFBQWEsMENBQUUsZUFBZSxFQUFFO1lBQ3hDLE1BQU0sSUFBSSxLQUFLLENBQUMsa0dBQWtHLENBQUMsQ0FBQztTQUNySDtRQUVELElBQ0UsQ0FBQyxLQUFLLENBQUMsdUJBQXVCLElBQUksQ0FBQyxLQUFLLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQztlQUN4SCxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQ3ZCO1lBQ0EsTUFBTSxJQUFJLEtBQUssQ0FDYixvSkFBb0osQ0FDckosQ0FBQztTQUNIO1FBRUQsSUFDRSxDQUFDLENBQUMsS0FBSyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN6RixLQUFLLENBQUMsYUFBYSxFQUNuQjtZQUNBLE1BQU0sSUFBSSxLQUFLLENBQ2IsK0VBQStFLENBQ2hGLENBQUM7U0FDSDtRQUVELElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFT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Q0FBQyxJQUFJLENBQUMsWUFBMkIsQ0FBQztZQUN4RSxNQUFNLGNBQWMsR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDLFlBQThCLENBQUM7WUFDMUUsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQy9DO0lBRUgsQ0FBQzs7QUF6SEgsa0NBMEhDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiAgQ29weXJpZ2h0IDIwMjEgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKS4gWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuICogIHdpdGggdGhlIExpY2Vuc2UuIEEgY29weSBvZiB0aGUgTGljZW5zZSBpcyBsb2NhdGVkIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgb3IgaW4gdGhlICdsaWNlbnNlJyBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVNcbiAqICBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9uc1xuICogIGFuZCBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgKiBhcyBlbGIgZnJvbSBcIkBhd3MtY2RrL2F3cy1lbGFzdGljbG9hZGJhbGFuY2luZ3YyXCI7XG5pbXBvcnQgKiBhcyBlYzIgZnJvbSBcIkBhd3MtY2RrL2F3cy1lYzJcIjtcbmltcG9ydCAqIGFzIHMzIGZyb20gXCJAYXdzLWNkay9hd3MtczNcIjtcbmltcG9ydCAqIGFzIGxhbWJkYSBmcm9tIFwiQGF3cy1jZGsvYXdzLWxhbWJkYVwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcIkBhd3MtY2RrL2NvcmVcIjtcbmltcG9ydCAqIGFzIGRlZmF1bHRzIGZyb20gXCJAYXdzLXNvbHV0aW9ucy1jb25zdHJ1Y3RzL2NvcmVcIjtcbmltcG9ydCB7IENmbkxpc3RlbmVyLCBDZm5UYXJnZXRHcm91cCB9IGZyb20gXCJAYXdzLWNkay9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2MlwiO1xuaW1wb3J0IHsgR2V0QWN0aXZlTGlzdGVuZXIgfSBmcm9tIFwiQGF3cy1zb2x1dGlvbnMtY29uc3RydWN0cy9jb3JlXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWxiVG9MYW1iZGFQcm9wcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBsb2FkQmFsYW5jZXJQcm9wcz86IGVsYi5BcHBsaWNhdGlvbkxvYWRCYWxhbmNlclByb3BzIHwgYW55O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBleGlzdGluZ0xvYWRCYWxhbmNlck9iaj86IGVsYi5BcHBsaWNhdGlvbkxvYWRCYWxhbmNlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBleGlzdGluZ0xhbWJkYU9iaj86IGxhbWJkYS5GdW5jdGlvbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBsYW1iZGFGdW5jdGlvblByb3BzPzogbGFtYmRhLkZ1bmN0aW9uUHJvcHM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBsaXN0ZW5lclByb3BzPzogZWxiLkFwcGxpY2F0aW9uTGlzdGVuZXJQcm9wcyB8IGFueTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgdGFyZ2V0UHJvcHM/OiBlbGIuQXBwbGljYXRpb25UYXJnZXRHcm91cFByb3BzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHJ1bGVQcm9wcz86IGVsYi5BZGRSdWxlUHJvcHM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgdnBjUHJvcHM/OiBlYzIuVnBjUHJvcHM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBleGlzdGluZ1ZwYz86IGVjMi5JVnBjO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbG9nQWxiQWNjZXNzTG9ncz86IGJvb2xlYW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYWxiTG9nZ2luZ0J1Y2tldFByb3BzPzogczMuQnVja2V0UHJvcHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHB1YmxpY0FwaTogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNsYXNzIEFsYlRvTGFtYmRhIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIHJlYWRvbmx5IGxvYWRCYWxhbmNlcjogZWxiLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyO1xuICBwdWJsaWMgcmVhZG9ubHkgdnBjOiBlYzIuSVZwYztcbiAgcHVibGljIHJlYWRvbmx5IGxhbWJkYUZ1bmN0aW9uOiBsYW1iZGEuRnVuY3Rpb247XG4gIHB1YmxpYyByZWFkb25seSBsaXN0ZW5lcjogZWxiLkFwcGxpY2F0aW9uTGlzdGVuZXI7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEFsYlRvTGFtYmRhUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIGRlZmF1bHRzLkNoZWNrUHJvcHMocHJvcHMpO1xuXG4gICAgaWYgKHByb3BzLmxpc3RlbmVyUHJvcHM/LmNlcnRpZmljYXRlQXJucykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdjZXJ0aWZpY2F0ZUFybnMgaXMgZGVwcmVjYXRlZC4gUGxlYXNlIHN1cHBseSBjZXJ0aWZpY2F0ZXMgdXNpbmcgcHJvcHMubGlzdGVuZXJQcm9wcy5jZXJ0aWZpY2F0ZXMnKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICAocHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmogJiYgKHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqLmxpc3RlbmVycy5sZW5ndGggPT09IDApIHx8ICFwcm9wcy5leGlzdGluZ0xvYWRCYWxhbmNlck9iailcbiAgICAgICYmICFwcm9wcy5saXN0ZW5lclByb3BzXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiV2hlbiBhZGRpbmcgdGhlIGZpcnN0IGxpc3RlbmVyIGFuZCB0YXJnZXQgdG8gYSBsb2FkIGJhbGFuY2VyLCBsaXN0ZW5lclByb3BzIG11c3QgYmUgc3BlY2lmaWVkIGFuZCBpbmNsdWRlIGF0IGxlYXN0IGEgY2VydGlmaWNhdGUgb3IgcHJvdG9jb2w6IEhUVFBcIlxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICAoKHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqKSAmJiAocHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmoubGlzdGVuZXJzLmxlbmd0aCA+IDApKSAmJlxuICAgICAgcHJvcHMubGlzdGVuZXJQcm9wc1xuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIlRoaXMgbG9hZCBiYWxhbmNlciBhbHJlYWR5IGhhcyBhIGxpc3RlbmVyLCBsaXN0ZW5lclByb3BzIG1heSBub3QgYmUgc3BlY2lmaWVkXCJcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCgocHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmopICYmIChwcm9wcy5leGlzdGluZ0xvYWRCYWxhbmNlck9iai5saXN0ZW5lcnMubGVuZ3RoID4gMCkpICYmICFwcm9wcy5ydWxlUHJvcHMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgXCJXaGVuIGFkZGluZyBhIHNlY29uZCB0YXJnZXQgdG8gYW4gZXhpc3RpbmcgbGlzdGVuZXIsIHRoZXJlIG11c3QgYmUgcnVsZXMgcHJvdmlkZWRcIlxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBDaGVjayBjb25zdHJ1Y3Qgc3BlY2lmaWMgaW52YWxpZCBpbnB1dHNcbiAgICBpZiAocHJvcHMuZXhpc3RpbmdMb2FkQmFsYW5jZXJPYmogJiYgIXByb3BzLmV4aXN0aW5nVnBjKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiQW4gZXhpc3RpbmcgQUxCIGFscmVhZHkgZXhpc3RzIGluIGEgVlBDLCB0aGF0IFZQQyBtdXN0IGJlIHByb3ZpZGVkIGluIHByb3BzLmV4aXN0aW5nVnBjIGZvciB0aGUgcmVzdCBvZiB0aGUgY29uc3RydWN0IHRvIHVzZS5cIlxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoIHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqICkge1xuICAgICAgZGVmYXVsdHMucHJpbnRXYXJuaW5nKFxuICAgICAgICBcIlRoZSBwdWJsaWMvcHJpdmF0ZSBwcm9wZXJ0eSBvZiBhbiBleGlzbmcgQUxCIG11c3QgbWF0Y2ggdGhlIHByb3BzLnB1YmxpY0FwaSBzZXR0aW5nIHByb3ZpZGVkLlwiXG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIE9idGFpbiBWUEMgZm9yIGNvbnN0cnVjdCAoZXhpc3Rpbmcgb3IgY3JlYXRlZClcbiAgICAvLyBEZXRlcm1pbmUgYWxsIHRoZSByZXNvdXJjZXMgdG8gdXNlIChleGlzdGluZyBvciBsYXVuY2ggbmV3KVxuICAgIGlmIChwcm9wcy5leGlzdGluZ1ZwYykge1xuICAgICAgdGhpcy52cGMgPSBwcm9wcy5leGlzdGluZ1ZwYztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52cGMgPSBkZWZhdWx0cy5idWlsZFZwYyhzY29wZSwge1xuICAgICAgICBkZWZhdWx0VnBjUHJvcHM6IHByb3BzLnB1YmxpY0FwaVxuICAgICAgICAgID8gZGVmYXVsdHMuRGVmYXVsdFB1YmxpY1ByaXZhdGVWcGNQcm9wcygpXG4gICAgICAgICAgOiBkZWZhdWx0cy5EZWZhdWx0SXNvbGF0ZWRWcGNQcm9wcygpLFxuICAgICAgICB1c2VyVnBjUHJvcHM6IHByb3BzLnZwY1Byb3BzLFxuICAgICAgICBjb25zdHJ1Y3RWcGNQcm9wczogcHJvcHMucHVibGljQXBpXG4gICAgICAgICAgPyB1bmRlZmluZWRcbiAgICAgICAgICA6IHsgZW5hYmxlRG5zSG9zdG5hbWVzOiB0cnVlLCBlbmFibGVEbnNTdXBwb3J0OiB0cnVlLCB9LFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5sb2FkQmFsYW5jZXIgPSBkZWZhdWx0cy5PYnRhaW5BbGIoXG4gICAgICB0aGlzLFxuICAgICAgaWQsXG4gICAgICB0aGlzLnZwYyxcbiAgICAgIHByb3BzLnB1YmxpY0FwaSxcbiAgICAgIHByb3BzLmV4aXN0aW5nTG9hZEJhbGFuY2VyT2JqLFxuICAgICAgcHJvcHMubG9hZEJhbGFuY2VyUHJvcHMsXG4gICAgICBwcm9wcy5sb2dBbGJBY2Nlc3NMb2dzLFxuICAgICAgcHJvcHMuYWxiTG9nZ2luZ0J1Y2tldFByb3BzXG4gICAgKTtcblxuICAgIC8vIE9idGFpbiBMYW1iZGEgZnVuY3Rpb24gZm9yIGNvbnN0cnVjdCAoZXhpc3Rpbmcgb3IgY3JlYXRlZClcbiAgICB0aGlzLmxhbWJkYUZ1bmN0aW9uID0gZGVmYXVsdHMuYnVpbGRMYW1iZGFGdW5jdGlvbih0aGlzLCB7XG4gICAgICBleGlzdGluZ0xhbWJkYU9iajogcHJvcHMuZXhpc3RpbmdMYW1iZGFPYmosXG4gICAgICBsYW1iZGFGdW5jdGlvblByb3BzOiBwcm9wcy5sYW1iZGFGdW5jdGlvblByb3BzLFxuICAgICAgdnBjOiB0aGlzLnZwYyxcbiAgICB9KTtcblxuICAgIGxldCBuZXdMaXN0ZW5lcjogYm9vbGVhbjtcbiAgICBpZiAodGhpcy5sb2FkQmFsYW5jZXIubGlzdGVuZXJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgbmV3TGlzdGVuZXIgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICBuZXdMaXN0ZW5lciA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIElmIHRoZXJlJ3Mgbm8gbGlzdGVuZXIsIHRoZW4gd2UgYWRkIG9uZSBoZXJlXG4gICAgaWYgKG5ld0xpc3RlbmVyKSB7XG4gICAgICB0aGlzLmxpc3RlbmVyID0gZGVmYXVsdHMuQWRkTGlzdGVuZXIoXG4gICAgICAgIHRoaXMsXG4gICAgICAgIHRoaXMubG9hZEJhbGFuY2VyLFxuICAgICAgICBwcm9wcy5saXN0ZW5lclByb3BzXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxpc3RlbmVyID0gR2V0QWN0aXZlTGlzdGVuZXIodGhpcy5sb2FkQmFsYW5jZXIubGlzdGVuZXJzKTtcbiAgICB9XG5cbiAgICBjb25zdCBuZXdUYXJnZXRHcm91cCA9IGRlZmF1bHRzLkFkZExhbWJkYVRhcmdldChcbiAgICAgIHRoaXMsXG4gICAgICBgdGcke3RoaXMubG9hZEJhbGFuY2VyLmxpc3RlbmVycy5sZW5ndGggKyAxfWAsXG4gICAgICB0aGlzLmxpc3RlbmVyLFxuICAgICAgdGhpcy5sYW1iZGFGdW5jdGlvbixcbiAgICAgIHByb3BzLnJ1bGVQcm9wcyxcbiAgICAgIHByb3BzLnRhcmdldFByb3BzKTtcblxuICAgIC8vIHRoaXMubGlzdGVuZXIgbmVlZHMgdG8gYmUgc2V0IG9uIHRoZSBjb25zdHJ1Y3QuXG4gICAgLy8gY291bGQgYmUgYWJvdmU6IGVsc2UgeyBkZWZhdWx0cy5HZXRBY3RpdmVMaXN0ZW5lciB9XG4gICAgLy8gZG8gd2UgdGhlbiBtb3ZlIHRoYXQgZnVuY2lvbmFsaXR5IGJhY2sgaW50byB0aGUgY29uc3RydWN0IChub3QgdGhlIGZ1bmN0aW9uKS4gSWYgc28gZG9cbiAgICAvLyB3ZSBsZWF2ZSBpdCBpbiBBZGROZXdUYXJnZXQgb3IganVzdCBkbyBpdCBoZXJlIGFuZCBwYXNzIHRoZSBsaXN0ZW5lcj9cbiAgICBpZiAobmV3TGlzdGVuZXIgJiYgdGhpcy5saXN0ZW5lcikge1xuICAgICAgY29uc3QgbGV2ZWxPbmVMaXN0ZW5lciA9IHRoaXMubGlzdGVuZXIubm9kZS5kZWZhdWx0Q2hpbGQgYXMgQ2ZuTGlzdGVuZXI7XG4gICAgICBjb25zdCBjZm5UYXJnZXRHcm91cCA9IG5ld1RhcmdldEdyb3VwLm5vZGUuZGVmYXVsdENoaWxkIGFzIENmblRhcmdldEdyb3VwO1xuICAgICAgbGV2ZWxPbmVMaXN0ZW5lci5hZGREZXBlbmRzT24oY2ZuVGFyZ2V0R3JvdXApO1xuICAgIH1cblxuICB9XG59XG4iXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-solutions-constructs/aws-alb-lambda",
3
- "version": "1.129.0",
3
+ "version": "1.130.0",
4
4
  "description": "CDK Constructs for Application Load Balancer to AWS Lambda integration",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -53,25 +53,25 @@
53
53
  }
54
54
  },
55
55
  "dependencies": {
56
- "@aws-cdk/aws-lambda": "1.129.0",
57
- "@aws-cdk/aws-ec2": "1.129.0",
58
- "@aws-cdk/aws-s3": "1.129.0",
59
- "@aws-cdk/aws-certificatemanager": "1.129.0",
60
- "@aws-cdk/aws-elasticloadbalancingv2": "1.129.0",
61
- "@aws-cdk/core": "1.129.0",
62
- "@aws-solutions-constructs/core": "1.129.0",
56
+ "@aws-cdk/aws-lambda": "1.130.0",
57
+ "@aws-cdk/aws-ec2": "1.130.0",
58
+ "@aws-cdk/aws-s3": "1.130.0",
59
+ "@aws-cdk/aws-certificatemanager": "1.130.0",
60
+ "@aws-cdk/aws-elasticloadbalancingv2": "1.130.0",
61
+ "@aws-cdk/core": "1.130.0",
62
+ "@aws-solutions-constructs/core": "1.130.0",
63
63
  "constructs": "^3.2.0"
64
64
  },
65
65
  "devDependencies": {
66
- "@aws-cdk/assert": "1.129.0",
67
- "@aws-cdk/aws-ec2": "1.129.0",
68
- "@aws-cdk/aws-lambda": "1.129.0",
69
- "@aws-cdk/aws-elasticloadbalancingv2": "1.129.0",
70
- "@aws-cdk/aws-lambda-event-sources": "1.129.0",
71
- "@aws-cdk/aws-iam": "1.129.0",
72
- "@aws-cdk/core": "1.129.0",
66
+ "@aws-cdk/assert": "1.130.0",
67
+ "@aws-cdk/aws-ec2": "1.130.0",
68
+ "@aws-cdk/aws-lambda": "1.130.0",
69
+ "@aws-cdk/aws-elasticloadbalancingv2": "1.130.0",
70
+ "@aws-cdk/aws-lambda-event-sources": "1.130.0",
71
+ "@aws-cdk/aws-iam": "1.130.0",
72
+ "@aws-cdk/core": "1.130.0",
73
73
  "@types/jest": "^26.0.22",
74
- "@aws-solutions-constructs/core": "1.129.0",
74
+ "@aws-solutions-constructs/core": "1.130.0",
75
75
  "@types/node": "^10.3.0",
76
76
  "constructs": "3.2.0"
77
77
  },
@@ -90,13 +90,13 @@
90
90
  ]
91
91
  },
92
92
  "peerDependencies": {
93
- "@aws-cdk/aws-lambda": "1.129.0",
94
- "@aws-cdk/aws-elasticloadbalancingv2": "1.129.0",
95
- "@aws-cdk/aws-iam": "1.129.0",
96
- "@aws-cdk/aws-ec2": "1.129.0",
97
- "@aws-cdk/core": "1.129.0",
98
- "@aws-solutions-constructs/core": "1.129.0",
99
- "@aws-cdk/aws-lambda-event-sources": "1.129.0",
93
+ "@aws-cdk/aws-lambda": "1.130.0",
94
+ "@aws-cdk/aws-elasticloadbalancingv2": "1.130.0",
95
+ "@aws-cdk/aws-iam": "1.130.0",
96
+ "@aws-cdk/aws-ec2": "1.130.0",
97
+ "@aws-cdk/core": "1.130.0",
98
+ "@aws-solutions-constructs/core": "1.130.0",
99
+ "@aws-cdk/aws-lambda-event-sources": "1.130.0",
100
100
  "constructs": "^3.2.0"
101
101
  },
102
102
  "keywords": [
@@ -1084,32 +1084,13 @@
1084
1084
  }
1085
1085
  }
1086
1086
  },
1087
- "testonetg1tgDC5C1350": {
1088
- "Type": "AWS::ElasticLoadBalancingV2::TargetGroup",
1089
- "Properties": {
1090
- "Targets": [
1091
- {
1092
- "Id": {
1093
- "Fn::GetAtt": [
1094
- "LambdaFunctionBF21E41F",
1095
- "Arn"
1096
- ]
1097
- }
1098
- }
1099
- ],
1100
- "TargetType": "lambda"
1101
- },
1102
- "DependsOn": [
1103
- "LambdaFunctionInvokeServicePrincipalelasticloadbalancingamazonawscom842E1595"
1104
- ]
1105
- },
1106
1087
  "testonelistener5EBC4D40": {
1107
1088
  "Type": "AWS::ElasticLoadBalancingV2::Listener",
1108
1089
  "Properties": {
1109
1090
  "DefaultActions": [
1110
1091
  {
1111
1092
  "TargetGroupArn": {
1112
- "Ref": "testonetg1tgDC5C1350"
1093
+ "Ref": "testonetg2tg6459EC7C"
1113
1094
  },
1114
1095
  "Type": "forward"
1115
1096
  }
@@ -1121,7 +1102,7 @@
1121
1102
  "Protocol": "HTTP"
1122
1103
  },
1123
1104
  "DependsOn": [
1124
- "testonetg1tgDC5C1350"
1105
+ "testonetg2tg6459EC7C"
1125
1106
  ],
1126
1107
  "Metadata": {
1127
1108
  "cfn_nag": {
@@ -1133,13 +1114,32 @@
1133
1114
  ]
1134
1115
  }
1135
1116
  }
1117
+ },
1118
+ "testonetg2tg6459EC7C": {
1119
+ "Type": "AWS::ElasticLoadBalancingV2::TargetGroup",
1120
+ "Properties": {
1121
+ "Targets": [
1122
+ {
1123
+ "Id": {
1124
+ "Fn::GetAtt": [
1125
+ "LambdaFunctionBF21E41F",
1126
+ "Arn"
1127
+ ]
1128
+ }
1129
+ }
1130
+ ],
1131
+ "TargetType": "lambda"
1132
+ },
1133
+ "DependsOn": [
1134
+ "LambdaFunctionInvokeServicePrincipalelasticloadbalancingamazonawscom842E1595"
1135
+ ]
1136
1136
  }
1137
1137
  },
1138
1138
  "Parameters": {
1139
1139
  "BootstrapVersion": {
1140
1140
  "Type": "AWS::SSM::Parameter::Value<String>",
1141
1141
  "Default": "/cdk-bootstrap/hnb659fds/version",
1142
- "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store."
1142
+ "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
1143
1143
  }
1144
1144
  },
1145
1145
  "Rules": {
@@ -435,32 +435,13 @@
435
435
  "Principal": "elasticloadbalancing.amazonaws.com"
436
436
  }
437
437
  },
438
- "testonetg1tgDC5C1350": {
439
- "Type": "AWS::ElasticLoadBalancingV2::TargetGroup",
440
- "Properties": {
441
- "Targets": [
442
- {
443
- "Id": {
444
- "Fn::GetAtt": [
445
- "testoneLambdaFunctionCC9B03E1",
446
- "Arn"
447
- ]
448
- }
449
- }
450
- ],
451
- "TargetType": "lambda"
452
- },
453
- "DependsOn": [
454
- "testoneLambdaFunctionInvokeServicePrincipalelasticloadbalancingamazonawscom776E5E70"
455
- ]
456
- },
457
438
  "testonelistener5EBC4D40": {
458
439
  "Type": "AWS::ElasticLoadBalancingV2::Listener",
459
440
  "Properties": {
460
441
  "DefaultActions": [
461
442
  {
462
443
  "TargetGroupArn": {
463
- "Ref": "testonetg1tgDC5C1350"
444
+ "Ref": "testonetg2tg6459EC7C"
464
445
  },
465
446
  "Type": "forward"
466
447
  }
@@ -472,7 +453,7 @@
472
453
  "Protocol": "HTTP"
473
454
  },
474
455
  "DependsOn": [
475
- "testonetg1tgDC5C1350"
456
+ "testonetg2tg6459EC7C"
476
457
  ],
477
458
  "Metadata": {
478
459
  "cfn_nag": {
@@ -485,6 +466,25 @@
485
466
  }
486
467
  }
487
468
  },
469
+ "testonetg2tg6459EC7C": {
470
+ "Type": "AWS::ElasticLoadBalancingV2::TargetGroup",
471
+ "Properties": {
472
+ "Targets": [
473
+ {
474
+ "Id": {
475
+ "Fn::GetAtt": [
476
+ "testoneLambdaFunctionCC9B03E1",
477
+ "Arn"
478
+ ]
479
+ }
480
+ }
481
+ ],
482
+ "TargetType": "lambda"
483
+ },
484
+ "DependsOn": [
485
+ "testoneLambdaFunctionInvokeServicePrincipalelasticloadbalancingamazonawscom776E5E70"
486
+ ]
487
+ },
488
488
  "Vpc8378EB38": {
489
489
  "Type": "AWS::EC2::VPC",
490
490
  "Properties": {
@@ -762,7 +762,7 @@
762
762
  "BootstrapVersion": {
763
763
  "Type": "AWS::SSM::Parameter::Value<String>",
764
764
  "Default": "/cdk-bootstrap/hnb659fds/version",
765
- "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store."
765
+ "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
766
766
  }
767
767
  },
768
768
  "Rules": {
@@ -1084,32 +1084,13 @@
1084
1084
  }
1085
1085
  }
1086
1086
  },
1087
- "testonetg1tgDC5C1350": {
1088
- "Type": "AWS::ElasticLoadBalancingV2::TargetGroup",
1089
- "Properties": {
1090
- "Targets": [
1091
- {
1092
- "Id": {
1093
- "Fn::GetAtt": [
1094
- "LambdaFunctionBF21E41F",
1095
- "Arn"
1096
- ]
1097
- }
1098
- }
1099
- ],
1100
- "TargetType": "lambda"
1101
- },
1102
- "DependsOn": [
1103
- "LambdaFunctionInvokeServicePrincipalelasticloadbalancingamazonawscom842E1595"
1104
- ]
1105
- },
1106
1087
  "testonelistener5EBC4D40": {
1107
1088
  "Type": "AWS::ElasticLoadBalancingV2::Listener",
1108
1089
  "Properties": {
1109
1090
  "DefaultActions": [
1110
1091
  {
1111
1092
  "TargetGroupArn": {
1112
- "Ref": "testonetg1tgDC5C1350"
1093
+ "Ref": "testonetg2tg6459EC7C"
1113
1094
  },
1114
1095
  "Type": "forward"
1115
1096
  }
@@ -1121,7 +1102,7 @@
1121
1102
  "Protocol": "HTTP"
1122
1103
  },
1123
1104
  "DependsOn": [
1124
- "testonetg1tgDC5C1350"
1105
+ "testonetg2tg6459EC7C"
1125
1106
  ],
1126
1107
  "Metadata": {
1127
1108
  "cfn_nag": {
@@ -1133,13 +1114,32 @@
1133
1114
  ]
1134
1115
  }
1135
1116
  }
1117
+ },
1118
+ "testonetg2tg6459EC7C": {
1119
+ "Type": "AWS::ElasticLoadBalancingV2::TargetGroup",
1120
+ "Properties": {
1121
+ "Targets": [
1122
+ {
1123
+ "Id": {
1124
+ "Fn::GetAtt": [
1125
+ "LambdaFunctionBF21E41F",
1126
+ "Arn"
1127
+ ]
1128
+ }
1129
+ }
1130
+ ],
1131
+ "TargetType": "lambda"
1132
+ },
1133
+ "DependsOn": [
1134
+ "LambdaFunctionInvokeServicePrincipalelasticloadbalancingamazonawscom842E1595"
1135
+ ]
1136
1136
  }
1137
1137
  },
1138
1138
  "Parameters": {
1139
1139
  "BootstrapVersion": {
1140
1140
  "Type": "AWS::SSM::Parameter::Value<String>",
1141
1141
  "Default": "/cdk-bootstrap/hnb659fds/version",
1142
- "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store."
1142
+ "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
1143
1143
  }
1144
1144
  },
1145
1145
  "Rules": {
@@ -438,32 +438,13 @@
438
438
  "Principal": "elasticloadbalancing.amazonaws.com"
439
439
  }
440
440
  },
441
- "testonetg1tgDC5C1350": {
442
- "Type": "AWS::ElasticLoadBalancingV2::TargetGroup",
443
- "Properties": {
444
- "Targets": [
445
- {
446
- "Id": {
447
- "Fn::GetAtt": [
448
- "testoneLambdaFunctionCC9B03E1",
449
- "Arn"
450
- ]
451
- }
452
- }
453
- ],
454
- "TargetType": "lambda"
455
- },
456
- "DependsOn": [
457
- "testoneLambdaFunctionInvokeServicePrincipalelasticloadbalancingamazonawscom776E5E70"
458
- ]
459
- },
460
441
  "testonelistener5EBC4D40": {
461
442
  "Type": "AWS::ElasticLoadBalancingV2::Listener",
462
443
  "Properties": {
463
444
  "DefaultActions": [
464
445
  {
465
446
  "TargetGroupArn": {
466
- "Ref": "testonetg1tgDC5C1350"
447
+ "Ref": "testonetg2tg6459EC7C"
467
448
  },
468
449
  "Type": "forward"
469
450
  }
@@ -475,7 +456,7 @@
475
456
  "Protocol": "HTTP"
476
457
  },
477
458
  "DependsOn": [
478
- "testonetg1tgDC5C1350"
459
+ "testonetg2tg6459EC7C"
479
460
  ],
480
461
  "Metadata": {
481
462
  "cfn_nag": {
@@ -488,6 +469,25 @@
488
469
  }
489
470
  }
490
471
  },
472
+ "testonetg2tg6459EC7C": {
473
+ "Type": "AWS::ElasticLoadBalancingV2::TargetGroup",
474
+ "Properties": {
475
+ "Targets": [
476
+ {
477
+ "Id": {
478
+ "Fn::GetAtt": [
479
+ "testoneLambdaFunctionCC9B03E1",
480
+ "Arn"
481
+ ]
482
+ }
483
+ }
484
+ ],
485
+ "TargetType": "lambda"
486
+ },
487
+ "DependsOn": [
488
+ "testoneLambdaFunctionInvokeServicePrincipalelasticloadbalancingamazonawscom776E5E70"
489
+ ]
490
+ },
491
491
  "Vpc8378EB38": {
492
492
  "Type": "AWS::EC2::VPC",
493
493
  "Properties": {
@@ -1144,7 +1144,7 @@
1144
1144
  "BootstrapVersion": {
1145
1145
  "Type": "AWS::SSM::Parameter::Value<String>",
1146
1146
  "Default": "/cdk-bootstrap/hnb659fds/version",
1147
- "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store."
1147
+ "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
1148
1148
  }
1149
1149
  },
1150
1150
  "Rules": {
@@ -438,32 +438,13 @@
438
438
  "Principal": "elasticloadbalancing.amazonaws.com"
439
439
  }
440
440
  },
441
- "testonetg1tgDC5C1350": {
442
- "Type": "AWS::ElasticLoadBalancingV2::TargetGroup",
443
- "Properties": {
444
- "Targets": [
445
- {
446
- "Id": {
447
- "Fn::GetAtt": [
448
- "testoneLambdaFunctionCC9B03E1",
449
- "Arn"
450
- ]
451
- }
452
- }
453
- ],
454
- "TargetType": "lambda"
455
- },
456
- "DependsOn": [
457
- "testoneLambdaFunctionInvokeServicePrincipalelasticloadbalancingamazonawscom776E5E70"
458
- ]
459
- },
460
441
  "testonelistener5EBC4D40": {
461
442
  "Type": "AWS::ElasticLoadBalancingV2::Listener",
462
443
  "Properties": {
463
444
  "DefaultActions": [
464
445
  {
465
446
  "TargetGroupArn": {
466
- "Ref": "testonetg1tgDC5C1350"
447
+ "Ref": "testonetg2tg6459EC7C"
467
448
  },
468
449
  "Type": "forward"
469
450
  }
@@ -475,7 +456,7 @@
475
456
  "Protocol": "HTTP"
476
457
  },
477
458
  "DependsOn": [
478
- "testonetg1tgDC5C1350"
459
+ "testonetg2tg6459EC7C"
479
460
  ],
480
461
  "Metadata": {
481
462
  "cfn_nag": {
@@ -515,6 +496,25 @@
515
496
  "Priority": 10
516
497
  }
517
498
  },
499
+ "testonetg2tg6459EC7C": {
500
+ "Type": "AWS::ElasticLoadBalancingV2::TargetGroup",
501
+ "Properties": {
502
+ "Targets": [
503
+ {
504
+ "Id": {
505
+ "Fn::GetAtt": [
506
+ "testoneLambdaFunctionCC9B03E1",
507
+ "Arn"
508
+ ]
509
+ }
510
+ }
511
+ ],
512
+ "TargetType": "lambda"
513
+ },
514
+ "DependsOn": [
515
+ "testoneLambdaFunctionInvokeServicePrincipalelasticloadbalancingamazonawscom776E5E70"
516
+ ]
517
+ },
518
518
  "Vpc8378EB38": {
519
519
  "Type": "AWS::EC2::VPC",
520
520
  "Properties": {
@@ -1403,7 +1403,7 @@
1403
1403
  "BootstrapVersion": {
1404
1404
  "Type": "AWS::SSM::Parameter::Value<String>",
1405
1405
  "Default": "/cdk-bootstrap/hnb659fds/version",
1406
- "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store."
1406
+ "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
1407
1407
  }
1408
1408
  },
1409
1409
  "Rules": {