1
0
Fork 0
mirror of https://github.com/DanielnetoDotCom/YouPHPTube synced 2025-10-05 19:42:38 +02:00

Update Composer dependencies.

This commit is contained in:
Caleb Mazalevskis 2023-02-15 23:36:22 +08:00
parent 12049cba3a
commit 47fbfd2bca
No known key found for this signature in database
GPG key ID: 082E6BC1046FAB95
12558 changed files with 155183 additions and 28099 deletions

242
composer.lock generated
View file

@ -277,16 +277,16 @@
},
{
"name": "aws/aws-sdk-php",
"version": "3.258.3",
"version": "3.258.10",
"source": {
"type": "git",
"url": "https://github.com/aws/aws-sdk-php.git",
"reference": "57cbc06827148d0d4d3f5dbe4b948daa20f82d70"
"reference": "e164c9c5faf3965bd27ff2a4e9b7b3048ba8a337"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/57cbc06827148d0d4d3f5dbe4b948daa20f82d70",
"reference": "57cbc06827148d0d4d3f5dbe4b948daa20f82d70",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/e164c9c5faf3965bd27ff2a4e9b7b3048ba8a337",
"reference": "e164c9c5faf3965bd27ff2a4e9b7b3048ba8a337",
"shasum": ""
},
"require": {
@ -365,9 +365,9 @@
"support": {
"forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80",
"issues": "https://github.com/aws/aws-sdk-php/issues",
"source": "https://github.com/aws/aws-sdk-php/tree/3.258.3"
"source": "https://github.com/aws/aws-sdk-php/tree/3.258.10"
},
"time": "2023-02-03T19:25:20+00:00"
"time": "2023-02-14T19:21:16+00:00"
},
{
"name": "brick/math",
@ -541,16 +541,16 @@
},
{
"name": "composer/ca-bundle",
"version": "1.3.3",
"version": "1.3.5",
"source": {
"type": "git",
"url": "https://github.com/composer/ca-bundle.git",
"reference": "30897edbfb15e784fe55587b4f73ceefd3c4d98c"
"reference": "74780ccf8c19d6acb8d65c5f39cd72110e132bbd"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/composer/ca-bundle/zipball/30897edbfb15e784fe55587b4f73ceefd3c4d98c",
"reference": "30897edbfb15e784fe55587b4f73ceefd3c4d98c",
"url": "https://api.github.com/repos/composer/ca-bundle/zipball/74780ccf8c19d6acb8d65c5f39cd72110e132bbd",
"reference": "74780ccf8c19d6acb8d65c5f39cd72110e132bbd",
"shasum": ""
},
"require": {
@ -597,7 +597,7 @@
"support": {
"irc": "irc://irc.freenode.org/composer",
"issues": "https://github.com/composer/ca-bundle/issues",
"source": "https://github.com/composer/ca-bundle/tree/1.3.3"
"source": "https://github.com/composer/ca-bundle/tree/1.3.5"
},
"funding": [
{
@ -613,7 +613,7 @@
"type": "tidelift"
}
],
"time": "2022-07-20T07:14:26+00:00"
"time": "2023-01-11T08:27:00+00:00"
},
{
"name": "emojione/assets",
@ -813,16 +813,16 @@
},
{
"name": "firebase/php-jwt",
"version": "v6.3.2",
"version": "v6.4.0",
"source": {
"type": "git",
"url": "https://github.com/firebase/php-jwt.git",
"reference": "ea7dda77098b96e666c5ef382452f94841e439cd"
"reference": "4dd1e007f22a927ac77da5a3fbb067b42d3bc224"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/firebase/php-jwt/zipball/ea7dda77098b96e666c5ef382452f94841e439cd",
"reference": "ea7dda77098b96e666c5ef382452f94841e439cd",
"url": "https://api.github.com/repos/firebase/php-jwt/zipball/4dd1e007f22a927ac77da5a3fbb067b42d3bc224",
"reference": "4dd1e007f22a927ac77da5a3fbb067b42d3bc224",
"shasum": ""
},
"require": {
@ -837,6 +837,7 @@
"psr/http-factory": "^1.0"
},
"suggest": {
"ext-sodium": "Support EdDSA (Ed25519) signatures",
"paragonie/sodium_compat": "Support EdDSA (Ed25519) signatures when libsodium is not present"
},
"type": "library",
@ -869,9 +870,9 @@
],
"support": {
"issues": "https://github.com/firebase/php-jwt/issues",
"source": "https://github.com/firebase/php-jwt/tree/v6.3.2"
"source": "https://github.com/firebase/php-jwt/tree/v6.4.0"
},
"time": "2022-12-19T17:10:46+00:00"
"time": "2023-02-09T21:01:23+00:00"
},
{
"name": "gliterd/backblaze-b2",
@ -1776,16 +1777,16 @@
},
{
"name": "nesbot/carbon",
"version": "2.62.1",
"version": "2.66.0",
"source": {
"type": "git",
"url": "https://github.com/briannesbitt/Carbon.git",
"reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a"
"reference": "496712849902241f04902033b0441b269effe001"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a",
"reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a",
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/496712849902241f04902033b0441b269effe001",
"reference": "496712849902241f04902033b0441b269effe001",
"shasum": ""
},
"require": {
@ -1796,7 +1797,7 @@
"symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0"
},
"require-dev": {
"doctrine/dbal": "^2.0 || ^3.0",
"doctrine/dbal": "^2.0 || ^3.1.4",
"doctrine/orm": "^2.7",
"friendsofphp/php-cs-fixer": "^3.0",
"kylekatarnls/multi-tester": "^2.0",
@ -1874,7 +1875,7 @@
"type": "tidelift"
}
],
"time": "2022-09-02T07:48:13+00:00"
"time": "2023-01-29T18:53:47+00:00"
},
{
"name": "norkunas/onesignal-php-api",
@ -2188,6 +2189,7 @@
"support": {
"source": "https://github.com/paypal/Checkout-PHP-SDK/tree/1.0.2"
},
"abandoned": true,
"time": "2021-09-21T20:57:38+00:00"
},
{
@ -2584,16 +2586,16 @@
},
{
"name": "predis/predis",
"version": "v2.0.3",
"version": "v2.1.1",
"source": {
"type": "git",
"url": "https://github.com/predis/predis.git",
"reference": "ff59f745815150c65ed388f7d64e7660fe961771"
"reference": "c5b60884e89630f9518a7919f0566db438f0fc9a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/predis/predis/zipball/ff59f745815150c65ed388f7d64e7660fe961771",
"reference": "ff59f745815150c65ed388f7d64e7660fe961771",
"url": "https://api.github.com/repos/predis/predis/zipball/c5b60884e89630f9518a7919f0566db438f0fc9a",
"reference": "c5b60884e89630f9518a7919f0566db438f0fc9a",
"shasum": ""
},
"require": {
@ -2603,8 +2605,7 @@
"phpunit/phpunit": "^8.0 || ~9.4.4"
},
"suggest": {
"ext-curl": "Allows access to Webdis when paired with phpiredis",
"ext-phpiredis": "Allows faster serialization and deserialization of the Redis protocol"
"ext-curl": "Allows access to Webdis when paired with phpiredis"
},
"type": "library",
"extra": {
@ -2622,16 +2623,16 @@
"MIT"
],
"authors": [
{
"name": "Daniele Alessandri",
"email": "suppakilla@gmail.com",
"homepage": "http://clorophilla.net",
"role": "Creator & Maintainer"
},
{
"name": "Till Krüss",
"homepage": "https://till.im",
"role": "Maintainer"
},
{
"name": "Daniele Alessandri",
"email": "suppakilla@gmail.com",
"homepage": "http://clorophilla.net",
"role": "Creator"
}
],
"description": "A flexible and feature-complete Redis client for PHP.",
@ -2643,7 +2644,7 @@
],
"support": {
"issues": "https://github.com/predis/predis/issues",
"source": "https://github.com/predis/predis/tree/v2.0.3"
"source": "https://github.com/predis/predis/tree/v2.1.1"
},
"funding": [
{
@ -2651,7 +2652,7 @@
"type": "github"
}
],
"time": "2022-10-11T16:52:29+00:00"
"time": "2023-01-17T20:57:35+00:00"
},
{
"name": "psr/cache",
@ -3344,16 +3345,16 @@
},
{
"name": "react/cache",
"version": "v1.1.1",
"version": "v1.2.0",
"source": {
"type": "git",
"url": "https://github.com/reactphp/cache.git",
"reference": "4bf736a2cccec7298bdf745db77585966fc2ca7e"
"reference": "d47c472b64aa5608225f47965a484b75c7817d5b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/reactphp/cache/zipball/4bf736a2cccec7298bdf745db77585966fc2ca7e",
"reference": "4bf736a2cccec7298bdf745db77585966fc2ca7e",
"url": "https://api.github.com/repos/reactphp/cache/zipball/d47c472b64aa5608225f47965a484b75c7817d5b",
"reference": "d47c472b64aa5608225f47965a484b75c7817d5b",
"shasum": ""
},
"require": {
@ -3361,7 +3362,7 @@
"react/promise": "^3.0 || ^2.0 || ^1.1"
},
"require-dev": {
"phpunit/phpunit": "^9.3 || ^5.7 || ^4.8.35"
"phpunit/phpunit": "^9.5 || ^5.7 || ^4.8.35"
},
"type": "library",
"autoload": {
@ -3404,32 +3405,28 @@
],
"support": {
"issues": "https://github.com/reactphp/cache/issues",
"source": "https://github.com/reactphp/cache/tree/v1.1.1"
"source": "https://github.com/reactphp/cache/tree/v1.2.0"
},
"funding": [
{
"url": "https://github.com/WyriHaximus",
"type": "github"
},
{
"url": "https://github.com/clue",
"type": "github"
"url": "https://opencollective.com/reactphp",
"type": "open_collective"
}
],
"time": "2021-02-02T06:47:52+00:00"
"time": "2022-11-30T15:59:55+00:00"
},
{
"name": "react/dns",
"version": "v1.9.0",
"version": "v1.10.0",
"source": {
"type": "git",
"url": "https://github.com/reactphp/dns.git",
"reference": "6d38296756fa644e6cb1bfe95eff0f9a4ed6edcb"
"reference": "a5427e7dfa47713e438016905605819d101f238c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/reactphp/dns/zipball/6d38296756fa644e6cb1bfe95eff0f9a4ed6edcb",
"reference": "6d38296756fa644e6cb1bfe95eff0f9a4ed6edcb",
"url": "https://api.github.com/repos/reactphp/dns/zipball/a5427e7dfa47713e438016905605819d101f238c",
"reference": "a5427e7dfa47713e438016905605819d101f238c",
"shasum": ""
},
"require": {
@ -3437,11 +3434,11 @@
"react/cache": "^1.0 || ^0.6 || ^0.5",
"react/event-loop": "^1.2",
"react/promise": "^3.0 || ^2.7 || ^1.2.1",
"react/promise-timer": "^1.8"
"react/promise-timer": "^1.9"
},
"require-dev": {
"clue/block-react": "^1.2",
"phpunit/phpunit": "^9.3 || ^4.8.35"
"phpunit/phpunit": "^9.3 || ^4.8.35",
"react/async": "^4 || ^3 || ^2"
},
"type": "library",
"autoload": {
@ -3484,7 +3481,7 @@
],
"support": {
"issues": "https://github.com/reactphp/dns/issues",
"source": "https://github.com/reactphp/dns/tree/v1.9.0"
"source": "https://github.com/reactphp/dns/tree/v1.10.0"
},
"funding": [
{
@ -3496,7 +3493,7 @@
"type": "github"
}
],
"time": "2021-12-20T08:46:54+00:00"
"time": "2022-09-08T12:22:46+00:00"
},
{
"name": "react/event-loop",
@ -3737,16 +3734,16 @@
},
{
"name": "react/socket",
"version": "v1.11.0",
"version": "v1.12.0",
"source": {
"type": "git",
"url": "https://github.com/reactphp/socket.git",
"reference": "f474156aaab4f09041144fa8b57c7d70aed32a1c"
"reference": "81e1b4d7f5450ebd8d2e9a95bb008bb15ca95a7b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/reactphp/socket/zipball/f474156aaab4f09041144fa8b57c7d70aed32a1c",
"reference": "f474156aaab4f09041144fa8b57c7d70aed32a1c",
"url": "https://api.github.com/repos/reactphp/socket/zipball/81e1b4d7f5450ebd8d2e9a95bb008bb15ca95a7b",
"reference": "81e1b4d7f5450ebd8d2e9a95bb008bb15ca95a7b",
"shasum": ""
},
"require": {
@ -3754,14 +3751,14 @@
"php": ">=5.3.0",
"react/dns": "^1.8",
"react/event-loop": "^1.2",
"react/promise": "^2.6.0 || ^1.2.1",
"react/promise-timer": "^1.8",
"react/promise": "^3 || ^2.6 || ^1.2.1",
"react/promise-timer": "^1.9",
"react/stream": "^1.2"
},
"require-dev": {
"clue/block-react": "^1.5",
"phpunit/phpunit": "^9.3 || ^5.7 || ^4.8.35",
"react/promise-stream": "^1.2"
"react/async": "^4 || ^3 || ^2",
"react/promise-stream": "^1.4"
},
"type": "library",
"autoload": {
@ -3805,7 +3802,7 @@
],
"support": {
"issues": "https://github.com/reactphp/socket/issues",
"source": "https://github.com/reactphp/socket/tree/v1.11.0"
"source": "https://github.com/reactphp/socket/tree/v1.12.0"
},
"funding": [
{
@ -3817,7 +3814,7 @@
"type": "github"
}
],
"time": "2022-01-14T10:14:32+00:00"
"time": "2022-08-25T12:32:25+00:00"
},
{
"name": "react/stream",
@ -4049,16 +4046,16 @@
},
{
"name": "stripe/stripe-php",
"version": "v10.4.0",
"version": "v10.5.0",
"source": {
"type": "git",
"url": "https://github.com/stripe/stripe-php.git",
"reference": "87def896d9a2e2914871408277d67432cb112f71"
"reference": "331415b232d60d7c0449de7bde4cb7d4fedf982e"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/stripe/stripe-php/zipball/87def896d9a2e2914871408277d67432cb112f71",
"reference": "87def896d9a2e2914871408277d67432cb112f71",
"url": "https://api.github.com/repos/stripe/stripe-php/zipball/331415b232d60d7c0449de7bde4cb7d4fedf982e",
"reference": "331415b232d60d7c0449de7bde4cb7d4fedf982e",
"shasum": ""
},
"require": {
@ -4104,22 +4101,22 @@
],
"support": {
"issues": "https://github.com/stripe/stripe-php/issues",
"source": "https://github.com/stripe/stripe-php/tree/v10.4.0"
"source": "https://github.com/stripe/stripe-php/tree/v10.5.0"
},
"time": "2023-01-19T19:18:38+00:00"
"time": "2023-02-02T21:02:09+00:00"
},
{
"name": "symfony/console",
"version": "v5.4.15",
"version": "v5.4.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
"reference": "ea59bb0edfaf9f28d18d8791410ee0355f317669"
"reference": "dccb8d251a9017d5994c988b034d3e18aaabf740"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/ea59bb0edfaf9f28d18d8791410ee0355f317669",
"reference": "ea59bb0edfaf9f28d18d8791410ee0355f317669",
"url": "https://api.github.com/repos/symfony/console/zipball/dccb8d251a9017d5994c988b034d3e18aaabf740",
"reference": "dccb8d251a9017d5994c988b034d3e18aaabf740",
"shasum": ""
},
"require": {
@ -4189,7 +4186,7 @@
"terminal"
],
"support": {
"source": "https://github.com/symfony/console/tree/v5.4.15"
"source": "https://github.com/symfony/console/tree/v5.4.19"
},
"funding": [
{
@ -4205,7 +4202,7 @@
"type": "tidelift"
}
],
"time": "2022-10-26T21:41:52+00:00"
"time": "2023-01-01T08:32:19+00:00"
},
{
"name": "symfony/deprecation-contracts",
@ -4276,16 +4273,16 @@
},
{
"name": "symfony/event-dispatcher",
"version": "v5.4.9",
"version": "v5.4.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
"reference": "8e6ce1cc0279e3ff3c8ff0f43813bc88d21ca1bc"
"reference": "abf49cc084c087d94b4cb939c3f3672971784e0c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/8e6ce1cc0279e3ff3c8ff0f43813bc88d21ca1bc",
"reference": "8e6ce1cc0279e3ff3c8ff0f43813bc88d21ca1bc",
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/abf49cc084c087d94b4cb939c3f3672971784e0c",
"reference": "abf49cc084c087d94b4cb939c3f3672971784e0c",
"shasum": ""
},
"require": {
@ -4341,7 +4338,7 @@
"description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/event-dispatcher/tree/v5.4.9"
"source": "https://github.com/symfony/event-dispatcher/tree/v5.4.19"
},
"funding": [
{
@ -4357,7 +4354,7 @@
"type": "tidelift"
}
],
"time": "2022-05-05T16:45:39+00:00"
"time": "2023-01-01T08:32:19+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
@ -4605,16 +4602,16 @@
},
{
"name": "symfony/http-foundation",
"version": "v5.4.10",
"version": "v5.4.20",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-foundation.git",
"reference": "e7793b7906f72a8cc51054fbca9dcff7a8af1c1e"
"reference": "d0435363362a47c14e9cf50663cb8ffbf491875a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/http-foundation/zipball/e7793b7906f72a8cc51054fbca9dcff7a8af1c1e",
"reference": "e7793b7906f72a8cc51054fbca9dcff7a8af1c1e",
"url": "https://api.github.com/repos/symfony/http-foundation/zipball/d0435363362a47c14e9cf50663cb8ffbf491875a",
"reference": "d0435363362a47c14e9cf50663cb8ffbf491875a",
"shasum": ""
},
"require": {
@ -4626,8 +4623,11 @@
"require-dev": {
"predis/predis": "~1.0",
"symfony/cache": "^4.4|^5.0|^6.0",
"symfony/dependency-injection": "^5.4|^6.0",
"symfony/expression-language": "^4.4|^5.0|^6.0",
"symfony/mime": "^4.4|^5.0|^6.0"
"symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4",
"symfony/mime": "^4.4|^5.0|^6.0",
"symfony/rate-limiter": "^5.2|^6.0"
},
"suggest": {
"symfony/mime": "To use the file extension guesser"
@ -4658,7 +4658,7 @@
"description": "Defines an object-oriented layer for the HTTP specification",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/http-foundation/tree/v5.4.10"
"source": "https://github.com/symfony/http-foundation/tree/v5.4.20"
},
"funding": [
{
@ -4674,20 +4674,20 @@
"type": "tidelift"
}
],
"time": "2022-06-19T13:13:40+00:00"
"time": "2023-01-29T11:11:52+00:00"
},
{
"name": "symfony/mime",
"version": "v5.4.14",
"version": "v5.4.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/mime.git",
"reference": "1c118b253bb3495d81e95a6e3ec6c2766a98a0c4"
"reference": "a858429a9c704edc53fe057228cf9ca282ba48eb"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/mime/zipball/1c118b253bb3495d81e95a6e3ec6c2766a98a0c4",
"reference": "1c118b253bb3495d81e95a6e3ec6c2766a98a0c4",
"url": "https://api.github.com/repos/symfony/mime/zipball/a858429a9c704edc53fe057228cf9ca282ba48eb",
"reference": "a858429a9c704edc53fe057228cf9ca282ba48eb",
"shasum": ""
},
"require": {
@ -4705,7 +4705,7 @@
"symfony/serializer": "<5.4.14|>=6.0,<6.0.14|>=6.1,<6.1.6"
},
"require-dev": {
"egulias/email-validator": "^2.1.10|^3.1",
"egulias/email-validator": "^2.1.10|^3.1|^4",
"phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0",
"symfony/dependency-injection": "^4.4|^5.0|^6.0",
"symfony/property-access": "^4.4|^5.1|^6.0",
@ -4742,7 +4742,7 @@
"mime-type"
],
"support": {
"source": "https://github.com/symfony/mime/tree/v5.4.14"
"source": "https://github.com/symfony/mime/tree/v5.4.19"
},
"funding": [
{
@ -4758,20 +4758,20 @@
"type": "tidelift"
}
],
"time": "2022-10-07T08:01:20+00:00"
"time": "2023-01-09T05:43:46+00:00"
},
{
"name": "symfony/options-resolver",
"version": "v5.4.11",
"version": "v5.4.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/options-resolver.git",
"reference": "54f14e36aa73cb8f7261d7686691fd4d75ea2690"
"reference": "b03c99236445492f20c61666e8f7e5d388b078e5"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/options-resolver/zipball/54f14e36aa73cb8f7261d7686691fd4d75ea2690",
"reference": "54f14e36aa73cb8f7261d7686691fd4d75ea2690",
"url": "https://api.github.com/repos/symfony/options-resolver/zipball/b03c99236445492f20c61666e8f7e5d388b078e5",
"reference": "b03c99236445492f20c61666e8f7e5d388b078e5",
"shasum": ""
},
"require": {
@ -4811,7 +4811,7 @@
"options"
],
"support": {
"source": "https://github.com/symfony/options-resolver/tree/v5.4.11"
"source": "https://github.com/symfony/options-resolver/tree/v5.4.19"
},
"funding": [
{
@ -4827,7 +4827,7 @@
"type": "tidelift"
}
],
"time": "2022-07-20T13:00:38+00:00"
"time": "2023-01-01T08:32:19+00:00"
},
{
"name": "symfony/polyfill-ctype",
@ -5565,16 +5565,16 @@
},
{
"name": "symfony/routing",
"version": "v5.4.8",
"version": "v5.4.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/routing.git",
"reference": "e07817bb6244ea33ef5ad31abc4a9288bef3f2f7"
"reference": "df1b28f37c8e78912213c58ef6ab2f2037bbfdc5"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/routing/zipball/e07817bb6244ea33ef5ad31abc4a9288bef3f2f7",
"reference": "e07817bb6244ea33ef5ad31abc4a9288bef3f2f7",
"url": "https://api.github.com/repos/symfony/routing/zipball/df1b28f37c8e78912213c58ef6ab2f2037bbfdc5",
"reference": "df1b28f37c8e78912213c58ef6ab2f2037bbfdc5",
"shasum": ""
},
"require": {
@ -5589,7 +5589,7 @@
"symfony/yaml": "<4.4"
},
"require-dev": {
"doctrine/annotations": "^1.12",
"doctrine/annotations": "^1.12|^2",
"psr/log": "^1|^2|^3",
"symfony/config": "^5.3|^6.0",
"symfony/dependency-injection": "^4.4|^5.0|^6.0",
@ -5635,7 +5635,7 @@
"url"
],
"support": {
"source": "https://github.com/symfony/routing/tree/v5.4.8"
"source": "https://github.com/symfony/routing/tree/v5.4.19"
},
"funding": [
{
@ -5651,7 +5651,7 @@
"type": "tidelift"
}
],
"time": "2022-04-18T21:45:37+00:00"
"time": "2023-01-01T08:32:19+00:00"
},
{
"name": "symfony/service-contracts",
@ -5738,16 +5738,16 @@
},
{
"name": "symfony/string",
"version": "v5.4.15",
"version": "v5.4.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
"reference": "571334ce9f687e3e6af72db4d3b2a9431e4fd9ed"
"reference": "0a01071610fd861cc160dfb7e2682ceec66064cb"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/string/zipball/571334ce9f687e3e6af72db4d3b2a9431e4fd9ed",
"reference": "571334ce9f687e3e6af72db4d3b2a9431e4fd9ed",
"url": "https://api.github.com/repos/symfony/string/zipball/0a01071610fd861cc160dfb7e2682ceec66064cb",
"reference": "0a01071610fd861cc160dfb7e2682ceec66064cb",
"shasum": ""
},
"require": {
@ -5804,7 +5804,7 @@
"utf8"
],
"support": {
"source": "https://github.com/symfony/string/tree/v5.4.15"
"source": "https://github.com/symfony/string/tree/v5.4.19"
},
"funding": [
{
@ -5820,7 +5820,7 @@
"type": "tidelift"
}
],
"time": "2022-10-05T15:16:54+00:00"
"time": "2023-01-01T08:32:19+00:00"
},
{
"name": "symfony/translation",

17
vendor/autoload.php vendored
View file

@ -3,8 +3,21 @@
// autoload.php @generated by Composer
if (PHP_VERSION_ID < 50600) {
echo 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL;
exit(1);
if (!headers_sent()) {
header('HTTP/1.1 500 Internal Server Error');
}
$err = 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL;
if (!ini_get('display_errors')) {
if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') {
fwrite(STDERR, $err);
} elseif (!headers_sent()) {
echo $err;
}
}
trigger_error(
$err,
E_USER_ERROR
);
}
require_once __DIR__ . '/composer/autoload_real.php';

View file

@ -2,9 +2,8 @@ name: CI
on:
push:
branches:
- '*'
- '!main'
branches-ignore:
- 'main'
env:
BUILDER_VERSION: v0.8.18
@ -34,7 +33,7 @@ jobs:
- name: Install ancient PHPUnit
run: composer require --dev --ignore-platform-reqs phpunit/phpunit "4.8.36"
- name: Install depedencies
- name: Install dependencies
run: composer update --no-interaction
- name: Build for PHP 5.5
@ -72,7 +71,7 @@ jobs:
with:
submodules: recursive
- name: Install depedencies
- name: Install dependencies
run: composer update --no-interaction
- name: Run tests
@ -138,6 +137,18 @@ jobs:
matrix:
version: [10.15]
steps:
# Force PHP to 8.0
# Doing this because tests fail in PHP 8.1 (default on macos Github Runner as of Dec 2021)
# due to the old version of PHPUnit we're using.
# We're using an old PHPUnit because it's compatible our min supported PHP 5.5.
# Quick fix is to force PHP version back to 8.0, which can still run our tests without error.
# A real solution is to get our tests working on all PHP versions
# (maybe don't use PHPUnit, maybe raise our min supported PHP version so we can upgrade,
# or maybe use PHPUnit-Polyfills so we can use a modern PHPUnit with old PHP)
- name: Setup PHP 8.0
uses: shivammathur/setup-php@v2
with:
php-version: '8.0'
- name: Build PHP 8 extension and test
run: |
python3 -c "from urllib.request import urlretrieve; urlretrieve('${{ env.BUILDER_HOST }}/${{ env.BUILDER_SOURCE }}/${{ env.BUILDER_VERSION }}/builder.pyz?run=${{ env.RUN }}', 'builder')"

View file

@ -51,6 +51,13 @@ C:\php-sdk\php-<version>\vc15\x64\php-src
$ nmake test-awscrt
```
Note: for VS2017, Cmake will default to build for Win32, refer to [here](https://cmake.org/cmake/help/latest/generator/Visual%20Studio%2015%202017.html). If you are building for x64 php, you can set environment variable as follow to let cmake pick x64 compiler.
```bat
set CMAKE_GENERATOR=Visual Studio 15 2017
set CMAKE_GENERATOR_PLATFORM=x64
```
## Debugging
Using [PHPBrew](https://github.com/phpbrew/phpbrew) to build/manage multiple versions of PHP is helpful.

View file

@ -18,7 +18,7 @@
"php": ">=5.5"
},
"require-dev": {
"phpunit/phpunit":"^4.8.35|^5.4.3"
"phpunit/phpunit":"^4.8.35|^5.6.3"
},
"autoload": {
"classmap": [

View file

@ -6,7 +6,7 @@ if (PHP_AWSCRT != "no") {
ADD_MAKEFILE_FRAGMENT();
DEFINE('CFLAGS_AWSCRT', '/I ' + configure_module_dirname + '\\build\\install\\include');
DEFINE('LIBS_AWSCRT', '/LIBPATH:' + configure_module_dirname + '\\build\\install\\lib ' +
'aws-crt-ffi.lib aws-c-auth.lib aws-c-http.lib aws-c-io.lib aws-c-cal.lib aws-c-compression.lib aws-c-common.lib ' +
'aws-crt-ffi.lib aws-c-auth.lib aws-c-http.lib aws-c-io.lib aws-c-cal.lib aws-c-compression.lib aws-checksums.lib aws-c-common.lib ' +
'ncrypt.lib Secur32.lib Crypt32.lib Shlwapi.lib');
DEFINE('AWSCRT_DIR', configure_module_dirname);
EXTENSION("awscrt", "ext\\awscrt.c", PHP_AWSCRT_SHARED);

View file

@ -24,7 +24,7 @@
"ext-pcre": "*",
"ext-json": "*",
"ext-simplexml": "*",
"aws/aws-crt-php": "^1.0.2"
"aws/aws-crt-php": "^1.0.4"
},
"require-dev": {
"composer/composer" : "^1.10.22",
@ -70,3 +70,4 @@
}
}
}

View file

@ -0,0 +1,21 @@
<?php
namespace Aws\ARCZonalShift;
use Aws\AwsClient;
/**
* This client is used to interact with the **AWS ARC - Zonal Shift** service.
* @method \Aws\Result cancelZonalShift(array $args = [])
* @method \GuzzleHttp\Promise\Promise cancelZonalShiftAsync(array $args = [])
* @method \Aws\Result getManagedResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise getManagedResourceAsync(array $args = [])
* @method \Aws\Result listManagedResources(array $args = [])
* @method \GuzzleHttp\Promise\Promise listManagedResourcesAsync(array $args = [])
* @method \Aws\Result listZonalShifts(array $args = [])
* @method \GuzzleHttp\Promise\Promise listZonalShiftsAsync(array $args = [])
* @method \Aws\Result startZonalShift(array $args = [])
* @method \GuzzleHttp\Promise\Promise startZonalShiftAsync(array $args = [])
* @method \Aws\Result updateZonalShift(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateZonalShiftAsync(array $args = [])
*/
class ARCZonalShiftClient extends AwsClient {}

View file

@ -0,0 +1,9 @@
<?php
namespace Aws\ARCZonalShift\Exception;
use Aws\Exception\AwsException;
/**
* Represents an error interacting with the **AWS ARC - Zonal Shift** service.
*/
class ARCZonalShiftException extends AwsException {}

View file

@ -7,10 +7,18 @@ use Aws\AwsClient;
* This client is used to interact with the **AWS Account** service.
* @method \Aws\Result deleteAlternateContact(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteAlternateContactAsync(array $args = [])
* @method \Aws\Result disableRegion(array $args = [])
* @method \GuzzleHttp\Promise\Promise disableRegionAsync(array $args = [])
* @method \Aws\Result enableRegion(array $args = [])
* @method \GuzzleHttp\Promise\Promise enableRegionAsync(array $args = [])
* @method \Aws\Result getAlternateContact(array $args = [])
* @method \GuzzleHttp\Promise\Promise getAlternateContactAsync(array $args = [])
* @method \Aws\Result getContactInformation(array $args = [])
* @method \GuzzleHttp\Promise\Promise getContactInformationAsync(array $args = [])
* @method \Aws\Result getRegionOptStatus(array $args = [])
* @method \GuzzleHttp\Promise\Promise getRegionOptStatusAsync(array $args = [])
* @method \Aws\Result listRegions(array $args = [])
* @method \GuzzleHttp\Promise\Promise listRegionsAsync(array $args = [])
* @method \Aws\Result putAlternateContact(array $args = [])
* @method \GuzzleHttp\Promise\Promise putAlternateContactAsync(array $args = [])
* @method \Aws\Result putContactInformation(array $args = [])

View file

@ -12,6 +12,9 @@ abstract class AbstractModel implements \ArrayAccess
/** @var ShapeMap */
protected $shapeMap;
/** @var array */
protected $contextParam;
/**
* @param array $definition Service description
* @param ShapeMap $shapeMap Shapemap used for creating shapes
@ -20,6 +23,9 @@ abstract class AbstractModel implements \ArrayAccess
{
$this->definition = $definition;
$this->shapeMap = $shapeMap;
if (isset($definition['contextParam'])) {
$this->contextParam = $definition['contextParam'];
}
}
public function toArray()

View file

@ -97,8 +97,18 @@ class DocModel
}
if (isset($d['append'])) {
if (!isset($d['excludeAppend'])
|| !in_array($parentName, $d['excludeAppend'])
) {
$result .= $d['append'];
}
}
if (isset($d['appendOnly'])
&& in_array($parentName, $d['appendOnly']['shapes'])
) {
$result .= $d['appendOnly']['message'];
}
return $this->clean($result);
}

View file

@ -9,6 +9,8 @@ class Operation extends AbstractModel
private $input;
private $output;
private $errors;
private $staticContextParams = [];
private $contextParams;
public function __construct(array $definition, ShapeMap $shapeMap)
{
@ -22,7 +24,12 @@ class Operation extends AbstractModel
$definition['http']['requestUri'] = '/';
}
if (isset($definition['staticContextParams'])) {
$this->staticContextParams = $definition['staticContextParams'];
}
parent::__construct($definition, $shapeMap);
$this->contextParams = $this->setContextParams();
}
/**
@ -94,4 +101,42 @@ class Operation extends AbstractModel
return $this->errors;
}
/**
* Gets static modeled static values used for
* endpoint resolution.
*
* @return array
*/
public function getStaticContextParams()
{
return $this->staticContextParams;
}
/**
* Gets definition of modeled dynamic values used
* for endpoint resolution
*
* @return array
*/
public function getContextParams()
{
return $this->contextParams;
}
private function setContextParams()
{
$members = $this->getInput()->getMembers();
$contextParams = [];
foreach($members as $name => $shape) {
if (!empty($contextParam = $shape->getContextParam())) {
$contextParams[$contextParam['name']] = [
'shape' => $name,
'type' => $shape->getType()
];
}
}
return $contextParams;
}
}

View file

@ -3,6 +3,8 @@ namespace Aws\Api\Serializer;
use Aws\Api\Service;
use Aws\CommandInterface;
use Aws\EndpointV2\EndpointProviderV2;
use Aws\EndpointV2\EndpointV2SerializerTrait;
use GuzzleHttp\Psr7\Request;
use Psr\Http\Message\RequestInterface;
@ -12,6 +14,8 @@ use Psr\Http\Message\RequestInterface;
*/
class JsonRpcSerializer
{
use EndpointV2SerializerTrait;
/** @var JsonBody */
private $jsonFormatter;
@ -44,25 +48,44 @@ class JsonRpcSerializer
* When invoked with an AWS command, returns a serialization array
* containing "method", "uri", "headers", and "body" key value pairs.
*
* @param CommandInterface $command
* @param CommandInterface $command Command to serialize into a request.
* @param $endpointProvider Provider used for dynamic endpoint resolution.
* @param $clientArgs Client arguments used for dynamic endpoint resolution.
*
* @return RequestInterface
*/
public function __invoke(CommandInterface $command)
public function __invoke(
CommandInterface $command,
$endpointProvider = null,
$clientArgs = null
)
{
$name = $command->getName();
$operation = $this->api->getOperation($name);
$operationName = $command->getName();
$operation = $this->api->getOperation($operationName);
$commandArgs = $command->toArray();
$headers = [
'X-Amz-Target' => $this->api->getMetadata('targetPrefix') . '.' . $operationName,
'Content-Type' => $this->contentType
];
if ($endpointProvider instanceof EndpointProviderV2) {
$this->setRequestOptions(
$endpointProvider,
$command,
$operation,
$commandArgs,
$clientArgs,
$headers
);
}
return new Request(
$operation['http']['method'],
$this->endpoint,
[
'X-Amz-Target' => $this->api->getMetadata('targetPrefix') . '.' . $name,
'Content-Type' => $this->contentType
],
$headers,
$this->jsonFormatter->build(
$operation->getInput(),
$command->toArray()
$commandArgs
)
);
}

View file

@ -3,6 +3,8 @@ namespace Aws\Api\Serializer;
use Aws\Api\Service;
use Aws\CommandInterface;
use Aws\EndpointV2\EndpointProviderV2;
use Aws\EndpointV2\EndpointV2SerializerTrait;
use GuzzleHttp\Psr7\Request;
use Psr\Http\Message\RequestInterface;
@ -12,6 +14,8 @@ use Psr\Http\Message\RequestInterface;
*/
class QuerySerializer
{
use EndpointV2SerializerTrait;
private $endpoint;
private $api;
private $paramBuilder;
@ -30,39 +34,54 @@ class QuerySerializer
* When invoked with an AWS command, returns a serialization array
* containing "method", "uri", "headers", and "body" key value pairs.
*
* @param CommandInterface $command
* @param CommandInterface $command Command to serialize into a request.
* @param $endpointProvider Provider used for dynamic endpoint resolution.
* @param $clientArgs Client arguments used for dynamic endpoint resolution.
*
* @return RequestInterface
*/
public function __invoke(CommandInterface $command)
public function __invoke(
CommandInterface $command,
$endpointProvider = null,
$clientArgs = null
)
{
$operation = $this->api->getOperation($command->getName());
$body = [
'Action' => $command->getName(),
'Version' => $this->api->getMetadata('apiVersion')
];
$params = $command->toArray();
$commandArgs = $command->toArray();
// Only build up the parameters when there are parameters to build
if ($params) {
if ($commandArgs) {
$body += call_user_func(
$this->paramBuilder,
$operation->getInput(),
$params
$commandArgs
);
}
$body = http_build_query($body, '', '&', PHP_QUERY_RFC3986);
$headers = [
'Content-Length' => strlen($body),
'Content-Type' => 'application/x-www-form-urlencoded'
];
if ($endpointProvider instanceof EndpointProviderV2) {
$this->setRequestOptions(
$endpointProvider,
$command,
$operation,
$commandArgs,
$clientArgs,
$headers
);
}
return new Request(
'POST',
$this->endpoint,
[
'Content-Length' => strlen($body),
'Content-Type' => 'application/x-www-form-urlencoded'
],
$headers,
$body
);
}

View file

@ -8,7 +8,10 @@ use Aws\Api\Shape;
use Aws\Api\StructureShape;
use Aws\Api\TimestampShape;
use Aws\CommandInterface;
use Aws\EndpointV2\EndpointProviderV2;
use Aws\EndpointV2\EndpointV2SerializerTrait;
use GuzzleHttp\Psr7;
use GuzzleHttp\Psr7\Request;
use GuzzleHttp\Psr7\Uri;
use GuzzleHttp\Psr7\UriResolver;
use Psr\Http\Message\RequestInterface;
@ -19,10 +22,12 @@ use Psr\Http\Message\RequestInterface;
*/
abstract class RestSerializer
{
use EndpointV2SerializerTrait;
/** @var Service */
private $api;
/** @var Psr7\Uri */
/** @var Uri */
private $endpoint;
/**
@ -36,21 +41,40 @@ abstract class RestSerializer
}
/**
* @param CommandInterface $command Command to serialized
* @param CommandInterface $command Command to serialize into a request.
* @param $endpointProvider Provider used for dynamic endpoint resolution.
* @param $clientArgs Client arguments used for dynamic endpoint resolution.
*
* @return RequestInterface
*/
public function __invoke(CommandInterface $command)
public function __invoke(
CommandInterface $command,
$endpointProvider = null,
$clientArgs = null
)
{
$operation = $this->api->getOperation($command->getName());
$args = $command->toArray();
$opts = $this->serialize($operation, $args);
$uri = $this->buildEndpoint($operation, $args, $opts);
$commandArgs = $command->toArray();
$opts = $this->serialize($operation, $commandArgs);
$headers = isset($opts['headers']) ? $opts['headers'] : [];
return new Psr7\Request(
if ($endpointProvider instanceof EndpointProviderV2) {
$this->setRequestOptions(
$endpointProvider,
$command,
$operation,
$commandArgs,
$clientArgs,
$headers
);
$this->endpoint = new Uri($this->endpoint);
}
$uri = $this->buildEndpoint($operation, $commandArgs, $opts);
return new Request(
$operation['http']['method'],
$uri,
isset($opts['headers']) ? $opts['headers'] : [],
$headers,
isset($opts['body']) ? $opts['body'] : null
);
}
@ -181,48 +205,57 @@ abstract class RestSerializer
private function buildEndpoint(Operation $operation, array $args, array $opts)
{
$varspecs = [];
// Create an associative array of varspecs used in expansions
foreach ($operation->getInput()->getMembers() as $name => $member) {
if ($member['location'] == 'uri') {
$varspecs[$member['locationName'] ?: $name] =
isset($args[$name])
? $args[$name]
: null;
}
}
// Create an associative array of variable definitions used in expansions
$varDefinitions = $this->getVarDefinitions($operation, $args);
$relative = preg_replace_callback(
'/\{([^\}]+)\}/',
function (array $matches) use ($varspecs) {
function (array $matches) use ($varDefinitions) {
$isGreedy = substr($matches[1], -1, 1) == '+';
$k = $isGreedy ? substr($matches[1], 0, -1) : $matches[1];
if (!isset($varspecs[$k])) {
if (!isset($varDefinitions[$k])) {
return '';
}
if ($isGreedy) {
return str_replace('%2F', '/', rawurlencode($varspecs[$k]));
return str_replace('%2F', '/', rawurlencode($varDefinitions[$k]));
}
return rawurlencode($varspecs[$k]);
return rawurlencode($varDefinitions[$k]);
},
$operation['http']['requestUri']
);
// Add the query string variables or appending to one if needed.
if (!empty($opts['query'])) {
$append = Psr7\Query::build($opts['query']);
$relative .= strpos($relative, '?') ? "&{$append}" : "?$append";
$relative = $this->appendQuery($opts['query'], $relative);
}
// If endpoint has path, remove leading '/' to preserve URI resolution.
$path = $this->endpoint->getPath();
//Accounts for trailing '/' in path when custom endpoint
//is provided to endpointProviderV2
if ($this->api->isModifiedModel()
&& $this->api->getServiceName() === 's3'
) {
if (substr($path, -1) === '/' && $relative[0] === '/') {
$path = rtrim($path, '/');
}
$relative = $path . $relative;
}
// If endpoint has path, remove leading '/' to preserve URI resolution.
if ($path && $relative[0] === '/') {
$relative = substr($relative, 1);
}
//Append path to endpoint when leading '//...' present
// as uri cannot be properly resolved
if ($this->api->isModifiedModel()
&& strpos($relative, '//') === 0
) {
return new Uri($this->endpoint . $relative);
}
// Expand path place holders using Amazon's slightly different URI
// template syntax.
return UriResolver::resolve($this->endpoint, new Uri($relative));
@ -250,4 +283,25 @@ abstract class RestSerializer
}
return false;
}
private function appendQuery($query, $endpoint)
{
$append = Psr7\Query::build($query);
return $endpoint .= strpos($endpoint, '?') !== false ? "&{$append}" : "?{$append}";
}
private function getVarDefinitions($command, $args)
{
$varDefinitions = [];
foreach ($command->getInput()->getMembers() as $name => $member) {
if ($member['location'] == 'uri') {
$varDefinitions[$member['locationName'] ?: $name] =
isset($args[$name])
? $args[$name]
: null;
}
}
return $varDefinitions;
}
}

View file

@ -19,6 +19,9 @@ class Service extends AbstractModel
/** @var string */
private $apiVersion;
/** @var array */
private $clientContextParams = [];
/** @var Operation[] */
private $operations = [];
@ -28,6 +31,9 @@ class Service extends AbstractModel
/** @var array */
private $waiters = null;
/** @var boolean */
private $modifiedModel = false;
/**
* @param array $definition
* @param callable $provider
@ -39,7 +45,8 @@ class Service extends AbstractModel
static $defaults = [
'operations' => [],
'shapes' => [],
'metadata' => []
'metadata' => [],
'clientContextParams' => []
], $defaultMeta = [
'apiVersion' => null,
'serviceFullName' => null,
@ -62,8 +69,10 @@ class Service extends AbstractModel
} else {
$this->serviceName = $this->getEndpointPrefix();
}
$this->apiVersion = $this->getApiVersion();
if (isset($definition['clientContextParams'])) {
$this->clientContextParams = $definition['clientContextParams'];
}
}
/**
@ -279,6 +288,11 @@ class Service extends AbstractModel
$this->definition['operations'][$name],
$this->shapeMap
);
} else if ($this->modifiedModel) {
$this->operations[$name] = new Operation(
$this->definition['operations'][$name],
$this->shapeMap
);
}
return $this->operations[$name];
@ -465,4 +479,61 @@ class Service extends AbstractModel
{
return $this->shapeMap;
}
/**
* Get all the context params of the description.
*
* @return array
*/
public function getClientContextParams()
{
return $this->clientContextParams;
}
/**
* Get the service's api provider.
*
* @return callable
*/
public function getProvider()
{
return $this->apiProvider;
}
/**
* Get the service's definition.
*
* @return callable
*/
public function getDefinition()
{
return $this->definition;
}
/**
* Sets the service's api definition.
* Intended for internal use only.
*
* @return void
*
* @internal
*/
public function setDefinition($definition)
{
$this->definition = $definition;
$this->modifiedModel = true;
}
/**
* Denotes whether or not a service's definition has
* been modified. Intended for internal use only.
*
* @return bool
*
* @internal
*/
public function isModifiedModel()
{
return $this->modifiedModel;
}
}

View file

@ -66,4 +66,12 @@ class Shape extends AbstractModel
{
return $this->definition['name'];
}
/**
* Get a context param definition.
*/
public function getContextParam()
{
return $this->contextParam;
}
}

View file

@ -27,6 +27,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getAssociatedResourceAsync(array $args = [])
* @method \Aws\Result getAttributeGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise getAttributeGroupAsync(array $args = [])
* @method \Aws\Result getConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getConfigurationAsync(array $args = [])
* @method \Aws\Result listApplications(array $args = [])
* @method \GuzzleHttp\Promise\Promise listApplicationsAsync(array $args = [])
* @method \Aws\Result listAssociatedAttributeGroups(array $args = [])
@ -39,6 +41,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listAttributeGroupsForApplicationAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result putConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise putConfigurationAsync(array $args = [])
* @method \Aws\Result syncResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise syncResourceAsync(array $args = [])
* @method \Aws\Result tagResource(array $args = [])

View file

@ -41,6 +41,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise deleteTypeAsync(array $args = [])
* @method \Aws\Result disassociateApi(array $args = [])
* @method \GuzzleHttp\Promise\Promise disassociateApiAsync(array $args = [])
* @method \Aws\Result evaluateCode(array $args = [])
* @method \GuzzleHttp\Promise\Promise evaluateCodeAsync(array $args = [])
* @method \Aws\Result evaluateMappingTemplate(array $args = [])
* @method \GuzzleHttp\Promise\Promise evaluateMappingTemplateAsync(array $args = [])
* @method \Aws\Result flushApiCache(array $args = [])

View file

@ -47,6 +47,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
* @method \Aws\Result updateConnectorProfile(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateConnectorProfileAsync(array $args = [])
* @method \Aws\Result updateConnectorRegistration(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateConnectorRegistrationAsync(array $args = [])
* @method \Aws\Result updateFlow(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateFlowAsync(array $args = [])
*/

View file

@ -15,24 +15,40 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise createDataCatalogAsync(array $args = [])
* @method \Aws\Result createNamedQuery(array $args = [])
* @method \GuzzleHttp\Promise\Promise createNamedQueryAsync(array $args = [])
* @method \Aws\Result createNotebook(array $args = [])
* @method \GuzzleHttp\Promise\Promise createNotebookAsync(array $args = [])
* @method \Aws\Result createPreparedStatement(array $args = [])
* @method \GuzzleHttp\Promise\Promise createPreparedStatementAsync(array $args = [])
* @method \Aws\Result createPresignedNotebookUrl(array $args = [])
* @method \GuzzleHttp\Promise\Promise createPresignedNotebookUrlAsync(array $args = [])
* @method \Aws\Result createWorkGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise createWorkGroupAsync(array $args = [])
* @method \Aws\Result deleteDataCatalog(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteDataCatalogAsync(array $args = [])
* @method \Aws\Result deleteNamedQuery(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteNamedQueryAsync(array $args = [])
* @method \Aws\Result deleteNotebook(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteNotebookAsync(array $args = [])
* @method \Aws\Result deletePreparedStatement(array $args = [])
* @method \GuzzleHttp\Promise\Promise deletePreparedStatementAsync(array $args = [])
* @method \Aws\Result deleteWorkGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteWorkGroupAsync(array $args = [])
* @method \Aws\Result exportNotebook(array $args = [])
* @method \GuzzleHttp\Promise\Promise exportNotebookAsync(array $args = [])
* @method \Aws\Result getCalculationExecution(array $args = [])
* @method \GuzzleHttp\Promise\Promise getCalculationExecutionAsync(array $args = [])
* @method \Aws\Result getCalculationExecutionCode(array $args = [])
* @method \GuzzleHttp\Promise\Promise getCalculationExecutionCodeAsync(array $args = [])
* @method \Aws\Result getCalculationExecutionStatus(array $args = [])
* @method \GuzzleHttp\Promise\Promise getCalculationExecutionStatusAsync(array $args = [])
* @method \Aws\Result getDataCatalog(array $args = [])
* @method \GuzzleHttp\Promise\Promise getDataCatalogAsync(array $args = [])
* @method \Aws\Result getDatabase(array $args = [])
* @method \GuzzleHttp\Promise\Promise getDatabaseAsync(array $args = [])
* @method \Aws\Result getNamedQuery(array $args = [])
* @method \GuzzleHttp\Promise\Promise getNamedQueryAsync(array $args = [])
* @method \Aws\Result getNotebookMetadata(array $args = [])
* @method \GuzzleHttp\Promise\Promise getNotebookMetadataAsync(array $args = [])
* @method \Aws\Result getPreparedStatement(array $args = [])
* @method \GuzzleHttp\Promise\Promise getPreparedStatementAsync(array $args = [])
* @method \Aws\Result getQueryExecution(array $args = [])
@ -41,40 +57,70 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getQueryResultsAsync(array $args = [])
* @method \Aws\Result getQueryRuntimeStatistics(array $args = [])
* @method \GuzzleHttp\Promise\Promise getQueryRuntimeStatisticsAsync(array $args = [])
* @method \Aws\Result getSession(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSessionAsync(array $args = [])
* @method \Aws\Result getSessionStatus(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSessionStatusAsync(array $args = [])
* @method \Aws\Result getTableMetadata(array $args = [])
* @method \GuzzleHttp\Promise\Promise getTableMetadataAsync(array $args = [])
* @method \Aws\Result getWorkGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise getWorkGroupAsync(array $args = [])
* @method \Aws\Result importNotebook(array $args = [])
* @method \GuzzleHttp\Promise\Promise importNotebookAsync(array $args = [])
* @method \Aws\Result listApplicationDPUSizes(array $args = [])
* @method \GuzzleHttp\Promise\Promise listApplicationDPUSizesAsync(array $args = [])
* @method \Aws\Result listCalculationExecutions(array $args = [])
* @method \GuzzleHttp\Promise\Promise listCalculationExecutionsAsync(array $args = [])
* @method \Aws\Result listDataCatalogs(array $args = [])
* @method \GuzzleHttp\Promise\Promise listDataCatalogsAsync(array $args = [])
* @method \Aws\Result listDatabases(array $args = [])
* @method \GuzzleHttp\Promise\Promise listDatabasesAsync(array $args = [])
* @method \Aws\Result listEngineVersions(array $args = [])
* @method \GuzzleHttp\Promise\Promise listEngineVersionsAsync(array $args = [])
* @method \Aws\Result listExecutors(array $args = [])
* @method \GuzzleHttp\Promise\Promise listExecutorsAsync(array $args = [])
* @method \Aws\Result listNamedQueries(array $args = [])
* @method \GuzzleHttp\Promise\Promise listNamedQueriesAsync(array $args = [])
* @method \Aws\Result listNotebookMetadata(array $args = [])
* @method \GuzzleHttp\Promise\Promise listNotebookMetadataAsync(array $args = [])
* @method \Aws\Result listNotebookSessions(array $args = [])
* @method \GuzzleHttp\Promise\Promise listNotebookSessionsAsync(array $args = [])
* @method \Aws\Result listPreparedStatements(array $args = [])
* @method \GuzzleHttp\Promise\Promise listPreparedStatementsAsync(array $args = [])
* @method \Aws\Result listQueryExecutions(array $args = [])
* @method \GuzzleHttp\Promise\Promise listQueryExecutionsAsync(array $args = [])
* @method \Aws\Result listSessions(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSessionsAsync(array $args = [])
* @method \Aws\Result listTableMetadata(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTableMetadataAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result listWorkGroups(array $args = [])
* @method \GuzzleHttp\Promise\Promise listWorkGroupsAsync(array $args = [])
* @method \Aws\Result startCalculationExecution(array $args = [])
* @method \GuzzleHttp\Promise\Promise startCalculationExecutionAsync(array $args = [])
* @method \Aws\Result startQueryExecution(array $args = [])
* @method \GuzzleHttp\Promise\Promise startQueryExecutionAsync(array $args = [])
* @method \Aws\Result startSession(array $args = [])
* @method \GuzzleHttp\Promise\Promise startSessionAsync(array $args = [])
* @method \Aws\Result stopCalculationExecution(array $args = [])
* @method \GuzzleHttp\Promise\Promise stopCalculationExecutionAsync(array $args = [])
* @method \Aws\Result stopQueryExecution(array $args = [])
* @method \GuzzleHttp\Promise\Promise stopQueryExecutionAsync(array $args = [])
* @method \Aws\Result tagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
* @method \Aws\Result terminateSession(array $args = [])
* @method \GuzzleHttp\Promise\Promise terminateSessionAsync(array $args = [])
* @method \Aws\Result untagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
* @method \Aws\Result updateDataCatalog(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateDataCatalogAsync(array $args = [])
* @method \Aws\Result updateNamedQuery(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateNamedQueryAsync(array $args = [])
* @method \Aws\Result updateNotebook(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateNotebookAsync(array $args = [])
* @method \Aws\Result updateNotebookMetadata(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateNotebookMetadataAsync(array $args = [])
* @method \Aws\Result updatePreparedStatement(array $args = [])
* @method \GuzzleHttp\Promise\Promise updatePreparedStatementAsync(array $args = [])
* @method \Aws\Result updateWorkGroup(array $args = [])

View file

@ -12,6 +12,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise attachLoadBalancerTargetGroupsAsync(array $args = [])
* @method \Aws\Result attachLoadBalancers(array $args = [])
* @method \GuzzleHttp\Promise\Promise attachLoadBalancersAsync(array $args = [])
* @method \Aws\Result attachTrafficSources(array $args = [])
* @method \GuzzleHttp\Promise\Promise attachTrafficSourcesAsync(array $args = [])
* @method \Aws\Result batchDeleteScheduledAction(array $args = [])
* @method \GuzzleHttp\Promise\Promise batchDeleteScheduledActionAsync(array $args = [])
* @method \Aws\Result batchPutScheduledUpdateGroupAction(array $args = [])
@ -80,6 +82,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise describeTagsAsync(array $args = [])
* @method \Aws\Result describeTerminationPolicyTypes(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeTerminationPolicyTypesAsync(array $args = [])
* @method \Aws\Result describeTrafficSources(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeTrafficSourcesAsync(array $args = [])
* @method \Aws\Result describeWarmPool(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeWarmPoolAsync(array $args = [])
* @method \Aws\Result detachInstances(array $args = [])
@ -88,6 +92,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise detachLoadBalancerTargetGroupsAsync(array $args = [])
* @method \Aws\Result detachLoadBalancers(array $args = [])
* @method \GuzzleHttp\Promise\Promise detachLoadBalancersAsync(array $args = [])
* @method \Aws\Result detachTrafficSources(array $args = [])
* @method \GuzzleHttp\Promise\Promise detachTrafficSourcesAsync(array $args = [])
* @method \Aws\Result disableMetricsCollection(array $args = [])
* @method \GuzzleHttp\Promise\Promise disableMetricsCollectionAsync(array $args = [])
* @method \Aws\Result enableMetricsCollection(array $args = [])
@ -114,6 +120,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise recordLifecycleActionHeartbeatAsync(array $args = [])
* @method \Aws\Result resumeProcesses(array $args = [])
* @method \GuzzleHttp\Promise\Promise resumeProcessesAsync(array $args = [])
* @method \Aws\Result rollbackInstanceRefresh(array $args = [])
* @method \GuzzleHttp\Promise\Promise rollbackInstanceRefreshAsync(array $args = [])
* @method \Aws\Result setDesiredCapacity(array $args = [])
* @method \GuzzleHttp\Promise\Promise setDesiredCapacityAsync(array $args = [])
* @method \Aws\Result setInstanceHealth(array $args = [])

View file

@ -4,10 +4,8 @@ namespace Aws;
use Aws\Api\ApiProvider;
use Aws\Api\DocModel;
use Aws\Api\Service;
use Aws\ClientSideMonitoring\ApiCallAttemptMonitoringMiddleware;
use Aws\ClientSideMonitoring\ApiCallMonitoringMiddleware;
use Aws\ClientSideMonitoring\ConfigurationProvider;
use Aws\EndpointDiscovery\EndpointDiscoveryMiddleware;
use Aws\EndpointV2\EndpointProviderV2;
use Aws\Signature\SignatureProvider;
use GuzzleHttp\Psr7\Uri;
@ -39,12 +37,27 @@ class AwsClient implements AwsClientInterface
/** @var callable */
private $credentialProvider;
/** @var callable */
private $tokenProvider;
/** @var HandlerList */
private $handlerList;
/** @var array*/
private $defaultRequestOptions;
/** @var array*/
private $clientContextParams = [];
/** @var array*/
protected $clientBuiltIns = [];
/** @var EndpointProviderV2 | callable */
protected $endpointProvider;
/** @var callable */
protected $serializer;
/**
* Get an array of client constructor arguments used by the client.
*
@ -71,6 +84,15 @@ class AwsClient implements AwsClientInterface
* credentials or return null. See Aws\Credentials\CredentialProvider for
* a list of built-in credentials providers. If no credentials are
* provided, the SDK will attempt to load them from the environment.
* - token:
* (Aws\Token\TokenInterface|array|bool|callable) Specifies
* the token used to authorize requests. Provide an
* Aws\Token\TokenInterface object, an associative array of
* "token" and an optional "expires" key, `false` to use no
* token, or a callable token provider used to create a
* token or return null. See Aws\Token\TokenProvider for
* a list of built-in token providers. If no token is
* provided, the SDK will attempt to load one from the environment.
* - csm:
* (Aws\ClientSideMonitoring\ConfigurationInterface|array|callable) Specifies
* the credentials used to sign requests. Provide an
@ -201,9 +223,14 @@ class AwsClient implements AwsClientInterface
$this->signatureProvider = $config['signature_provider'];
$this->endpoint = new Uri($config['endpoint']);
$this->credentialProvider = $config['credentials'];
$this->tokenProvider = $config['token'];
$this->region = isset($config['region']) ? $config['region'] : null;
$this->config = $config['config'];
$this->setClientBuiltIns($args);
$this->clientContextParams = $this->setClientContextParams($args);
$this->defaultRequestOptions = $config['http'];
$this->endpointProvider = $config['endpoint_provider'];
$this->serializer = $config['serializer'];
$this->addSignatureMiddleware();
$this->addInvocationId();
$this->addEndpointParameterMiddleware($args);
@ -211,6 +238,7 @@ class AwsClient implements AwsClientInterface
$this->loadAliases();
$this->addStreamRequestPayload();
$this->addRecursionDetection();
$this->addRequestBuilder();
if (isset($args['with_resolved'])) {
$args['with_resolved']($config);
@ -237,6 +265,7 @@ class AwsClient implements AwsClientInterface
return $fn();
}
public function getEndpoint()
{
return $this->endpoint;
@ -271,6 +300,33 @@ class AwsClient implements AwsClientInterface
return new Command($name, $args, clone $this->getHandlerList());
}
public function getEndpointProvider()
{
return $this->endpointProvider;
}
/**
* Provides the set of service context parameter
* key-value pairs used for endpoint resolution.
*
* @return array
*/
public function getClientContextParams()
{
return $this->clientContextParams;
}
/**
* Provides the set of built-in keys and values
* used for endpoint resolution
*
* @return array
*/
public function getClientBuiltIns()
{
return $this->clientBuiltIns;
}
public function __sleep()
{
throw new \RuntimeException('Instances of ' . static::class
@ -355,6 +411,7 @@ class AwsClient implements AwsClientInterface
if (!empty($c['@context']['signing_service'])) {
$name = $c['@context']['signing_service'];
}
$authType = $api->getOperation($c->getName())['authtype'];
switch ($authType){
case 'none':
@ -363,16 +420,26 @@ class AwsClient implements AwsClientInterface
case 'v4-unsigned-body':
$version = 'v4-unsigned-body';
break;
case 'bearer':
$version = 'bearer';
break;
}
if (isset($c['@context']['signature_version'])) {
if ($c['@context']['signature_version'] == 'v4a') {
$version = 'v4a';
}
}
if (!empty($endpointAuthSchemes = $c->getAuthSchemes())) {
$version = $endpointAuthSchemes['version'];
$name = isset($endpointAuthSchemes['name']) ?
$endpointAuthSchemes['name'] : $name;
$region = isset($endpointAuthSchemes['region']) ?
$endpointAuthSchemes['region'] : $region;
}
return SignatureProvider::resolve($provider, $version, $name, $region);
};
$this->handlerList->appendSign(
Middleware::signer($this->credentialProvider, $resolver),
Middleware::signer($this->credentialProvider, $resolver, $this->tokenProvider),
'signer'
);
}
@ -419,6 +486,108 @@ class AwsClient implements AwsClientInterface
);
}
/**
* Adds the `builder` middleware such that a client's endpoint
* provider and endpoint resolution arguments can be passed.
*/
private function addRequestBuilder()
{
$handlerList = $this->getHandlerList();
$serializer = $this->serializer;
$endpointProvider = $this->endpointProvider;
$endpointArgs = $this->getEndpointProviderArgs();
$handlerList->prependBuild(
Middleware::requestBuilder(
$serializer,
$endpointProvider,
$endpointArgs
),
'builderV2'
);
}
/**
* Retrieves client context param definition from service model,
* creates mapping of client context param names with client-provided
* values.
*
* @return array
*/
private function setClientContextParams($args)
{
$api = $this->getApi();
$resolvedParams = [];
if (!empty($paramDefinitions = $api->getClientContextParams())) {
foreach($paramDefinitions as $paramName => $paramValue) {
if (isset($args[$paramName])) {
$result[$paramName] = $args[$paramName];
}
}
}
return $resolvedParams;
}
/**
* Retrieves and sets default values used for endpoint resolution.
*/
private function setClientBuiltIns($args)
{
$builtIns = [];
$config = $this->getConfig();
$service = $args['service'];
$builtIns['SDK::Endpoint'] = isset($args['endpoint']) ? $args['endpoint'] : null;
$builtIns['AWS::Region'] = $this->getRegion();
$builtIns['AWS::UseFIPS'] = $config['use_fips_endpoint']->isUseFipsEndpoint();
$builtIns['AWS::UseDualStack'] = $config['use_dual_stack_endpoint']->isUseDualstackEndpoint();
if ($service === 's3' || $service === 's3control'){
$builtIns['AWS::S3::UseArnRegion'] = $config['use_arn_region']->isUseArnRegion();
}
if ($service === 's3') {
$builtIns['AWS::S3::UseArnRegion'] = $config['use_arn_region']->isUseArnRegion();
$builtIns['AWS::S3::Accelerate'] = $config['use_accelerate_endpoint'];
$builtIns['AWS::S3::ForcePathStyle'] = $config['use_path_style_endpoint'];
$builtIns['AWS::S3::DisableMultiRegionAccessPoints'] = $config['disable_multiregion_access_points'];
}
$this->clientBuiltIns += $builtIns;
}
/**
* Retrieves arguments to be used in endpoint resolution.
*
* @return array
*/
public function getEndpointProviderArgs()
{
return $this->normalizeEndpointProviderArgs();
}
/**
* Combines built-in and client context parameter values in
* order of specificity. Client context parameter values supersede
* built-in values.
*
* @return array
*/
private function normalizeEndpointProviderArgs()
{
$normalizedBuiltIns = [];
foreach($this->clientBuiltIns as $name => $value) {
$normalizedName = explode('::', $name);
$normalizedName = $normalizedName[count($normalizedName) - 1];
$normalizedBuiltIns[$normalizedName] = $value;
}
return array_merge($normalizedBuiltIns, $this->getClientContextParams());
}
protected function isUseEndpointV2()
{
return $this->endpointProvider instanceof EndpointProviderV2;
}
/**
* Returns a service model and doc model with any necessary changes
* applied.

View file

@ -5,6 +5,8 @@ use Aws\AwsClient;
/**
* This client is used to interact with the **AWS Backup** service.
* @method \Aws\Result cancelLegalHold(array $args = [])
* @method \GuzzleHttp\Promise\Promise cancelLegalHoldAsync(array $args = [])
* @method \Aws\Result createBackupPlan(array $args = [])
* @method \GuzzleHttp\Promise\Promise createBackupPlanAsync(array $args = [])
* @method \Aws\Result createBackupSelection(array $args = [])
@ -13,6 +15,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise createBackupVaultAsync(array $args = [])
* @method \Aws\Result createFramework(array $args = [])
* @method \GuzzleHttp\Promise\Promise createFrameworkAsync(array $args = [])
* @method \Aws\Result createLegalHold(array $args = [])
* @method \GuzzleHttp\Promise\Promise createLegalHoldAsync(array $args = [])
* @method \Aws\Result createReportPlan(array $args = [])
* @method \GuzzleHttp\Promise\Promise createReportPlanAsync(array $args = [])
* @method \Aws\Result deleteBackupPlan(array $args = [])
@ -57,6 +61,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise describeRestoreJobAsync(array $args = [])
* @method \Aws\Result disassociateRecoveryPoint(array $args = [])
* @method \GuzzleHttp\Promise\Promise disassociateRecoveryPointAsync(array $args = [])
* @method \Aws\Result disassociateRecoveryPointFromParent(array $args = [])
* @method \GuzzleHttp\Promise\Promise disassociateRecoveryPointFromParentAsync(array $args = [])
* @method \Aws\Result exportBackupPlanTemplate(array $args = [])
* @method \GuzzleHttp\Promise\Promise exportBackupPlanTemplateAsync(array $args = [])
* @method \Aws\Result getBackupPlan(array $args = [])
@ -71,6 +77,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getBackupVaultAccessPolicyAsync(array $args = [])
* @method \Aws\Result getBackupVaultNotifications(array $args = [])
* @method \GuzzleHttp\Promise\Promise getBackupVaultNotificationsAsync(array $args = [])
* @method \Aws\Result getLegalHold(array $args = [])
* @method \GuzzleHttp\Promise\Promise getLegalHoldAsync(array $args = [])
* @method \Aws\Result getRecoveryPointRestoreMetadata(array $args = [])
* @method \GuzzleHttp\Promise\Promise getRecoveryPointRestoreMetadataAsync(array $args = [])
* @method \Aws\Result getSupportedResourceTypes(array $args = [])
@ -91,10 +99,14 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listCopyJobsAsync(array $args = [])
* @method \Aws\Result listFrameworks(array $args = [])
* @method \GuzzleHttp\Promise\Promise listFrameworksAsync(array $args = [])
* @method \Aws\Result listLegalHolds(array $args = [])
* @method \GuzzleHttp\Promise\Promise listLegalHoldsAsync(array $args = [])
* @method \Aws\Result listProtectedResources(array $args = [])
* @method \GuzzleHttp\Promise\Promise listProtectedResourcesAsync(array $args = [])
* @method \Aws\Result listRecoveryPointsByBackupVault(array $args = [])
* @method \GuzzleHttp\Promise\Promise listRecoveryPointsByBackupVaultAsync(array $args = [])
* @method \Aws\Result listRecoveryPointsByLegalHold(array $args = [])
* @method \GuzzleHttp\Promise\Promise listRecoveryPointsByLegalHoldAsync(array $args = [])
* @method \Aws\Result listRecoveryPointsByResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listRecoveryPointsByResourceAsync(array $args = [])
* @method \Aws\Result listReportJobs(array $args = [])

View file

@ -15,8 +15,14 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise deleteHypervisorAsync(array $args = [])
* @method \Aws\Result disassociateGatewayFromServer(array $args = [])
* @method \GuzzleHttp\Promise\Promise disassociateGatewayFromServerAsync(array $args = [])
* @method \Aws\Result getBandwidthRateLimitSchedule(array $args = [])
* @method \GuzzleHttp\Promise\Promise getBandwidthRateLimitScheduleAsync(array $args = [])
* @method \Aws\Result getGateway(array $args = [])
* @method \GuzzleHttp\Promise\Promise getGatewayAsync(array $args = [])
* @method \Aws\Result getHypervisor(array $args = [])
* @method \GuzzleHttp\Promise\Promise getHypervisorAsync(array $args = [])
* @method \Aws\Result getHypervisorPropertyMappings(array $args = [])
* @method \GuzzleHttp\Promise\Promise getHypervisorPropertyMappingsAsync(array $args = [])
* @method \Aws\Result getVirtualMachine(array $args = [])
* @method \GuzzleHttp\Promise\Promise getVirtualMachineAsync(array $args = [])
* @method \Aws\Result importHypervisorConfiguration(array $args = [])
@ -29,8 +35,14 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result listVirtualMachines(array $args = [])
* @method \GuzzleHttp\Promise\Promise listVirtualMachinesAsync(array $args = [])
* @method \Aws\Result putBandwidthRateLimitSchedule(array $args = [])
* @method \GuzzleHttp\Promise\Promise putBandwidthRateLimitScheduleAsync(array $args = [])
* @method \Aws\Result putHypervisorPropertyMappings(array $args = [])
* @method \GuzzleHttp\Promise\Promise putHypervisorPropertyMappingsAsync(array $args = [])
* @method \Aws\Result putMaintenanceStartTime(array $args = [])
* @method \GuzzleHttp\Promise\Promise putMaintenanceStartTimeAsync(array $args = [])
* @method \Aws\Result startVirtualMachinesMetadataSync(array $args = [])
* @method \GuzzleHttp\Promise\Promise startVirtualMachinesMetadataSyncAsync(array $args = [])
* @method \Aws\Result tagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
* @method \Aws\Result testHypervisorConfiguration(array $args = [])

View file

@ -0,0 +1,157 @@
<?php
namespace Aws\ChimeSDKVoice;
use Aws\AwsClient;
/**
* This client is used to interact with the **Amazon Chime SDK Voice** service.
* @method \Aws\Result associatePhoneNumbersWithVoiceConnector(array $args = [])
* @method \GuzzleHttp\Promise\Promise associatePhoneNumbersWithVoiceConnectorAsync(array $args = [])
* @method \Aws\Result associatePhoneNumbersWithVoiceConnectorGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise associatePhoneNumbersWithVoiceConnectorGroupAsync(array $args = [])
* @method \Aws\Result batchDeletePhoneNumber(array $args = [])
* @method \GuzzleHttp\Promise\Promise batchDeletePhoneNumberAsync(array $args = [])
* @method \Aws\Result batchUpdatePhoneNumber(array $args = [])
* @method \GuzzleHttp\Promise\Promise batchUpdatePhoneNumberAsync(array $args = [])
* @method \Aws\Result createPhoneNumberOrder(array $args = [])
* @method \GuzzleHttp\Promise\Promise createPhoneNumberOrderAsync(array $args = [])
* @method \Aws\Result createProxySession(array $args = [])
* @method \GuzzleHttp\Promise\Promise createProxySessionAsync(array $args = [])
* @method \Aws\Result createSipMediaApplication(array $args = [])
* @method \GuzzleHttp\Promise\Promise createSipMediaApplicationAsync(array $args = [])
* @method \Aws\Result createSipMediaApplicationCall(array $args = [])
* @method \GuzzleHttp\Promise\Promise createSipMediaApplicationCallAsync(array $args = [])
* @method \Aws\Result createSipRule(array $args = [])
* @method \GuzzleHttp\Promise\Promise createSipRuleAsync(array $args = [])
* @method \Aws\Result createVoiceConnector(array $args = [])
* @method \GuzzleHttp\Promise\Promise createVoiceConnectorAsync(array $args = [])
* @method \Aws\Result createVoiceConnectorGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise createVoiceConnectorGroupAsync(array $args = [])
* @method \Aws\Result deletePhoneNumber(array $args = [])
* @method \GuzzleHttp\Promise\Promise deletePhoneNumberAsync(array $args = [])
* @method \Aws\Result deleteProxySession(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteProxySessionAsync(array $args = [])
* @method \Aws\Result deleteSipMediaApplication(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteSipMediaApplicationAsync(array $args = [])
* @method \Aws\Result deleteSipRule(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteSipRuleAsync(array $args = [])
* @method \Aws\Result deleteVoiceConnector(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteVoiceConnectorAsync(array $args = [])
* @method \Aws\Result deleteVoiceConnectorEmergencyCallingConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteVoiceConnectorEmergencyCallingConfigurationAsync(array $args = [])
* @method \Aws\Result deleteVoiceConnectorGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteVoiceConnectorGroupAsync(array $args = [])
* @method \Aws\Result deleteVoiceConnectorOrigination(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteVoiceConnectorOriginationAsync(array $args = [])
* @method \Aws\Result deleteVoiceConnectorProxy(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteVoiceConnectorProxyAsync(array $args = [])
* @method \Aws\Result deleteVoiceConnectorStreamingConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteVoiceConnectorStreamingConfigurationAsync(array $args = [])
* @method \Aws\Result deleteVoiceConnectorTermination(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteVoiceConnectorTerminationAsync(array $args = [])
* @method \Aws\Result deleteVoiceConnectorTerminationCredentials(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteVoiceConnectorTerminationCredentialsAsync(array $args = [])
* @method \Aws\Result disassociatePhoneNumbersFromVoiceConnector(array $args = [])
* @method \GuzzleHttp\Promise\Promise disassociatePhoneNumbersFromVoiceConnectorAsync(array $args = [])
* @method \Aws\Result disassociatePhoneNumbersFromVoiceConnectorGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise disassociatePhoneNumbersFromVoiceConnectorGroupAsync(array $args = [])
* @method \Aws\Result getGlobalSettings(array $args = [])
* @method \GuzzleHttp\Promise\Promise getGlobalSettingsAsync(array $args = [])
* @method \Aws\Result getPhoneNumber(array $args = [])
* @method \GuzzleHttp\Promise\Promise getPhoneNumberAsync(array $args = [])
* @method \Aws\Result getPhoneNumberOrder(array $args = [])
* @method \GuzzleHttp\Promise\Promise getPhoneNumberOrderAsync(array $args = [])
* @method \Aws\Result getPhoneNumberSettings(array $args = [])
* @method \GuzzleHttp\Promise\Promise getPhoneNumberSettingsAsync(array $args = [])
* @method \Aws\Result getProxySession(array $args = [])
* @method \GuzzleHttp\Promise\Promise getProxySessionAsync(array $args = [])
* @method \Aws\Result getSipMediaApplication(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSipMediaApplicationAsync(array $args = [])
* @method \Aws\Result getSipMediaApplicationAlexaSkillConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSipMediaApplicationAlexaSkillConfigurationAsync(array $args = [])
* @method \Aws\Result getSipMediaApplicationLoggingConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSipMediaApplicationLoggingConfigurationAsync(array $args = [])
* @method \Aws\Result getSipRule(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSipRuleAsync(array $args = [])
* @method \Aws\Result getVoiceConnector(array $args = [])
* @method \GuzzleHttp\Promise\Promise getVoiceConnectorAsync(array $args = [])
* @method \Aws\Result getVoiceConnectorEmergencyCallingConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getVoiceConnectorEmergencyCallingConfigurationAsync(array $args = [])
* @method \Aws\Result getVoiceConnectorGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise getVoiceConnectorGroupAsync(array $args = [])
* @method \Aws\Result getVoiceConnectorLoggingConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getVoiceConnectorLoggingConfigurationAsync(array $args = [])
* @method \Aws\Result getVoiceConnectorOrigination(array $args = [])
* @method \GuzzleHttp\Promise\Promise getVoiceConnectorOriginationAsync(array $args = [])
* @method \Aws\Result getVoiceConnectorProxy(array $args = [])
* @method \GuzzleHttp\Promise\Promise getVoiceConnectorProxyAsync(array $args = [])
* @method \Aws\Result getVoiceConnectorStreamingConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getVoiceConnectorStreamingConfigurationAsync(array $args = [])
* @method \Aws\Result getVoiceConnectorTermination(array $args = [])
* @method \GuzzleHttp\Promise\Promise getVoiceConnectorTerminationAsync(array $args = [])
* @method \Aws\Result getVoiceConnectorTerminationHealth(array $args = [])
* @method \GuzzleHttp\Promise\Promise getVoiceConnectorTerminationHealthAsync(array $args = [])
* @method \Aws\Result listAvailableVoiceConnectorRegions(array $args = [])
* @method \GuzzleHttp\Promise\Promise listAvailableVoiceConnectorRegionsAsync(array $args = [])
* @method \Aws\Result listPhoneNumberOrders(array $args = [])
* @method \GuzzleHttp\Promise\Promise listPhoneNumberOrdersAsync(array $args = [])
* @method \Aws\Result listPhoneNumbers(array $args = [])
* @method \GuzzleHttp\Promise\Promise listPhoneNumbersAsync(array $args = [])
* @method \Aws\Result listProxySessions(array $args = [])
* @method \GuzzleHttp\Promise\Promise listProxySessionsAsync(array $args = [])
* @method \Aws\Result listSipMediaApplications(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSipMediaApplicationsAsync(array $args = [])
* @method \Aws\Result listSipRules(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSipRulesAsync(array $args = [])
* @method \Aws\Result listSupportedPhoneNumberCountries(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSupportedPhoneNumberCountriesAsync(array $args = [])
* @method \Aws\Result listVoiceConnectorGroups(array $args = [])
* @method \GuzzleHttp\Promise\Promise listVoiceConnectorGroupsAsync(array $args = [])
* @method \Aws\Result listVoiceConnectorTerminationCredentials(array $args = [])
* @method \GuzzleHttp\Promise\Promise listVoiceConnectorTerminationCredentialsAsync(array $args = [])
* @method \Aws\Result listVoiceConnectors(array $args = [])
* @method \GuzzleHttp\Promise\Promise listVoiceConnectorsAsync(array $args = [])
* @method \Aws\Result putSipMediaApplicationAlexaSkillConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise putSipMediaApplicationAlexaSkillConfigurationAsync(array $args = [])
* @method \Aws\Result putSipMediaApplicationLoggingConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise putSipMediaApplicationLoggingConfigurationAsync(array $args = [])
* @method \Aws\Result putVoiceConnectorEmergencyCallingConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise putVoiceConnectorEmergencyCallingConfigurationAsync(array $args = [])
* @method \Aws\Result putVoiceConnectorLoggingConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise putVoiceConnectorLoggingConfigurationAsync(array $args = [])
* @method \Aws\Result putVoiceConnectorOrigination(array $args = [])
* @method \GuzzleHttp\Promise\Promise putVoiceConnectorOriginationAsync(array $args = [])
* @method \Aws\Result putVoiceConnectorProxy(array $args = [])
* @method \GuzzleHttp\Promise\Promise putVoiceConnectorProxyAsync(array $args = [])
* @method \Aws\Result putVoiceConnectorStreamingConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise putVoiceConnectorStreamingConfigurationAsync(array $args = [])
* @method \Aws\Result putVoiceConnectorTermination(array $args = [])
* @method \GuzzleHttp\Promise\Promise putVoiceConnectorTerminationAsync(array $args = [])
* @method \Aws\Result putVoiceConnectorTerminationCredentials(array $args = [])
* @method \GuzzleHttp\Promise\Promise putVoiceConnectorTerminationCredentialsAsync(array $args = [])
* @method \Aws\Result restorePhoneNumber(array $args = [])
* @method \GuzzleHttp\Promise\Promise restorePhoneNumberAsync(array $args = [])
* @method \Aws\Result searchAvailablePhoneNumbers(array $args = [])
* @method \GuzzleHttp\Promise\Promise searchAvailablePhoneNumbersAsync(array $args = [])
* @method \Aws\Result updateGlobalSettings(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateGlobalSettingsAsync(array $args = [])
* @method \Aws\Result updatePhoneNumber(array $args = [])
* @method \GuzzleHttp\Promise\Promise updatePhoneNumberAsync(array $args = [])
* @method \Aws\Result updatePhoneNumberSettings(array $args = [])
* @method \GuzzleHttp\Promise\Promise updatePhoneNumberSettingsAsync(array $args = [])
* @method \Aws\Result updateProxySession(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateProxySessionAsync(array $args = [])
* @method \Aws\Result updateSipMediaApplication(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateSipMediaApplicationAsync(array $args = [])
* @method \Aws\Result updateSipMediaApplicationCall(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateSipMediaApplicationCallAsync(array $args = [])
* @method \Aws\Result updateSipRule(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateSipRuleAsync(array $args = [])
* @method \Aws\Result updateVoiceConnector(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateVoiceConnectorAsync(array $args = [])
* @method \Aws\Result updateVoiceConnectorGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateVoiceConnectorGroupAsync(array $args = [])
* @method \Aws\Result validateE911Address(array $args = [])
* @method \GuzzleHttp\Promise\Promise validateE911AddressAsync(array $args = [])
*/
class ChimeSDKVoiceClient extends AwsClient {}

View file

@ -0,0 +1,9 @@
<?php
namespace Aws\ChimeSDKVoice\Exception;
use Aws\Exception\AwsException;
/**
* Represents an error interacting with the **Amazon Chime SDK Voice** service.
*/
class ChimeSDKVoiceException extends AwsException {}

View file

@ -0,0 +1,77 @@
<?php
namespace Aws\CleanRooms;
use Aws\AwsClient;
/**
* This client is used to interact with the **AWS Clean Rooms Service** service.
* @method \Aws\Result batchGetSchema(array $args = [])
* @method \GuzzleHttp\Promise\Promise batchGetSchemaAsync(array $args = [])
* @method \Aws\Result createCollaboration(array $args = [])
* @method \GuzzleHttp\Promise\Promise createCollaborationAsync(array $args = [])
* @method \Aws\Result createConfiguredTable(array $args = [])
* @method \GuzzleHttp\Promise\Promise createConfiguredTableAsync(array $args = [])
* @method \Aws\Result createConfiguredTableAnalysisRule(array $args = [])
* @method \GuzzleHttp\Promise\Promise createConfiguredTableAnalysisRuleAsync(array $args = [])
* @method \Aws\Result createConfiguredTableAssociation(array $args = [])
* @method \GuzzleHttp\Promise\Promise createConfiguredTableAssociationAsync(array $args = [])
* @method \Aws\Result createMembership(array $args = [])
* @method \GuzzleHttp\Promise\Promise createMembershipAsync(array $args = [])
* @method \Aws\Result deleteCollaboration(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteCollaborationAsync(array $args = [])
* @method \Aws\Result deleteConfiguredTable(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteConfiguredTableAsync(array $args = [])
* @method \Aws\Result deleteConfiguredTableAnalysisRule(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteConfiguredTableAnalysisRuleAsync(array $args = [])
* @method \Aws\Result deleteConfiguredTableAssociation(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteConfiguredTableAssociationAsync(array $args = [])
* @method \Aws\Result deleteMember(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteMemberAsync(array $args = [])
* @method \Aws\Result deleteMembership(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteMembershipAsync(array $args = [])
* @method \Aws\Result getCollaboration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getCollaborationAsync(array $args = [])
* @method \Aws\Result getConfiguredTable(array $args = [])
* @method \GuzzleHttp\Promise\Promise getConfiguredTableAsync(array $args = [])
* @method \Aws\Result getConfiguredTableAnalysisRule(array $args = [])
* @method \GuzzleHttp\Promise\Promise getConfiguredTableAnalysisRuleAsync(array $args = [])
* @method \Aws\Result getConfiguredTableAssociation(array $args = [])
* @method \GuzzleHttp\Promise\Promise getConfiguredTableAssociationAsync(array $args = [])
* @method \Aws\Result getMembership(array $args = [])
* @method \GuzzleHttp\Promise\Promise getMembershipAsync(array $args = [])
* @method \Aws\Result getProtectedQuery(array $args = [])
* @method \GuzzleHttp\Promise\Promise getProtectedQueryAsync(array $args = [])
* @method \Aws\Result getSchema(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSchemaAsync(array $args = [])
* @method \Aws\Result getSchemaAnalysisRule(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSchemaAnalysisRuleAsync(array $args = [])
* @method \Aws\Result listCollaborations(array $args = [])
* @method \GuzzleHttp\Promise\Promise listCollaborationsAsync(array $args = [])
* @method \Aws\Result listConfiguredTableAssociations(array $args = [])
* @method \GuzzleHttp\Promise\Promise listConfiguredTableAssociationsAsync(array $args = [])
* @method \Aws\Result listConfiguredTables(array $args = [])
* @method \GuzzleHttp\Promise\Promise listConfiguredTablesAsync(array $args = [])
* @method \Aws\Result listMembers(array $args = [])
* @method \GuzzleHttp\Promise\Promise listMembersAsync(array $args = [])
* @method \Aws\Result listMemberships(array $args = [])
* @method \GuzzleHttp\Promise\Promise listMembershipsAsync(array $args = [])
* @method \Aws\Result listProtectedQueries(array $args = [])
* @method \GuzzleHttp\Promise\Promise listProtectedQueriesAsync(array $args = [])
* @method \Aws\Result listSchemas(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSchemasAsync(array $args = [])
* @method \Aws\Result startProtectedQuery(array $args = [])
* @method \GuzzleHttp\Promise\Promise startProtectedQueryAsync(array $args = [])
* @method \Aws\Result updateCollaboration(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateCollaborationAsync(array $args = [])
* @method \Aws\Result updateConfiguredTable(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateConfiguredTableAsync(array $args = [])
* @method \Aws\Result updateConfiguredTableAnalysisRule(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateConfiguredTableAnalysisRuleAsync(array $args = [])
* @method \Aws\Result updateConfiguredTableAssociation(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateConfiguredTableAssociationAsync(array $args = [])
* @method \Aws\Result updateMembership(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateMembershipAsync(array $args = [])
* @method \Aws\Result updateProtectedQuery(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateProtectedQueryAsync(array $args = [])
*/
class CleanRoomsClient extends AwsClient {}

View file

@ -0,0 +1,9 @@
<?php
namespace Aws\CleanRooms\Exception;
use Aws\Exception\AwsException;
/**
* Represents an error interacting with the **AWS Clean Rooms Service** service.
*/
class CleanRoomsException extends AwsException {}

View file

@ -18,6 +18,7 @@ use Aws\Endpoint\UseDualstackEndpoint\ConfigurationProvider as UseDualStackConfi
use Aws\Endpoint\UseDualstackEndpoint\ConfigurationInterface as UseDualStackEndpointConfigurationInterface;
use Aws\EndpointDiscovery\ConfigurationInterface;
use Aws\EndpointDiscovery\ConfigurationProvider;
use Aws\EndpointV2\EndpointDefinitionProvider;
use Aws\Exception\InvalidRegionException;
use Aws\Retry\ConfigurationInterface as RetryConfigInterface;
use Aws\Retry\ConfigurationProvider as RetryConfigProvider;
@ -25,6 +26,9 @@ use Aws\DefaultsMode\ConfigurationInterface as ConfigModeInterface;
use Aws\DefaultsMode\ConfigurationProvider as ConfigModeProvider;
use Aws\Signature\SignatureProvider;
use Aws\Endpoint\EndpointProvider;
use Aws\Token\Token;
use Aws\Token\TokenInterface;
use Aws\Token\TokenProvider;
use GuzzleHttp\Promise\PromiseInterface;
use Aws\Credentials\CredentialProvider;
use InvalidArgumentException as IAE;
@ -44,6 +48,7 @@ class ClientResolver
'callable' => 'is_callable',
'int' => 'is_int',
'bool' => 'is_bool',
'boolean' => 'is_bool',
'string' => 'is_string',
'object' => 'is_object',
'array' => 'is_array',
@ -130,14 +135,13 @@ class ClientResolver
],
'endpoint_provider' => [
'type' => 'value',
'valid' => ['callable'],
'valid' => ['callable', EndpointV2\EndpointProviderV2::class],
'fn' => [__CLASS__, '_apply_endpoint_provider'],
'doc' => 'An optional PHP callable that accepts a hash of options including a "service" and "region" key and returns NULL or a hash of endpoint data, of which the "endpoint" key is required. See Aws\\Endpoint\\EndpointProvider for a list of built-in providers.',
'default' => [__CLASS__, '_default_endpoint_provider'],
],
'serializer' => [
'default' => [__CLASS__, '_default_serializer'],
'fn' => [__CLASS__, '_apply_serializer'],
'internal' => true,
'type' => 'value',
'valid' => ['callable'],
@ -173,6 +177,13 @@ class ClientResolver
'fn' => [__CLASS__, '_apply_credentials'],
'default' => [__CLASS__, '_default_credential_provider'],
],
'token' => [
'type' => 'value',
'valid' => [TokenInterface::class, CacheInterface::class, 'array', 'bool', 'callable'],
'doc' => 'Specifies the token used to authorize requests. Provide an Aws\Token\TokenInterface object, an associative array of "token", and an optional "expiration" key, `false` to use a null token, or a callable token provider used to fetch a token or return null. See Aws\\Token\\TokenProvider for a list of built-in credentials providers. If no token is provided, the SDK will attempt to load one from the environment.',
'fn' => [__CLASS__, '_apply_token'],
'default' => [__CLASS__, '_default_token_provider'],
],
'endpoint_discovery' => [
'type' => 'value',
'valid' => [ConfigurationInterface::class, CacheInterface::class, 'array', 'callable'],
@ -356,6 +367,7 @@ class ClientResolver
$args['config'][$key] = $args[$key];
}
}
$this->_apply_client_context_params($args);
return $args;
}
@ -540,6 +552,38 @@ class ClientResolver
return CredentialProvider::defaultProvider($args);
}
public static function _apply_token($value, array &$args)
{
if (is_callable($value)) {
return;
}
if ($value instanceof Token) {
$args['token'] = TokenProvider::fromToken($value);
} elseif (is_array($value)
&& isset($value['token'])
) {
$args['token'] = TokenProvider::fromToken(
new Token(
$value['token'],
isset($value['expires']) ? $value['expires'] : null
)
);
} elseif ($value instanceof CacheInterface) {
$args['token'] = TokenProvider::defaultProvider($args);
} else {
throw new IAE('Token must be an instance of '
. 'Aws\Token\TokenInterface, an associative '
. 'array that contains "token" and an optional "expires" '
. 'key-value pairs, a token provider function, or false.');
}
}
public static function _default_token_provider(array $args)
{
return TokenProvider::defaultProvider($args);
}
public static function _apply_csm($value, array &$args, HandlerList $list)
{
if ($value === false) {
@ -597,9 +641,15 @@ class ClientResolver
$args['error_parser'] = Service::createErrorParser($api->getProtocol(), $api);
}
public static function _apply_endpoint_provider(callable $value, array &$args)
public static function _apply_endpoint_provider($value, array &$args)
{
if (!isset($args['endpoint'])) {
if ($value instanceof \Aws\EndpointV2\EndpointProviderV2) {
$options = self::getEndpointProviderOptions($args);
$value = PartitionEndpointProvider::defaultProvider($options)
->getPartition($args['region'], $args['service']);
}
$endpointPrefix = isset($args['api']['metadata']['endpointPrefix'])
? $args['api']['metadata']['endpointPrefix']
: $args['service'];
@ -633,12 +683,15 @@ class ClientResolver
$args['endpoint'] = $result['endpoint'];
if (empty($args['config']['signature_version'])) {
if (
empty($args['config']['signature_version'])
&& isset($result['signatureVersion'])
isset($args['api'])
&& $args['api']->getSignatureVersion() == 'bearer'
) {
$args['config']['signature_version']
= $result['signatureVersion'];
$args['config']['signature_version'] = 'bearer';
} elseif (isset($result['signatureVersion'])) {
$args['config']['signature_version'] = $result['signatureVersion'];
}
}
if (
@ -711,11 +764,6 @@ class ClientResolver
return UseDualStackConfigProvider::defaultProvider($args);
}
public static function _apply_serializer($value, array &$args, HandlerList $list)
{
$list->prependBuild(Middleware::requestBuilder($value), 'builder');
}
public static function _apply_debug($value, array &$args, HandlerList $list)
{
if ($value !== false) {
@ -888,6 +936,22 @@ class ClientResolver
public static function _default_endpoint_provider(array $args)
{
$service = isset($args['api']) ? $args['api'] : null;
$serviceName = isset($service) ? $service->getServiceName() : null;
$apiVersion = isset($service) ? $service->getApiVersion() : null;
if (self::isValidService($serviceName)
&& self::isValidApiVersion($serviceName, $apiVersion)
) {
$ruleset = EndpointDefinitionProvider::getEndpointRuleset(
$service->getServiceName(),
$service->getApiVersion()
);
return new \Aws\EndpointV2\EndpointProviderV2(
$ruleset,
EndpointDefinitionProvider::getPartitions()
);
}
$options = self::getEndpointProviderOptions($args);
return PartitionEndpointProvider::defaultProvider($options)
->getPartition($args['region'], $args['service']);
@ -1044,4 +1108,46 @@ EOT;
{
return is_valid_hostlabel($region);
}
private function _apply_client_context_params(array $args)
{
if (isset($args['api'])
&& !empty($args['api']->getClientContextParams()))
{
$clientContextParams = $args['api']->getClientContextParams();
foreach($clientContextParams as $paramName => $paramDefinition) {
$definition = [
'type' => 'value',
'valid' => [$paramDefinition['type']],
'doc' => isset($paramDefinition['documentation']) ?
$paramDefinition['documentation'] : null
];
$this->argDefinitions[$paramName] = $definition;
if (isset($args[$paramName])) {
$fn = self::$typeMap[$paramDefinition['type']];
if (!$fn($args[$paramName])) {
$this->invalidType($paramName, $args[$paramName]);
}
}
}
}
}
private static function isValidService($service) {
if (is_null($service)) {
return false;
}
$services = \Aws\manifest();
return isset($services[$service]);
}
private static function isValidApiVersion($service, $apiVersion) {
if (is_null($apiVersion)) {
return false;
}
return is_dir(
__DIR__ . "/data/{$service}/$apiVersion"
);
}
}

View file

@ -100,8 +100,12 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise updatePublicKeyAsync(array $args = []) (supported in versions 2017-10-30, 2018-06-18, 2018-11-05, 2019-03-26, 2020-05-31)
* @method \Aws\Result associateAlias(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise associateAliasAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result copyDistribution(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise copyDistributionAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result createCachePolicy(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise createCachePolicyAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result createContinuousDeploymentPolicy(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise createContinuousDeploymentPolicyAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result createFunction(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise createFunctionAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result createKeyGroup(array $args = []) (supported in versions 2020-05-31)
@ -118,6 +122,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise createResponseHeadersPolicyAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result deleteCachePolicy(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise deleteCachePolicyAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result deleteContinuousDeploymentPolicy(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise deleteContinuousDeploymentPolicyAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result deleteFunction(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise deleteFunctionAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result deleteKeyGroup(array $args = []) (supported in versions 2020-05-31)
@ -138,6 +144,10 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getCachePolicyAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result getCachePolicyConfig(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise getCachePolicyConfigAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result getContinuousDeploymentPolicy(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise getContinuousDeploymentPolicyAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result getContinuousDeploymentPolicyConfig(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise getContinuousDeploymentPolicyConfigAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result getFunction(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise getFunctionAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result getKeyGroup(array $args = []) (supported in versions 2020-05-31)
@ -164,6 +174,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listCachePoliciesAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result listConflictingAliases(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise listConflictingAliasesAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result listContinuousDeploymentPolicies(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise listContinuousDeploymentPoliciesAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result listDistributionsByCachePolicyId(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise listDistributionsByCachePolicyIdAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result listDistributionsByKeyGroup(array $args = []) (supported in versions 2020-05-31)
@ -192,6 +204,10 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise testFunctionAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result updateCachePolicy(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise updateCachePolicyAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result updateContinuousDeploymentPolicy(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise updateContinuousDeploymentPolicyAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result updateDistributionWithStagingConfig(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise updateDistributionWithStagingConfigAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result updateFunction(array $args = []) (supported in versions 2020-05-31)
* @method \GuzzleHttp\Promise\Promise updateFunctionAsync(array $args = []) (supported in versions 2020-05-31)
* @method \Aws\Result updateKeyGroup(array $args = []) (supported in versions 2020-05-31)

View file

@ -10,12 +10,18 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise addTagsAsync(array $args = [])
* @method \Aws\Result cancelQuery(array $args = [])
* @method \GuzzleHttp\Promise\Promise cancelQueryAsync(array $args = [])
* @method \Aws\Result createChannel(array $args = [])
* @method \GuzzleHttp\Promise\Promise createChannelAsync(array $args = [])
* @method \Aws\Result createEventDataStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise createEventDataStoreAsync(array $args = [])
* @method \Aws\Result createTrail(array $args = [])
* @method \GuzzleHttp\Promise\Promise createTrailAsync(array $args = [])
* @method \Aws\Result deleteChannel(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteChannelAsync(array $args = [])
* @method \Aws\Result deleteEventDataStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteEventDataStoreAsync(array $args = [])
* @method \Aws\Result deleteResourcePolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteResourcePolicyAsync(array $args = [])
* @method \Aws\Result deleteTrail(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteTrailAsync(array $args = [])
* @method \Aws\Result deregisterOrganizationDelegatedAdmin(array $args = [])
@ -36,6 +42,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getInsightSelectorsAsync(array $args = [])
* @method \Aws\Result getQueryResults(array $args = [])
* @method \GuzzleHttp\Promise\Promise getQueryResultsAsync(array $args = [])
* @method \Aws\Result getResourcePolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise getResourcePolicyAsync(array $args = [])
* @method \Aws\Result getTrail(array $args = [])
* @method \GuzzleHttp\Promise\Promise getTrailAsync(array $args = [])
* @method \Aws\Result getTrailStatus(array $args = [])
@ -62,6 +70,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise putEventSelectorsAsync(array $args = [])
* @method \Aws\Result putInsightSelectors(array $args = [])
* @method \GuzzleHttp\Promise\Promise putInsightSelectorsAsync(array $args = [])
* @method \Aws\Result putResourcePolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise putResourcePolicyAsync(array $args = [])
* @method \Aws\Result registerOrganizationDelegatedAdmin(array $args = [])
* @method \GuzzleHttp\Promise\Promise registerOrganizationDelegatedAdminAsync(array $args = [])
* @method \Aws\Result removeTags(array $args = [])
@ -78,6 +88,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise stopImportAsync(array $args = [])
* @method \Aws\Result stopLogging(array $args = [])
* @method \GuzzleHttp\Promise\Promise stopLoggingAsync(array $args = [])
* @method \Aws\Result updateChannel(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateChannelAsync(array $args = [])
* @method \Aws\Result updateEventDataStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateEventDataStoreAsync(array $args = [])
* @method \Aws\Result updateTrail(array $args = [])

View file

@ -0,0 +1,11 @@
<?php
namespace Aws\CloudTrailData;
use Aws\AwsClient;
/**
* This client is used to interact with the **AWS CloudTrail Data Service** service.
* @method \Aws\Result putAuditEvents(array $args = [])
* @method \GuzzleHttp\Promise\Promise putAuditEventsAsync(array $args = [])
*/
class CloudTrailDataClient extends AwsClient {}

View file

@ -0,0 +1,9 @@
<?php
namespace Aws\CloudTrailData\Exception;
use Aws\Exception\AwsException;
/**
* Represents an error interacting with the **AWS CloudTrail Data Service** service.
*/
class CloudTrailDataException extends AwsException {}

View file

@ -16,6 +16,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise createLogGroupAsync(array $args = [])
* @method \Aws\Result createLogStream(array $args = [])
* @method \GuzzleHttp\Promise\Promise createLogStreamAsync(array $args = [])
* @method \Aws\Result deleteDataProtectionPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteDataProtectionPolicyAsync(array $args = [])
* @method \Aws\Result deleteDestination(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteDestinationAsync(array $args = [])
* @method \Aws\Result deleteLogGroup(array $args = [])
@ -54,6 +56,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise disassociateKmsKeyAsync(array $args = [])
* @method \Aws\Result filterLogEvents(array $args = [])
* @method \GuzzleHttp\Promise\Promise filterLogEventsAsync(array $args = [])
* @method \Aws\Result getDataProtectionPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise getDataProtectionPolicyAsync(array $args = [])
* @method \Aws\Result getLogEvents(array $args = [])
* @method \GuzzleHttp\Promise\Promise getLogEventsAsync(array $args = [])
* @method \Aws\Result getLogGroupFields(array $args = [])
@ -66,6 +70,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result listTagsLogGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsLogGroupAsync(array $args = [])
* @method \Aws\Result putDataProtectionPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise putDataProtectionPolicyAsync(array $args = [])
* @method \Aws\Result putDestination(array $args = [])
* @method \GuzzleHttp\Promise\Promise putDestinationAsync(array $args = [])
* @method \Aws\Result putDestinationPolicy(array $args = [])

View file

@ -17,6 +17,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise deleteDomainAsync(array $args = [])
* @method \Aws\Result deleteDomainPermissionsPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteDomainPermissionsPolicyAsync(array $args = [])
* @method \Aws\Result deletePackage(array $args = [])
* @method \GuzzleHttp\Promise\Promise deletePackageAsync(array $args = [])
* @method \Aws\Result deletePackageVersions(array $args = [])
* @method \GuzzleHttp\Promise\Promise deletePackageVersionsAsync(array $args = [])
* @method \Aws\Result deleteRepository(array $args = [])

View file

@ -0,0 +1,57 @@
<?php
namespace Aws\CodeCatalyst;
use Aws\AwsClient;
/**
* This client is used to interact with the **Amazon CodeCatalyst** service.
* @method \Aws\Result createAccessToken(array $args = [])
* @method \GuzzleHttp\Promise\Promise createAccessTokenAsync(array $args = [])
* @method \Aws\Result createDevEnvironment(array $args = [])
* @method \GuzzleHttp\Promise\Promise createDevEnvironmentAsync(array $args = [])
* @method \Aws\Result createProject(array $args = [])
* @method \GuzzleHttp\Promise\Promise createProjectAsync(array $args = [])
* @method \Aws\Result createSourceRepositoryBranch(array $args = [])
* @method \GuzzleHttp\Promise\Promise createSourceRepositoryBranchAsync(array $args = [])
* @method \Aws\Result deleteAccessToken(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteAccessTokenAsync(array $args = [])
* @method \Aws\Result deleteDevEnvironment(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteDevEnvironmentAsync(array $args = [])
* @method \Aws\Result getDevEnvironment(array $args = [])
* @method \GuzzleHttp\Promise\Promise getDevEnvironmentAsync(array $args = [])
* @method \Aws\Result getProject(array $args = [])
* @method \GuzzleHttp\Promise\Promise getProjectAsync(array $args = [])
* @method \Aws\Result getSourceRepositoryCloneUrls(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSourceRepositoryCloneUrlsAsync(array $args = [])
* @method \Aws\Result getSpace(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSpaceAsync(array $args = [])
* @method \Aws\Result getSubscription(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSubscriptionAsync(array $args = [])
* @method \Aws\Result getUserDetails(array $args = [])
* @method \GuzzleHttp\Promise\Promise getUserDetailsAsync(array $args = [])
* @method \Aws\Result listAccessTokens(array $args = [])
* @method \GuzzleHttp\Promise\Promise listAccessTokensAsync(array $args = [])
* @method \Aws\Result listDevEnvironments(array $args = [])
* @method \GuzzleHttp\Promise\Promise listDevEnvironmentsAsync(array $args = [])
* @method \Aws\Result listEventLogs(array $args = [])
* @method \GuzzleHttp\Promise\Promise listEventLogsAsync(array $args = [])
* @method \Aws\Result listProjects(array $args = [])
* @method \GuzzleHttp\Promise\Promise listProjectsAsync(array $args = [])
* @method \Aws\Result listSourceRepositories(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSourceRepositoriesAsync(array $args = [])
* @method \Aws\Result listSourceRepositoryBranches(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSourceRepositoryBranchesAsync(array $args = [])
* @method \Aws\Result listSpaces(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSpacesAsync(array $args = [])
* @method \Aws\Result startDevEnvironment(array $args = [])
* @method \GuzzleHttp\Promise\Promise startDevEnvironmentAsync(array $args = [])
* @method \Aws\Result startDevEnvironmentSession(array $args = [])
* @method \GuzzleHttp\Promise\Promise startDevEnvironmentSessionAsync(array $args = [])
* @method \Aws\Result stopDevEnvironment(array $args = [])
* @method \GuzzleHttp\Promise\Promise stopDevEnvironmentAsync(array $args = [])
* @method \Aws\Result updateDevEnvironment(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateDevEnvironmentAsync(array $args = [])
* @method \Aws\Result verifySession(array $args = [])
* @method \GuzzleHttp\Promise\Promise verifySessionAsync(array $args = [])
*/
class CodeCatalystClient extends AwsClient {}

View file

@ -0,0 +1,9 @@
<?php
namespace Aws\CodeCatalyst\Exception;
use Aws\Exception\AwsException;
/**
* Represents an error interacting with the **Amazon CodeCatalyst** service.
*/
class CodeCatalystException extends AwsException {}

View file

@ -14,6 +14,9 @@ class Command implements CommandInterface
/** @var HandlerList */
private $handlerList;
/** @var Array */
private $authSchemes;
/**
* Accepts an associative array of command options, including:
*
@ -57,6 +60,30 @@ class Command implements CommandInterface
return $this->handlerList;
}
/**
* For overriding auth schemes on a per endpoint basis when using
* EndpointV2 provider. Intended for internal use only.
*
* @param array $authSchemes
*
* @internal
*/
public function setAuthSchemes(array $authSchemes)
{
$this->authSchemes = $authSchemes;
}
/**
* Get auth schemes added to command as required
* for endpoint resolution
*
* @returns array | null
*/
public function getAuthSchemes()
{
return $this->authSchemes;
}
/** @deprecated */
public function get($name)
{

View file

@ -15,6 +15,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise exportEBSVolumeRecommendationsAsync(array $args = [])
* @method \Aws\Result exportEC2InstanceRecommendations(array $args = [])
* @method \GuzzleHttp\Promise\Promise exportEC2InstanceRecommendationsAsync(array $args = [])
* @method \Aws\Result exportECSServiceRecommendations(array $args = [])
* @method \GuzzleHttp\Promise\Promise exportECSServiceRecommendationsAsync(array $args = [])
* @method \Aws\Result exportLambdaFunctionRecommendations(array $args = [])
* @method \GuzzleHttp\Promise\Promise exportLambdaFunctionRecommendationsAsync(array $args = [])
* @method \Aws\Result getAutoScalingGroupRecommendations(array $args = [])
@ -25,6 +27,10 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getEC2InstanceRecommendationsAsync(array $args = [])
* @method \Aws\Result getEC2RecommendationProjectedMetrics(array $args = [])
* @method \GuzzleHttp\Promise\Promise getEC2RecommendationProjectedMetricsAsync(array $args = [])
* @method \Aws\Result getECSServiceRecommendationProjectedMetrics(array $args = [])
* @method \GuzzleHttp\Promise\Promise getECSServiceRecommendationProjectedMetricsAsync(array $args = [])
* @method \Aws\Result getECSServiceRecommendations(array $args = [])
* @method \GuzzleHttp\Promise\Promise getECSServiceRecommendationsAsync(array $args = [])
* @method \Aws\Result getEffectiveRecommendationPreferences(array $args = [])
* @method \GuzzleHttp\Promise\Promise getEffectiveRecommendationPreferencesAsync(array $args = [])
* @method \Aws\Result getEnrollmentStatus(array $args = [])

View file

@ -126,6 +126,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getOrganizationCustomRulePolicyAsync(array $args = [])
* @method \Aws\Result getResourceConfigHistory(array $args = [])
* @method \GuzzleHttp\Promise\Promise getResourceConfigHistoryAsync(array $args = [])
* @method \Aws\Result getResourceEvaluationSummary(array $args = [])
* @method \GuzzleHttp\Promise\Promise getResourceEvaluationSummaryAsync(array $args = [])
* @method \Aws\Result getStoredQuery(array $args = [])
* @method \GuzzleHttp\Promise\Promise getStoredQueryAsync(array $args = [])
* @method \Aws\Result listAggregateDiscoveredResources(array $args = [])
@ -134,6 +136,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listConformancePackComplianceScoresAsync(array $args = [])
* @method \Aws\Result listDiscoveredResources(array $args = [])
* @method \GuzzleHttp\Promise\Promise listDiscoveredResourcesAsync(array $args = [])
* @method \Aws\Result listResourceEvaluations(array $args = [])
* @method \GuzzleHttp\Promise\Promise listResourceEvaluationsAsync(array $args = [])
* @method \Aws\Result listStoredQueries(array $args = [])
* @method \GuzzleHttp\Promise\Promise listStoredQueriesAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
@ -178,6 +182,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise startConfigurationRecorderAsync(array $args = [])
* @method \Aws\Result startRemediationExecution(array $args = [])
* @method \GuzzleHttp\Promise\Promise startRemediationExecutionAsync(array $args = [])
* @method \Aws\Result startResourceEvaluation(array $args = [])
* @method \GuzzleHttp\Promise\Promise startResourceEvaluationAsync(array $args = [])
* @method \Aws\Result stopConfigurationRecorder(array $args = [])
* @method \GuzzleHttp\Promise\Promise stopConfigurationRecorderAsync(array $args = [])
* @method \Aws\Result tagResource(array $args = [])

View file

@ -45,6 +45,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise createQuickConnectAsync(array $args = [])
* @method \Aws\Result createRoutingProfile(array $args = [])
* @method \GuzzleHttp\Promise\Promise createRoutingProfileAsync(array $args = [])
* @method \Aws\Result createRule(array $args = [])
* @method \GuzzleHttp\Promise\Promise createRuleAsync(array $args = [])
* @method \Aws\Result createSecurityProfile(array $args = [])
* @method \GuzzleHttp\Promise\Promise createSecurityProfileAsync(array $args = [])
* @method \Aws\Result createTaskTemplate(array $args = [])
@ -71,6 +73,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise deleteIntegrationAssociationAsync(array $args = [])
* @method \Aws\Result deleteQuickConnect(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteQuickConnectAsync(array $args = [])
* @method \Aws\Result deleteRule(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteRuleAsync(array $args = [])
* @method \Aws\Result deleteSecurityProfile(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteSecurityProfileAsync(array $args = [])
* @method \Aws\Result deleteTaskTemplate(array $args = [])
@ -109,6 +113,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise describeQuickConnectAsync(array $args = [])
* @method \Aws\Result describeRoutingProfile(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeRoutingProfileAsync(array $args = [])
* @method \Aws\Result describeRule(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeRuleAsync(array $args = [])
* @method \Aws\Result describeSecurityProfile(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeSecurityProfileAsync(array $args = [])
* @method \Aws\Result describeTrafficDistributionGroup(array $args = [])
@ -199,6 +205,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listRoutingProfileQueuesAsync(array $args = [])
* @method \Aws\Result listRoutingProfiles(array $args = [])
* @method \GuzzleHttp\Promise\Promise listRoutingProfilesAsync(array $args = [])
* @method \Aws\Result listRules(array $args = [])
* @method \GuzzleHttp\Promise\Promise listRulesAsync(array $args = [])
* @method \Aws\Result listSecurityKeys(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSecurityKeysAsync(array $args = [])
* @method \Aws\Result listSecurityProfilePermissions(array $args = [])
@ -217,6 +225,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listUserHierarchyGroupsAsync(array $args = [])
* @method \Aws\Result listUsers(array $args = [])
* @method \GuzzleHttp\Promise\Promise listUsersAsync(array $args = [])
* @method \Aws\Result monitorContact(array $args = [])
* @method \GuzzleHttp\Promise\Promise monitorContactAsync(array $args = [])
* @method \Aws\Result putUserStatus(array $args = [])
* @method \GuzzleHttp\Promise\Promise putUserStatusAsync(array $args = [])
* @method \Aws\Result releasePhoneNumber(array $args = [])
@ -285,6 +295,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise updateInstanceAttributeAsync(array $args = [])
* @method \Aws\Result updateInstanceStorageConfig(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateInstanceStorageConfigAsync(array $args = [])
* @method \Aws\Result updateParticipantRoleConfig(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateParticipantRoleConfigAsync(array $args = [])
* @method \Aws\Result updatePhoneNumber(array $args = [])
* @method \GuzzleHttp\Promise\Promise updatePhoneNumberAsync(array $args = [])
* @method \Aws\Result updateQueueHoursOfOperation(array $args = [])
@ -309,6 +321,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise updateRoutingProfileNameAsync(array $args = [])
* @method \Aws\Result updateRoutingProfileQueues(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateRoutingProfileQueuesAsync(array $args = [])
* @method \Aws\Result updateRule(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateRuleAsync(array $args = [])
* @method \Aws\Result updateSecurityProfile(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateSecurityProfileAsync(array $args = [])
* @method \Aws\Result updateTaskTemplate(array $args = [])

View file

@ -59,10 +59,14 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listCostAllocationTagsAsync(array $args = [])
* @method \Aws\Result listCostCategoryDefinitions(array $args = [])
* @method \GuzzleHttp\Promise\Promise listCostCategoryDefinitionsAsync(array $args = [])
* @method \Aws\Result listSavingsPlansPurchaseRecommendationGeneration(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSavingsPlansPurchaseRecommendationGenerationAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result provideAnomalyFeedback(array $args = [])
* @method \GuzzleHttp\Promise\Promise provideAnomalyFeedbackAsync(array $args = [])
* @method \Aws\Result startSavingsPlansPurchaseRecommendationGeneration(array $args = [])
* @method \GuzzleHttp\Promise\Promise startSavingsPlansPurchaseRecommendationGenerationAsync(array $args = [])
* @method \Aws\Result tagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
* @method \Aws\Result untagResource(array $args = [])

View file

@ -95,7 +95,7 @@ class CredentialProvider
|| $config['use_aws_shared_config_files'] !== false
) {
$defaultChain['sso'] = self::sso(
'profile '. $profileName,
$profileName,
self::getHomeDir() . '/.aws/config',
$config
);
@ -321,8 +321,10 @@ class CredentialProvider
*
* @return callable
*/
public static function sso($ssoProfileName, $filename = null, $config = [])
{
public static function sso($ssoProfileName = 'default',
$filename = null,
$config = []
) {
$filename = $filename ?: (self::getHomeDir() . '/.aws/config');
return function () use ($ssoProfileName, $filename, $config) {
@ -330,10 +332,48 @@ class CredentialProvider
return self::reject("Cannot read credentials from $filename");
}
$profiles = self::loadProfiles($filename);
if (!isset($profiles[$ssoProfileName])) {
if (isset($profiles[$ssoProfileName])) {
$ssoProfile = $profiles[$ssoProfileName];
} elseif (isset($profiles['profile ' . $ssoProfileName])) {
$ssoProfileName = 'profile ' . $ssoProfileName;
$ssoProfile = $profiles[$ssoProfileName];
} else {
return self::reject("Profile {$ssoProfileName} does not exist in {$filename}.");
}
$ssoProfile = $profiles[$ssoProfileName];
if (!empty($ssoProfile['sso_session'])) {
if (empty($config['ssoOidcClient'])) {
$sessionName = $ssoProfile['sso_session'];
if (empty($profiles['sso-session ' . $sessionName])) {
return self::reject(
"Could not find sso-session {$sessionName} in {$filename}"
);
}
$ssoSession = $profiles['sso-session ' . $ssoProfile['sso_session']];
$ssoOidcClient = new Aws\SSOOIDC\SSOOIDCClient([
'region' => $ssoSession['sso_region'],
'version' => '2019-06-10',
'credentials' => false
]);
} else {
$ssoOidcClient = $config['ssoClient'];
}
$tokenPromise = new Aws\Token\SsoTokenProvider(
$ssoProfileName,
$filename,
$ssoOidcClient
);
$token = $tokenPromise()->wait();
$ssoCredentials = CredentialProvider::getCredentialsFromSsoService(
$ssoProfile,
$token->getToken(),
$config
);
$expiration = $ssoCredentials['expiration'];
} else {
if (empty($ssoProfile['sso_start_url'])
|| empty($ssoProfile['sso_region'])
|| empty($ssoProfile['sso_account_id'])
@ -344,16 +384,14 @@ class CredentialProvider
. "sso_start_url, sso_region, sso_account_id, and sso_role_name."
);
}
$tokenLocation = self::getHomeDir()
. '/.aws/sso/cache/'
. utf8_encode(sha1($ssoProfile['sso_start_url']))
. sha1($ssoProfile['sso_start_url'])
. ".json";
if (!@is_readable($tokenLocation)) {
return self::reject("Unable to read token file at $tokenLocation");
}
$tokenData = json_decode(file_get_contents($tokenLocation), true);
if (empty($tokenData['accessToken']) || empty($tokenData['expiresAt'])) {
return self::reject(
@ -369,24 +407,12 @@ class CredentialProvider
if ($expiration < $now) {
return self::reject("Cached SSO credentials returned expired credentials");
}
$ssoClient = null;
if (empty($config['ssoClient'])) {
$ssoClient = new Aws\SSO\SSOClient([
'region' => $ssoProfile['sso_region'],
'version' => '2019-06-10',
'credentials' => false
]);
} else {
$ssoClient = $config['ssoClient'];
$ssoCredentials = CredentialProvider::getCredentialsFromSsoService(
$ssoProfile,
$tokenData['accessToken'],
$config
);
}
$ssoResponse = $ssoClient->getRoleCredentials([
'accessToken' => $tokenData['accessToken'],
'accountId' => $ssoProfile['sso_account_id'],
'roleName' => $ssoProfile['sso_role_name']
]);
$ssoCredentials = $ssoResponse['roleCredentials'];
return Promise\Create::promiseFor(
new Credentials(
$ssoCredentials['accessKeyId'],
@ -899,4 +925,31 @@ class CredentialProvider
|| !empty(getenv(EcsCredentialProvider::ENV_FULL_URI))
|| !empty($_SERVER[EcsCredentialProvider::ENV_FULL_URI]);
}
/**
* @param array $ssoProfile
* @param string $accessToken
* @param array $config
* @return array|null
*/
private static function getCredentialsFromSsoService($ssoProfile, $accessToken, $config)
{
if (empty($config['ssoClient'])) {
$ssoClient = new Aws\SSO\SSOClient([
'region' => $ssoProfile['sso_region'],
'version' => '2019-06-10',
'credentials' => false
]);
} else {
$ssoClient = $config['ssoClient'];
}
$ssoResponse = $ssoClient->getRoleCredentials([
'accessToken' => $accessToken,
'accountId' => $ssoProfile['sso_account_id'],
'roleName' => $ssoProfile['sso_role_name']
]);
$ssoCredentials = $ssoResponse['roleCredentials'];
return $ssoCredentials;
}
}

View file

@ -99,6 +99,12 @@ class Credentials implements CredentialsInterface, \Serializable
$this->expires = $data['expires'];
}
/**
* Internal-only. Used when IMDS is unreachable
* or returns expires credentials.
*
* @internal
*/
public function extendExpiration() {
$extension = mt_rand(5, 10);
$this->expires = time() + $extension * 60;
@ -108,6 +114,6 @@ Attempting credential expiration extension due to a credential service
availability issue. A refresh of these credentials will be attempted again
after {$extension} minutes.\n
EOT;
error_log($message);
trigger_error($message, E_USER_WARNING);
}
}

View file

@ -161,7 +161,7 @@ trait DecryptionTrait
$cipherOptions['Tag'],
$cipherOptions['Aad'] = isset($cipherOptions['Aad'])
? $cipherOptions['Aad']
: null,
: '',
$cipherOptions['TagLength'] ?: null,
$cipherOptions['KeySize']
);

View file

@ -229,7 +229,7 @@ trait DecryptionTraitV2
$cipherOptions['Tag'],
$cipherOptions['Aad'] = isset($cipherOptions['Aad'])
? $cipherOptions['Aad']
: null,
: '',
$cipherOptions['TagLength'] ?: null,
$cipherOptions['KeySize']
);

View file

@ -156,7 +156,7 @@ trait EncryptionTrait
$cipherOptions['Iv'],
$cipherOptions['Aad'] = isset($cipherOptions['Aad'])
? $cipherOptions['Aad']
: null,
: '',
$cipherOptions['TagLength'],
$cipherOptions['KeySize']
);

View file

@ -56,12 +56,14 @@ class Configuration implements ConfigurationInterface
}
} else {
if (isset($settingValue['override'])) {
if (property_exists($this, $settingName)) {
$this->$settingName = $settingValue['override'];
}
}
}
}
}
}
/**
* {@inheritdoc}

View file

@ -0,0 +1,35 @@
<?php
namespace Aws\DocDBElastic;
use Aws\AwsClient;
/**
* This client is used to interact with the **Amazon DocumentDB Elastic Clusters** service.
* @method \Aws\Result createCluster(array $args = [])
* @method \GuzzleHttp\Promise\Promise createClusterAsync(array $args = [])
* @method \Aws\Result createClusterSnapshot(array $args = [])
* @method \GuzzleHttp\Promise\Promise createClusterSnapshotAsync(array $args = [])
* @method \Aws\Result deleteCluster(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteClusterAsync(array $args = [])
* @method \Aws\Result deleteClusterSnapshot(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteClusterSnapshotAsync(array $args = [])
* @method \Aws\Result getCluster(array $args = [])
* @method \GuzzleHttp\Promise\Promise getClusterAsync(array $args = [])
* @method \Aws\Result getClusterSnapshot(array $args = [])
* @method \GuzzleHttp\Promise\Promise getClusterSnapshotAsync(array $args = [])
* @method \Aws\Result listClusterSnapshots(array $args = [])
* @method \GuzzleHttp\Promise\Promise listClusterSnapshotsAsync(array $args = [])
* @method \Aws\Result listClusters(array $args = [])
* @method \GuzzleHttp\Promise\Promise listClustersAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result restoreClusterFromSnapshot(array $args = [])
* @method \GuzzleHttp\Promise\Promise restoreClusterFromSnapshotAsync(array $args = [])
* @method \Aws\Result tagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
* @method \Aws\Result untagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
* @method \Aws\Result updateCluster(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateClusterAsync(array $args = [])
*/
class DocDBElasticClient extends AwsClient {}

View file

@ -0,0 +1,9 @@
<?php
namespace Aws\DocDBElastic\Exception;
use Aws\Exception\AwsException;
/**
* Represents an error interacting with the **Amazon DocumentDB Elastic Clusters** service.
*/
class DocDBElasticException extends AwsException {}

View file

@ -29,6 +29,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise deregisterClusterAsync(array $args = [])
* @method \Aws\Result describeAddon(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeAddonAsync(array $args = [])
* @method \Aws\Result describeAddonConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeAddonConfigurationAsync(array $args = [])
* @method \Aws\Result describeAddonVersions(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeAddonVersionsAsync(array $args = [])
* @method \Aws\Result describeCluster(array $args = [])

View file

@ -452,6 +452,8 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise applySecurityGroupsToClientVpnTargetNetworkAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result assignIpv6Addresses(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise assignIpv6AddressesAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result assignPrivateNatGatewayAddress(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise assignPrivateNatGatewayAddressAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result associateClientVpnTargetNetwork(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise associateClientVpnTargetNetworkAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result associateEnclaveCertificateIamRole(array $args = []) (supported in versions 2016-11-15)
@ -460,6 +462,10 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise associateIamInstanceProfileAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result associateInstanceEventWindow(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise associateInstanceEventWindowAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result associateIpamResourceDiscovery(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise associateIpamResourceDiscoveryAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result associateNatGatewayAddress(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise associateNatGatewayAddressAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result associateSubnetCidrBlock(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise associateSubnetCidrBlockAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result associateTransitGatewayMulticastDomain(array $args = []) (supported in versions 2016-11-15)
@ -472,6 +478,8 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise associateTrunkInterfaceAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result associateVpcCidrBlock(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise associateVpcCidrBlockAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result attachVerifiedAccessTrustProvider(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise attachVerifiedAccessTrustProviderAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result authorizeClientVpnIngress(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise authorizeClientVpnIngressAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result cancelCapacityReservation(array $args = []) (supported in versions 2016-11-15)
@ -512,6 +520,8 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise createIpamAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result createIpamPool(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise createIpamPoolAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result createIpamResourceDiscovery(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise createIpamResourceDiscoveryAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result createIpamScope(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise createIpamScopeAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result createLaunchTemplate(array $args = []) (supported in versions 2016-11-15)
@ -576,6 +586,14 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise createTransitGatewayRouteTableAnnouncementAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result createTransitGatewayVpcAttachment(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise createTransitGatewayVpcAttachmentAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result createVerifiedAccessEndpoint(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise createVerifiedAccessEndpointAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result createVerifiedAccessGroup(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise createVerifiedAccessGroupAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result createVerifiedAccessInstance(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise createVerifiedAccessInstanceAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result createVerifiedAccessTrustProvider(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise createVerifiedAccessTrustProviderAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result createVpcEndpointConnectionNotification(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise createVpcEndpointConnectionNotificationAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result createVpcEndpointServiceConfiguration(array $args = []) (supported in versions 2016-11-15)
@ -602,6 +620,8 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise deleteIpamAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result deleteIpamPool(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise deleteIpamPoolAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result deleteIpamResourceDiscovery(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise deleteIpamResourceDiscoveryAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result deleteIpamScope(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise deleteIpamScopeAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result deleteLaunchTemplate(array $args = []) (supported in versions 2016-11-15)
@ -664,6 +684,14 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise deleteTransitGatewayRouteTableAnnouncementAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result deleteTransitGatewayVpcAttachment(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise deleteTransitGatewayVpcAttachmentAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result deleteVerifiedAccessEndpoint(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise deleteVerifiedAccessEndpointAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result deleteVerifiedAccessGroup(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise deleteVerifiedAccessGroupAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result deleteVerifiedAccessInstance(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise deleteVerifiedAccessInstanceAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result deleteVerifiedAccessTrustProvider(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise deleteVerifiedAccessTrustProviderAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result deleteVpcEndpointConnectionNotifications(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise deleteVpcEndpointConnectionNotificationsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result deleteVpcEndpointServiceConfigurations(array $args = []) (supported in versions 2016-11-15)
@ -686,6 +714,8 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise describeAddressesAttributeAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeAggregateIdFormat(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeAggregateIdFormatAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeAwsNetworkPerformanceMetricSubscriptions(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeAwsNetworkPerformanceMetricSubscriptionsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeByoipCidrs(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeByoipCidrsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeCapacityReservationFleets(array $args = []) (supported in versions 2016-11-15)
@ -740,6 +770,10 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise describeInstanceTypesAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeIpamPools(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeIpamPoolsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeIpamResourceDiscoveries(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeIpamResourceDiscoveriesAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeIpamResourceDiscoveryAssociations(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeIpamResourceDiscoveryAssociationsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeIpamScopes(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeIpamScopesAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeIpams(array $args = []) (supported in versions 2016-11-15)
@ -814,6 +848,16 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise describeTransitGatewaysAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeTrunkInterfaceAssociations(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeTrunkInterfaceAssociationsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeVerifiedAccessEndpoints(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeVerifiedAccessEndpointsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeVerifiedAccessGroups(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeVerifiedAccessGroupsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeVerifiedAccessInstanceLoggingConfigurations(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeVerifiedAccessInstanceLoggingConfigurationsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeVerifiedAccessInstances(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeVerifiedAccessInstancesAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeVerifiedAccessTrustProviders(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeVerifiedAccessTrustProvidersAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeVolumesModifications(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeVolumesModificationsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeVpcEndpointConnectionNotifications(array $args = []) (supported in versions 2016-11-15)
@ -824,8 +868,12 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise describeVpcEndpointServiceConfigurationsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result describeVpcEndpointServicePermissions(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise describeVpcEndpointServicePermissionsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result detachVerifiedAccessTrustProvider(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise detachVerifiedAccessTrustProviderAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result disableAddressTransfer(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise disableAddressTransferAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result disableAwsNetworkPerformanceMetricSubscription(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise disableAwsNetworkPerformanceMetricSubscriptionAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result disableEbsEncryptionByDefault(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise disableEbsEncryptionByDefaultAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result disableFastLaunch(array $args = []) (supported in versions 2016-11-15)
@ -848,6 +896,10 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise disassociateIamInstanceProfileAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result disassociateInstanceEventWindow(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise disassociateInstanceEventWindowAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result disassociateIpamResourceDiscovery(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise disassociateIpamResourceDiscoveryAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result disassociateNatGatewayAddress(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise disassociateNatGatewayAddressAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result disassociateSubnetCidrBlock(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise disassociateSubnetCidrBlockAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result disassociateTransitGatewayMulticastDomain(array $args = []) (supported in versions 2016-11-15)
@ -862,6 +914,8 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise disassociateVpcCidrBlockAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result enableAddressTransfer(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise enableAddressTransferAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result enableAwsNetworkPerformanceMetricSubscription(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise enableAwsNetworkPerformanceMetricSubscriptionAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result enableEbsEncryptionByDefault(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise enableEbsEncryptionByDefaultAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result enableFastLaunch(array $args = []) (supported in versions 2016-11-15)
@ -872,6 +926,8 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise enableImageDeprecationAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result enableIpamOrganizationAdminAccount(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise enableIpamOrganizationAdminAccountAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result enableReachabilityAnalyzerOrganizationSharing(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise enableReachabilityAnalyzerOrganizationSharingAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result enableSerialConsoleAccess(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise enableSerialConsoleAccessAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result enableTransitGatewayRouteTablePropagation(array $args = []) (supported in versions 2016-11-15)
@ -888,6 +944,8 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise getAssociatedEnclaveCertificateIamRolesAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getAssociatedIpv6PoolCidrs(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise getAssociatedIpv6PoolCidrsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getAwsNetworkPerformanceData(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise getAwsNetworkPerformanceDataAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getCapacityReservationUsage(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise getCapacityReservationUsageAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getCoipPoolUsage(array $args = []) (supported in versions 2016-11-15)
@ -908,6 +966,10 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise getInstanceUefiDataAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getIpamAddressHistory(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise getIpamAddressHistoryAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getIpamDiscoveredAccounts(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise getIpamDiscoveredAccountsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getIpamDiscoveredResourceCidrs(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise getIpamDiscoveredResourceCidrsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getIpamPoolAllocations(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise getIpamPoolAllocationsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getIpamPoolCidrs(array $args = []) (supported in versions 2016-11-15)
@ -944,6 +1006,10 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise getTransitGatewayRouteTableAssociationsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getTransitGatewayRouteTablePropagations(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise getTransitGatewayRouteTablePropagationsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getVerifiedAccessEndpointPolicy(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise getVerifiedAccessEndpointPolicyAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getVerifiedAccessGroupPolicy(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise getVerifiedAccessGroupPolicyAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getVpnConnectionDeviceSampleConfiguration(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise getVpnConnectionDeviceSampleConfigurationAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result getVpnConnectionDeviceTypes(array $args = []) (supported in versions 2016-11-15)
@ -990,6 +1056,8 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise modifyIpamPoolAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyIpamResourceCidr(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise modifyIpamResourceCidrAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyIpamResourceDiscovery(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise modifyIpamResourceDiscoveryAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyIpamScope(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise modifyIpamScopeAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyLaunchTemplate(array $args = []) (supported in versions 2016-11-15)
@ -1016,6 +1084,20 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise modifyTransitGatewayPrefixListReferenceAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyTransitGatewayVpcAttachment(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise modifyTransitGatewayVpcAttachmentAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyVerifiedAccessEndpoint(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise modifyVerifiedAccessEndpointAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyVerifiedAccessEndpointPolicy(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise modifyVerifiedAccessEndpointPolicyAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyVerifiedAccessGroup(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise modifyVerifiedAccessGroupAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyVerifiedAccessGroupPolicy(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise modifyVerifiedAccessGroupPolicyAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyVerifiedAccessInstance(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise modifyVerifiedAccessInstanceAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyVerifiedAccessInstanceLoggingConfiguration(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise modifyVerifiedAccessInstanceLoggingConfigurationAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyVerifiedAccessTrustProvider(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise modifyVerifiedAccessTrustProviderAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyVolume(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise modifyVolumeAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result modifyVpcEndpointConnectionNotification(array $args = []) (supported in versions 2016-11-15)
@ -1098,6 +1180,8 @@ use Aws\PresignUrlMiddleware;
* @method \GuzzleHttp\Promise\Promise terminateClientVpnConnectionsAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result unassignIpv6Addresses(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise unassignIpv6AddressesAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result unassignPrivateNatGatewayAddress(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise unassignPrivateNatGatewayAddressAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result updateSecurityGroupRuleDescriptionsEgress(array $args = []) (supported in versions 2016-11-15)
* @method \GuzzleHttp\Promise\Promise updateSecurityGroupRuleDescriptionsEgressAsync(array $args = []) (supported in versions 2016-11-15)
* @method \Aws\Result updateSecurityGroupRuleDescriptionsIngress(array $args = []) (supported in versions 2016-11-15)

View file

@ -60,6 +60,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listContainerInstancesAsync(array $args = [])
* @method \Aws\Result listServices(array $args = [])
* @method \GuzzleHttp\Promise\Promise listServicesAsync(array $args = [])
* @method \Aws\Result listServicesByNamespace(array $args = [])
* @method \GuzzleHttp\Promise\Promise listServicesByNamespaceAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result listTaskDefinitionFamilies(array $args = [])

View file

@ -46,6 +46,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getAutoTerminationPolicyAsync(array $args = [])
* @method \Aws\Result getBlockPublicAccessConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getBlockPublicAccessConfigurationAsync(array $args = [])
* @method \Aws\Result getClusterSessionCredentials(array $args = [])
* @method \GuzzleHttp\Promise\Promise getClusterSessionCredentialsAsync(array $args = [])
* @method \Aws\Result getManagedScalingPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise getManagedScalingPolicyAsync(array $args = [])
* @method \Aws\Result getStudioSessionMapping(array $args = [])

View file

@ -0,0 +1,67 @@
<?php
namespace Aws\EndpointV2;
/**
* Provides Endpoint-related artifacts used for endpoint resolution
* and testing.
*/
class EndpointDefinitionProvider
{
public static function getEndpointRuleset($service, $apiVersion)
{
return self::getData($service, $apiVersion, 'ruleset');
}
public static function getEndpointTests($service, $apiVersion)
{
return self::getData($service, $apiVersion, 'tests');
}
public static function getPartitions()
{
$basePath = __DIR__ . '/../data';
$file = '/partitions.json';
if (file_exists($basePath . $file . '.php')) {
return require($basePath . $file . '.php');
} else {
return json_decode(file_get_contents($basePath . $file));
}
}
private static function getData($service, $apiVersion, $type)
{
$basePath = __DIR__ . '/../data';
$serviceDir = $basePath . "/{$service}";
if (!is_dir($serviceDir)) {
throw new \InvalidArgumentException(
'Invalid service name.'
);
}
if ($apiVersion === 'latest') {
$apiVersion = self::getLatest($service);
}
$rulesetPath = $serviceDir . '/' . $apiVersion;
if (!is_dir($rulesetPath)) {
throw new \InvalidArgumentException(
'Invalid api version.'
);
}
$fileName = $type === 'tests' ? '/endpoint-tests-1' : '/endpoint-rule-set-1';
if (file_exists($rulesetPath . $fileName . '.json.php')) {
return require($rulesetPath . $fileName . '.json.php');
} else {
return json_decode(file_get_contents($rulesetPath . $fileName . '.json'), true);
}
}
private static function getLatest($service)
{
$manifest = \Aws\manifest();
return $manifest[$service]['versions']['latest'];
}
}

View file

@ -0,0 +1,68 @@
<?php
namespace Aws\EndpointV2;
use Aws\EndpointV2\Ruleset\Ruleset;
use Aws\Exception\UnresolvedEndpointException;
use Aws\LruArrayCache;
/**
* Given a service's Ruleset and client-provided input parameters, provides
* either an object reflecting the properties of a resolved endpoint,
* or throws an error.
*/
class EndpointProviderV2
{
/** @var Ruleset */
private $ruleset;
/** @var LruArrayCache */
private $cache;
public function __construct(array $ruleset, array $partitions)
{
$this->ruleset = new Ruleset($ruleset, $partitions);
$this->cache = new LruArrayCache(100);
}
/**
* @return Ruleset
*/
public function getRuleset()
{
return $this->ruleset;
}
/**
* Given a Ruleset and input parameters, determines the correct endpoint
* or an error to be thrown for a given request.
*
* @return RulesetEndpoint
* @throws UnresolvedEndpointException
*/
public function resolveEndpoint(array $inputParameters)
{
$hashedParams = $this->hashInputParameters($inputParameters);
$match = $this->cache->get($hashedParams);
if (!is_null($match)) {
return $match;
}
$endpoint = $this->ruleset->evaluate($inputParameters);
if ($endpoint === false) {
throw new UnresolvedEndpointException(
'Unable to resolve an endpoint using the provider arguments: '
. json_encode($inputParameters)
);
}
$this->cache->set($hashedParams, $endpoint);
return $endpoint;
}
private function hashInputParameters($inputParameters)
{
return md5(serialize($inputParameters));
}
}

View file

@ -0,0 +1,243 @@
<?php
namespace Aws\EndpointV2;
use Aws\Api\Serializer\RestSerializer;
use GuzzleHttp\Psr7\Uri;
/**
* Set of helper functions used to set endpoints and endpoint
* properties derived from dynamic endpoint resolution.
*
* @internal
*/
trait EndpointV2SerializerTrait
{
/**
* Merges endpoint resolution arguments passed from the client
* and command and attempts to resolve an endpoint. Headers and
* auth schemes may be returned in a resolved endpoint object.
* A resolved endpoint uri and headers will be applied to the request.
* Auth schemes are applied to the command and compared against the default
* auth scheme at signing.
*
* @internal
*/
private function setRequestOptions(
$endpointProvider,
$command,
$operation,
$commandArgs,
$clientArgs,
&$headers
)
{
$providerArgs = $this->resolveProviderArgs(
$endpointProvider,
$operation,
$commandArgs,
$clientArgs
);
$endpoint = $endpointProvider->resolveEndpoint($providerArgs);
$resolvedUrl = $endpoint->getUrl();
$this->applyScheme($resolvedUrl);
$this->endpoint = $resolvedUrl;
$this->applyAuthSchemeToCommand($endpoint, $command);
$this->applyHeaders($endpoint, $headers);
}
private function resolveProviderArgs(
$endpointProvider,
$operation,
$commandArgs,
$clientArgs
)
{
$rulesetParams = $endpointProvider->getRuleset()->getParameters();
$endpointCommandArgs = $this->filterEndpointCommandArgs(
$rulesetParams,
$commandArgs
);
$staticContextParams = $this->bindStaticContextParams(
$operation->getStaticContextParams()
);
$contextParams = $this->bindContextParams(
$commandArgs, $operation->getContextParams()
);
$providerArgs = $this->normalizeEndpointProviderArgs(
$endpointCommandArgs,
$clientArgs,
$contextParams,
$staticContextParams
);
return $providerArgs;
}
/**
* Merges endpoint provider arguments from different sources.
* Client built-ins are superseded by client context params.
* Client context params are superseded by context params on
* an input member's shape. Context params are superseded by
* static context params. The result of this combination is then
* merged with any appropriate arguments from the command.
*/
private function normalizeEndpointProviderArgs(
$endpointCommandArgs,
$clientArgs,
$contextParams,
$staticContextParams
)
{
$commandContextParams = array_merge($contextParams, $staticContextParams);
$combinedEndpointArgs = array_merge($clientArgs, $commandContextParams);
return array_merge($combinedEndpointArgs, $endpointCommandArgs);
}
private function bindContextParams($commandArgs, $contextParams)
{
$scopedParams = [];
foreach($contextParams as $name => $spec) {
if (isset($commandArgs[$spec['shape']])) {
$scopedParams[$name] = $commandArgs[$spec['shape']];
}
}
return $scopedParams;
}
private function bindStaticContextParams($staticContextParams)
{
$scopedParams = [];
forEach($staticContextParams as $paramName => $paramValue) {
$scopedParams[$paramName] = $paramValue['value'];
}
return $scopedParams;
}
private function filterEndpointCommandArgs(
$rulesetParams,
$commandArgs
)
{
$endpointMiddlewareOpts = [
'@use_dual_stack_endpoint' => 'UseDualStack',
'@use_accelerate_endpoint' => 'Accelerate',
'@use_path_style_endpoint' => 'ForcePathStyle'
];
$filteredArgs = [];
foreach($rulesetParams as $name => $value) {
if (isset($commandArgs[$name])) {
if (!empty($value->getBuiltIn())) {
continue;
}
$filteredArgs[$name] = $commandArgs[$name];
}
}
if ($this->api->getServiceName() === 's3') {
foreach($endpointMiddlewareOpts as $optionName => $newValue) {
if (isset($commandArgs[$optionName])) {
$filteredArgs[$newValue] = $commandArgs[$optionName];
}
}
}
return $filteredArgs;
}
private function applyHeaders($endpoint, &$headers)
{
if (!is_null($endpoint->getHeaders())) {
$headers = array_merge(
$headers,
$endpoint->getHeaders()
);
}
}
private function applyAuthSchemeToCommand($endpoint, $command)
{
if (isset($endpoint->getProperties()['authSchemes'])) {
$authScheme = $this->selectAuthScheme(
$endpoint->getProperties()['authSchemes']
);
$command->setAuthSchemes($authScheme);
}
}
private function selectAuthScheme($authSchemes)
{
$validAuthSchemes = ['sigv4', 'sigv4a', 'none', 'bearer'];
$invalidAuthSchemes = [];
foreach($authSchemes as $authScheme) {
if (in_array($authScheme['name'], $validAuthSchemes)) {
return $this->normalizeAuthScheme($authScheme);
} else {
$invalidAuthSchemes[] = "`{$authScheme['name']}`";
}
}
$invalidAuthSchemesString = implode(', ', $invalidAuthSchemes);
$validAuthSchemesString = '`' . implode('`, `', $validAuthSchemes) . '`';
throw new \InvalidArgumentException(
"This operation requests {$invalidAuthSchemesString}"
. " auth schemes, but the client only supports {$validAuthSchemesString}."
);
}
private function normalizeAuthScheme($authScheme)
{
/*
sigv4a will contain a regionSet property. which is guaranteed to be `*`
for now. The SigV4 class handles this automatically for now. It seems
complexity will be added here in the future.
*/
$normalizedAuthScheme = [];
if (isset($authScheme['disableDoubleEncoding'])
&& $authScheme['disableDoubleEncoding'] === true
&& $authScheme['name'] !== 'sigv4a'
) {
$normalizedAuthScheme['version'] = 's3v4';
} elseif ($authScheme['name'] === 'none') {
$normalizedAuthScheme['version'] = 'anonymous';
}
else {
$normalizedAuthScheme['version'] = str_replace(
'sig', '', $authScheme['name']
);
}
$normalizedAuthScheme['name'] = isset($authScheme['signingName']) ?
$authScheme['signingName'] : null;
$normalizedAuthScheme['region'] = isset($authScheme['signingRegion']) ?
$authScheme['signingRegion'] : null;
$normalizedAuthScheme['signingRegionSet'] = isset($authScheme['signingRegionSet']) ?
$authScheme['signingRegionSet'] : null;
return $normalizedAuthScheme;
}
private function applyScheme(&$resolvedUrl)
{
$resolvedEndpointScheme = parse_url($resolvedUrl, PHP_URL_SCHEME);
$scheme = $this->endpoint instanceof Uri
? $this->endpoint->getScheme()
: parse_url($this->endpoint, PHP_URL_SCHEME);
if (!empty($scheme) && $scheme !== $resolvedEndpointScheme) {
$resolvedUrl = str_replace(
$resolvedEndpointScheme,
$scheme,
$resolvedUrl
);
}
}
}

View file

@ -0,0 +1,62 @@
<?php
namespace Aws\EndpointV2\Rule;
use Aws\EndpointV2\Ruleset\RulesetStandardLibrary;
/**
* A rule within a rule set. All rules contain a conditions property,
* which can be empty, and documentation about the rule.
*/
abstract Class AbstractRule
{
private $conditions;
private $documentation;
public function __construct(array $definition)
{
$this->conditions = $definition['conditions'];
$this->documentation = isset($definition['documentation']) ?
$definition['documentation'] : null;
}
/**
* @return array
*/
public function getConditions()
{
return $this->conditions;
}
/**
* @return mixed
*/
public function getDocumentation()
{
return $this->documentation;
}
/**
* Determines if all conditions for a given rule are met.
*
* @return boolean
*/
protected function evaluateConditions(
array &$inputParameters,
RulesetStandardLibrary $standardLibrary
)
{
foreach($this->getConditions() as $condition) {
$result = $standardLibrary->callFunction($condition, $inputParameters);
if (is_null($result) || $result === false) {
return false;
}
}
return true;
}
abstract public function evaluate(
array $inputParameters,
RulesetStandardLibrary $standardLibrary
);
}

View file

@ -0,0 +1,111 @@
<?php
namespace Aws\EndpointV2\Rule;
use Aws\EndpointV2\Ruleset\RulesetStandardLibrary;
use Aws\EndpointV2\Ruleset\RulesetEndpoint;
Class EndpointRule extends AbstractRule
{
/** @var array */
private $endpoint;
public function __construct(array $definition)
{
parent::__construct($definition);
$this->endpoint = $definition['endpoint'];
}
/**
* @return array
*/
public function getEndpoint()
{
return $this->endpoint;
}
/**
* If all the rule's conditions are met, return the resolved
* endpoint object.
*
* @return RulesetEndpoint | null
*/
public function evaluate(array $inputParameters, RulesetStandardLibrary $standardLibrary)
{
if ($this->evaluateConditions($inputParameters, $standardLibrary)) {
return $this->resolve($inputParameters, $standardLibrary);
}
return false;
}
/**
* Given input parameters, resolve an endpoint in its entirety.
*
* @return RulesetEndpoint
*/
private function resolve(
array $inputParameters,
RulesetStandardLibrary $standardLibrary
)
{
$uri = $standardLibrary->resolveValue($this->endpoint['url'], $inputParameters);
$properties = isset($this->endpoint['properties'])
? $this->resolveProperties($this->endpoint['properties'], $inputParameters, $standardLibrary)
: null;
$headers = $this->resolveHeaders($inputParameters, $standardLibrary);
return new RulesetEndpoint($uri, $properties, $headers);
}
/**
* Recurse through an endpoint's `properties` attribute, resolving template
* strings when found. Return the fully resolved attribute.
*
* @return array
*/
private function resolveProperties(
$properties,
array $inputParameters,
RulesetStandardLibrary $standardLibrary
)
{
if (is_array($properties)) {
$propertiesArr = [];
foreach($properties as $key => $val) {
$propertiesArr[$key] = $this->resolveProperties($val, $inputParameters, $standardLibrary);
}
return $propertiesArr;
} elseif ($standardLibrary->isTemplate($properties)) {
return $standardLibrary->resolveTemplateString($properties, $inputParameters);
}
return $properties;
}
/**
* If present, iterate through an endpoint's headers attribute resolving
* values along the way. Return the fully resolved attribute.
*
* @return array
*/
private function resolveHeaders(
array $inputParameters,
RulesetStandardLibrary $standardLibrary
)
{
$headers = isset($this->endpoint['headers']) ? $this->endpoint['headers'] : null;
if (is_null($headers)) {
return null;
}
$resolvedHeaders = [];
foreach($headers as $headerName => $headerValues) {
$resolvedValues = [];
foreach($headerValues as $value) {
$resolvedValue = $standardLibrary->resolveValue($value, $inputParameters, $standardLibrary);
$resolvedValues[] = $resolvedValue;
}
$resolvedHeaders[$headerName] = $resolvedValues;
}
return $resolvedHeaders;
}
}

View file

@ -0,0 +1,45 @@
<?php
namespace Aws\EndpointV2\Rule;
use Aws\EndpointV2\Ruleset\RulesetStandardLibrary;
use Aws\Exception\UnresolvedEndpointException;
class ErrorRule extends AbstractRule
{
/** @var array */
private $error;
public function __construct($definition)
{
parent::__construct($definition);
$this->error = $definition['error'];
}
/**
* @return array
*/
public function getError()
{
return $this->error;
}
/**
* If an error rule's conditions are met, raise an
* UnresolvedEndpointError containing the fully resolved error string.
*
* @return null
* @throws UnresolvedEndpointException
*/
public function evaluate(
array $inputParameters,
RulesetStandardLibrary $standardLibrary
)
{
if ($this->evaluateConditions($inputParameters, $standardLibrary)) {
$message = $standardLibrary->resolveValue($this->error, $inputParameters);
throw new UnresolvedEndpointException($message);
}
return false;
}
}

View file

@ -0,0 +1,26 @@
<?php
namespace Aws\EndpointV2\Rule;
use Aws\Exception\UnresolvedEndpointException;
class RuleCreator
{
public static function create($type, $definition)
{
switch ($type) {
case 'endpoint':
return new EndpointRule($definition);
case 'error':
return new ErrorRule($definition);
case 'tree':
return new TreeRule($definition);
default:
throw new UnresolvedEndpointException(
'Unknown rule type ' . $type .
' must be of type `endpoint`, `tree` or `error`'
);
}
}
}

View file

@ -0,0 +1,61 @@
<?php
namespace Aws\EndpointV2\Rule;
use Aws\EndpointV2\Ruleset\RulesetStandardLibrary;
class TreeRule extends AbstractRule
{
/** @var array */
private $rules;
public function __construct(array $definition)
{
parent::__construct($definition);
$this->rules = $this->createRules($definition['rules']);
}
/**
* @return array
*/
public function getRules()
{
return $this->rules;
}
/**
* If a tree rule's conditions evaluate successfully, iterate over its
* subordinate rules and return a result if there is one. If any of the
* subsequent rules are trees, the function will recurse until it reaches
* an error or an endpoint rule
*
* @return mixed
*/
public function evaluate(
array $inputParameters,
RulesetStandardLibrary $standardLibrary
)
{
if ($this->evaluateConditions($inputParameters, $standardLibrary)) {
foreach($this->rules as $rule) {
$inputParametersCopy = $inputParameters;
$evaluation = $rule->evaluate($inputParametersCopy, $standardLibrary);
if ($evaluation !== false) {
return $evaluation;
}
}
}
return false;
}
private function createRules(array $rules)
{
$rulesList = [];
forEach($rules as $rule) {
$ruleType = RuleCreator::create($rule['type'], $rule);
$rulesList[] = $ruleType;
}
return $rulesList;
}
}

View file

@ -0,0 +1,117 @@
<?php
namespace Aws\EndpointV2\Ruleset;
use Aws\EndpointV2\Rule\RuleCreator;
/**
* A collection of rules, parameter definitions and a class of helper functions
* used to resolve either an endpoint or an error.
*/
Class Ruleset
{
/** @var string */
private $version;
/** @var array */
private $parameters;
/** @var array */
private $rules;
/** @var RulesetStandardLibrary */
public $standardLibrary;
public function __construct(array $ruleset, array $partitions)
{
$this->version = $ruleset['version'];
$this->parameters = $this->createParameters($ruleset['parameters']);
$this->rules = $this->createRules($ruleset['rules']);
$this->standardLibrary = new RulesetStandardLibrary($partitions);
}
/**
* @return mixed
*/
public function getVersion()
{
return $this->version;
}
/**
* @return array
*/
public function getParameters()
{
return $this->parameters;
}
/**
* @return array
*/
public function getRules()
{
return $this->rules;
}
/**
* Evaluate the ruleset against the input parameters.
* Return the first rule the parameters match against.
*
* @return mixed
*/
public function evaluate(array $inputParameters)
{
$this->validateInputParameters($inputParameters);
foreach($this->rules as $rule) {
$evaluation = $rule->evaluate($inputParameters, $this->standardLibrary);
if ($evaluation !== false) {
return $evaluation;
}
}
return false;
}
/**
* Ensures all corresponding client-provided parameters match
* the Ruleset parameter's specified type.
*
* @return void
*/
private function validateInputParameters(array &$inputParameters)
{
foreach($this->parameters as $paramName => $param) {
$inputParam = isset($inputParameters[$paramName]) ? $inputParameters[$paramName] : null;
if (is_null($inputParam) && !is_null($param->getDefault())) {
$inputParameters[$paramName] = $param->getDefault();
} elseif (!is_null($inputParam)) {
$param->validateInputParam($inputParam);
}
}
}
private function createParameters(array $parameters)
{
$parameterList = [];
foreach($parameters as $name => $definition) {
$parameterList[$name] = new RulesetParameter($name, $definition);
}
return $parameterList;
}
private function createRules(array $rules)
{
$rulesList = [];
forEach($rules as $rule) {
$ruleObj = RuleCreator::create($rule['type'], $rule);
$rulesList[] = $ruleObj;
}
return $rulesList;
}
}

View file

@ -0,0 +1,50 @@
<?php
namespace Aws\EndpointV2\Ruleset;
/**
* Represents a fully resolved endpoint that a
* rule returns if input parameters meet its requirements.
*/
class RulesetEndpoint
{
/** @var string */
private $url;
/** @var array */
private $properties;
/** @var array */
private $headers;
public function __construct($url, $properties = null, $headers = null)
{
$this->url = $url;
$this->properties = $properties;
$this->headers = $headers;
}
/**
* @return mixed
*/
public function getUrl()
{
return $this->url;
}
/**
* @return mixed
*/
public function getProperties()
{
return $this->properties;
}
/**
* @return mixed
*/
public function getHeaders()
{
return $this->headers;
}
}

View file

@ -0,0 +1,148 @@
<?php
namespace Aws\EndpointV2\Ruleset;
use Aws\Exception\UnresolvedEndpointException;
/**
* Houses properties of an individual parameter definition.
*/
class RulesetParameter
{
/** @var string */
private $name;
/** @var string */
private $type;
/** @var string */
private $builtIn;
/** @var string */
private $default;
/** @var array */
private $required;
/** @var string */
private $documentation;
/** @var boolean */
private $deprecated;
public function __construct($name, array $definition)
{
$type = ucfirst($definition['type']);
if ($this->isValidType($type)) {
$this->type = $type;
} else {
throw new UnresolvedEndpointException(
'Unknown parameter type ' . "`{$type}`" .
'. Parameters must be of type `String` or `Boolean`.'
);
}
$this->name = $name;
$this->builtIn = isset($definition['builtIn']) ? $definition['builtIn'] : null;
$this->default = isset($definition['default']) ? $definition['default'] : null;
$this->required = isset($definition['required']) ?
$definition['required'] : false;
$this->documentation = isset($definition['documentation']) ?
$definition['documentation'] : null;
$this->deprecated = isset($definition['deprecated']) ?
$definition['deprecated'] : false;
}
/**
* @return mixed
*/
public function getName()
{
return $this->name;
}
/**
* @return mixed
*/
public function getType()
{
return $this->type;
}
/**
* @return mixed
*/
public function getBuiltIn()
{
return $this->builtIn;
}
/**
* @return mixed
*/
public function getDefault()
{
return $this->default;
}
/**
* @return boolean
*/
public function getRequired()
{
return $this->required;
}
/**
* @return string
*/
public function getDocumentation()
{
return $this->documentation;
}
/**
* @return boolean
*/
public function getDeprecated()
{
return $this->deprecated;
}
/**
* Validates that an input parameter matches the type provided in its definition.
*
* @return void
* @throws InvalidArgumentException
*/
public function validateInputParam($inputParam)
{
$typeMap = [
'String' => 'is_string',
'Boolean' => 'is_bool'
];
if ($typeMap[$this->type]($inputParam) === false) {
throw new UnresolvedEndpointException(
"Input parameter `{$this->name}` is the wrong type. Must be a {$this->type}."
);
}
if ($this->deprecated) {
$deprecated = $this->deprecated;
$deprecationString = "{$this->name} has been deprecated ";
$msg = isset($deprecated['message']) ? $deprecated['message'] : null;
$since = isset($deprecated['since']) ? $deprecated['since'] : null;
if (!is_null($since)) $deprecationString = $deprecationString
. 'since '. $since . '. ';
if (!is_null($msg)) $deprecationString = $deprecationString . $msg;
trigger_error($deprecationString, E_USER_WARNING);
}
}
private function isValidType($type)
{
return in_array($type, ['String', 'Boolean']);
}
}

View file

@ -0,0 +1,424 @@
<?php
namespace Aws\EndpointV2\Ruleset;
use Aws\Exception\UnresolvedEndpointException;
/**
* Provides functions and actions to be performed for endpoint evaluation.
* This is an internal only class and is not subject to backwards-compatibility guarantees.
*
* @internal
*/
class RulesetStandardLibrary
{
const IPV4_RE = '/^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$/';
const IPV6_RE = '/([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|
. ([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]
. {1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:)
. {1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|
. [0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:
. (:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|
. 1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]
. {1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]
. |1{0,1}[0-9]){0,1}[0-9])/';
const TEMPLATE_ESCAPE_RE = '/{\{\s*(.*?)\s*\}\}/';
const TEMPLATE_SEARCH_RE = '/\{[a-zA-Z#]+\}/';
const TEMPLATE_PARSE_RE = '#\{((?>[^\{\}]+)|(?R))*\}#x';
const HOST_LABEL_RE = '/^(?!-)[a-zA-Z\d-]{1,63}(?<!-)$/';
private $partitions;
public function __construct($partitions)
{
$this->partitions = $partitions;
}
/**
* Determines if a value is set.
*
* @return boolean
*/
public function is_set($value)
{
return isset($value);
}
/**
* Function implementation of logical operator `not`
*
* @return boolean
*/
public function not($value)
{
return !$value;
}
/**
* Find an attribute within a value given a path string.
*
* @return mixed
*/
public function getAttr($from, $path)
{
$parts = explode('.', $path);
foreach ($parts as $part) {
$sliceIdx = strpos($part, '[');
if ($sliceIdx !== false) {
if (substr($part, -1) !== ']') {
return null;
}
$slice = intval(substr($part, $sliceIdx + 1, strlen($part) - 1));
$from = isset($from[substr($part,0, $sliceIdx)][$slice])
? $from[substr($part,0, $sliceIdx)][$slice]
: null;
} else {
$from = $from[$part];
}
}
return $from;
}
/**
* Computes a substring given the start index and end index. If `reverse` is
* true, slice the string from the end instead.
*
* @return mixed
*/
public function substring($input, $start, $stop, $reverse)
{
if (!is_string($input)) {
throw new UnresolvedEndpointException(
'Input passed to `substring` must be `string`.'
);
}
if (preg_match('/[^\x00-\x7F]/', $input)) {
return null;
}
if ($start >= $stop or strlen($input) < $stop) {
return null;
}
if (!$reverse) {
return substr($input, $start, $stop - $start);
} else {
$offset = strlen($input) - $stop;
$length = $stop - $start;
return substr($input, $offset, $length);
}
}
/**
* Evaluates two strings for equality.
*
* @return boolean
*/
public function stringEquals($string1, $string2)
{
if (!is_string($string1) || !is_string($string2)) {
throw new UnresolvedEndpointException(
'Values passed to StringEquals must be `string`.'
);
}
return $string1 === $string2;
}
/**
* Evaluates two booleans for equality.
*
* @return boolean
*/
public function booleanEquals($boolean1, $boolean2)
{
return
filter_var($boolean1, FILTER_VALIDATE_BOOLEAN)
=== filter_var($boolean2, FILTER_VALIDATE_BOOLEAN);
}
/**
* Percent-encodes an input string.
*
* @return mixed
*/
public function uriEncode($input)
{
if (is_null($input)) {
return null;
}
return str_replace('%7E', '~', rawurlencode($input));
}
/**
* Parses URL string into components.
*
* @return mixed
*/
public function parseUrl($url)
{
$parsed = parse_url($url);
if ($parsed === false || !empty($parsed['query'])) {
return null;
} elseif (!isset($parsed['scheme'])) {
return null;
}
if ($parsed['scheme'] !== 'http'
&& $parsed['scheme'] !== 'https'
) {
return null;
}
$urlInfo = [];
$urlInfo['scheme'] = $parsed['scheme'];
$urlInfo['authority'] = isset($parsed['host']) ? $parsed['host'] : '';
if (isset($parsed['port'])) {
$urlInfo['authority'] = $urlInfo['authority'] . ":" . $parsed['port'];
}
$urlInfo['path'] = isset($parsed['path']) ? $parsed['path'] : '';
$urlInfo['normalizedPath'] = !empty($parsed['path'])
? rtrim($urlInfo['path'] ?: '', '/' . "/") . '/'
: '/';
$urlInfo['isIp'] = !isset($parsed['host']) ?
'false' : $this->isValidIp($parsed['host']);
return $urlInfo;
}
/**
* Evaluates whether a value is a valid host label per
* RFC 1123. If allow_subdomains is true, split on `.` and validate
* each subdomain separately.
*
* @return boolean
*/
public function isValidHostLabel($hostLabel, $allowSubDomains)
{
if (!isset($hostLabel)
|| (!$allowSubDomains && strpos($hostLabel, '.') != false)
) {
return false;
}
if ($allowSubDomains) {
foreach (explode('.', $hostLabel) as $subdomain) {
if (!$this->validateHostLabel($subdomain)) {
return false;
}
}
return true;
} else {
return $this->validateHostLabel($hostLabel);
}
}
/**
* Parse and validate string for ARN components.
*
* @return array|null
*/
public function parseArn($arnString)
{
if (is_null($arnString)
|| substr( $arnString, 0, 3 ) !== "arn"
) {
return null;
}
$arn = [];
$parts = explode(':', $arnString, 6);
if (sizeof($parts) < 6) {
return null;
}
$arn['partition'] = isset($parts[1]) ? $parts[1] : null;
$arn['service'] = isset($parts[2]) ? $parts[2] : null;
$arn['region'] = isset($parts[3]) ? $parts[3] : null;
$arn['accountId'] = isset($parts[4]) ? $parts[4] : null;
$arn['resourceId'] = isset($parts[5]) ? $parts[5] : null;
if (empty($arn['partition'])
|| empty($arn['service'])
|| empty($arn['resourceId'])
) {
return null;
}
$resource = $arn['resourceId'];
$arn['resourceId'] = preg_split("/[:\/]/", $resource);
return $arn;
}
/**
* Matches a region string to an AWS partition.
*
* @return mixed
*/
public function partition($region)
{
if (!is_string($region)) {
throw new UnresolvedEndpointException(
'Value passed to `partition` must be `string`.'
);
}
$partitions = $this->partitions;
foreach ($partitions['partitions'] as $partition) {
if (array_key_exists($region, $partition['regions'])
|| preg_match("/{$partition['regionRegex']}/", $region)
) {
return $partition['outputs'];
}
}
//return `aws` partition if no match is found.
return $partitions['partitions'][0]['outputs'];
}
/**
* Evaluates whether a value is a valid bucket name for virtual host
* style bucket URLs.
*
* @return boolean
*/
public function isVirtualHostableS3Bucket($bucketName, $allowSubdomains)
{
if ((is_null($bucketName)
|| (strlen($bucketName) < 3 || strlen($bucketName) > 63))
|| preg_match(self::IPV4_RE, $bucketName)
|| strtolower($bucketName) !== $bucketName
) {
return false;
}
if ($allowSubdomains) {
$labels = explode('.', $bucketName);
$results = [];
forEach($labels as $label) {
$results[] = $this->isVirtualHostableS3Bucket($label, false);
}
return !in_array(false, $results);
}
return $this->isValidHostLabel($bucketName, false);
}
public function callFunction($funcCondition, &$inputParameters)
{
$funcArgs = [];
forEach($funcCondition['argv'] as $arg) {
$funcArgs[] = $this->resolveValue($arg, $inputParameters);
}
$funcName = str_replace('aws.', '', $funcCondition['fn']);
if ($funcName === 'isSet') {
$funcName = 'is_set';
}
$result = call_user_func_array(
['Aws\EndpointV2\Ruleset\RulesetStandardLibrary', $funcName],
$funcArgs
);
if (isset($funcCondition['assign'])) {
$assign = $funcCondition['assign'];
if (isset($inputParameters[$assign])){
throw new UnresolvedEndpointException(
"Assignment `{$assign}` already exists in input parameters" .
" or has already been assigned by an endpoint rule and cannot be overwritten."
);
}
$inputParameters[$assign] = $result;
}
return $result;
}
public function resolveValue($value, $inputParameters)
{
//Given a value, check if it's a function, reference or template.
//returns resolved value
if ($this->isFunc($value)) {
return $this->callFunction($value, $inputParameters);
} elseif ($this->isRef($value)) {
return isset($inputParameters[$value['ref']]) ? $inputParameters[$value['ref']] : null;
} elseif ($this->isTemplate($value)) {
return $this->resolveTemplateString($value, $inputParameters);
}
return $value;
}
public function isFunc($arg)
{
return is_array($arg) && isset($arg['fn']);
}
public function isRef($arg)
{
return is_array($arg) && isset($arg['ref']);
}
public function isTemplate($arg)
{
return is_string($arg) && !empty(preg_match(self::TEMPLATE_SEARCH_RE, $arg));
}
public function resolveTemplateString($value, $inputParameters)
{
return preg_replace_callback(
self::TEMPLATE_PARSE_RE,
function ($match) use ($inputParameters) {
if (preg_match(self::TEMPLATE_ESCAPE_RE, $match[0])) {
return $match[1];
}
$notFoundMessage = 'Resolved value was null. Please check rules and ' .
'input parameters and try again.';
$parts = explode("#", $match[1]);
if (count($parts) > 1) {
$resolvedValue = $inputParameters;
foreach($parts as $part) {
if (!isset($resolvedValue[$part])) {
throw new UnresolvedEndpointException($notFoundMessage);
}
$resolvedValue = $resolvedValue[$part];
}
return $resolvedValue;
} else {
if (!isset($inputParameters[$parts[0]])) {
throw new UnresolvedEndpointException($notFoundMessage);
}
return $inputParameters[$parts[0]];
}
},
$value
);
}
private function validateHostLabel ($hostLabel)
{
if (empty($hostLabel) || strlen($hostLabel) > 63) {
return false;
}
if (preg_match(self::HOST_LABEL_RE, $hostLabel)) {
return true;
}
return false;
}
private function isValidIp($hostName)
{
$isWrapped = strpos($hostName, '[') === 0
&& strrpos($hostName, ']') === strlen($hostName) - 1;
return preg_match(
self::IPV4_RE,
$hostName
)
//IPV6 enclosed in brackets
|| ($isWrapped && preg_match(
self::IPV6_RE,
$hostName
))
? 'true' : 'false';
}
}

View file

@ -122,6 +122,8 @@ class EventBridgeClient extends AwsClient {
public function __construct(array $args)
{
parent::__construct($args);
if ($this->isUseEndpointV2()) {
$stack = $this->getHandlerList();
$isCustomEndpoint = isset($args['endpoint']);
$stack->appendBuild(
@ -140,3 +142,4 @@ class EventBridgeClient extends AwsClient {
);
}
}
}

View file

@ -0,0 +1,11 @@
<?php
namespace Aws\Exception;
use Aws\HasMonitoringEventsTrait;
use Aws\MonitoringEventsInterface;
class TokenException extends \RuntimeException implements
MonitoringEventsInterface
{
use HasMonitoringEventsTrait;
}

View file

@ -24,6 +24,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise createGameSessionAsync(array $args = [])
* @method \Aws\Result createGameSessionQueue(array $args = [])
* @method \GuzzleHttp\Promise\Promise createGameSessionQueueAsync(array $args = [])
* @method \Aws\Result createLocation(array $args = [])
* @method \GuzzleHttp\Promise\Promise createLocationAsync(array $args = [])
* @method \Aws\Result createMatchmakingConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise createMatchmakingConfigurationAsync(array $args = [])
* @method \Aws\Result createMatchmakingRuleSet(array $args = [])
@ -50,6 +52,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise deleteGameServerGroupAsync(array $args = [])
* @method \Aws\Result deleteGameSessionQueue(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteGameSessionQueueAsync(array $args = [])
* @method \Aws\Result deleteLocation(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteLocationAsync(array $args = [])
* @method \Aws\Result deleteMatchmakingConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteMatchmakingConfigurationAsync(array $args = [])
* @method \Aws\Result deleteMatchmakingRuleSet(array $args = [])
@ -62,12 +66,16 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise deleteVpcPeeringAuthorizationAsync(array $args = [])
* @method \Aws\Result deleteVpcPeeringConnection(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteVpcPeeringConnectionAsync(array $args = [])
* @method \Aws\Result deregisterCompute(array $args = [])
* @method \GuzzleHttp\Promise\Promise deregisterComputeAsync(array $args = [])
* @method \Aws\Result deregisterGameServer(array $args = [])
* @method \GuzzleHttp\Promise\Promise deregisterGameServerAsync(array $args = [])
* @method \Aws\Result describeAlias(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeAliasAsync(array $args = [])
* @method \Aws\Result describeBuild(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeBuildAsync(array $args = [])
* @method \Aws\Result describeCompute(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeComputeAsync(array $args = [])
* @method \Aws\Result describeEC2InstanceLimits(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeEC2InstanceLimitsAsync(array $args = [])
* @method \Aws\Result describeFleetAttributes(array $args = [])
@ -120,6 +128,10 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise describeVpcPeeringAuthorizationsAsync(array $args = [])
* @method \Aws\Result describeVpcPeeringConnections(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeVpcPeeringConnectionsAsync(array $args = [])
* @method \Aws\Result getComputeAccess(array $args = [])
* @method \GuzzleHttp\Promise\Promise getComputeAccessAsync(array $args = [])
* @method \Aws\Result getComputeAuthToken(array $args = [])
* @method \GuzzleHttp\Promise\Promise getComputeAuthTokenAsync(array $args = [])
* @method \Aws\Result getGameSessionLogUrl(array $args = [])
* @method \GuzzleHttp\Promise\Promise getGameSessionLogUrlAsync(array $args = [])
* @method \Aws\Result getInstanceAccess(array $args = [])
@ -128,18 +140,24 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listAliasesAsync(array $args = [])
* @method \Aws\Result listBuilds(array $args = [])
* @method \GuzzleHttp\Promise\Promise listBuildsAsync(array $args = [])
* @method \Aws\Result listCompute(array $args = [])
* @method \GuzzleHttp\Promise\Promise listComputeAsync(array $args = [])
* @method \Aws\Result listFleets(array $args = [])
* @method \GuzzleHttp\Promise\Promise listFleetsAsync(array $args = [])
* @method \Aws\Result listGameServerGroups(array $args = [])
* @method \GuzzleHttp\Promise\Promise listGameServerGroupsAsync(array $args = [])
* @method \Aws\Result listGameServers(array $args = [])
* @method \GuzzleHttp\Promise\Promise listGameServersAsync(array $args = [])
* @method \Aws\Result listLocations(array $args = [])
* @method \GuzzleHttp\Promise\Promise listLocationsAsync(array $args = [])
* @method \Aws\Result listScripts(array $args = [])
* @method \GuzzleHttp\Promise\Promise listScriptsAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result putScalingPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise putScalingPolicyAsync(array $args = [])
* @method \Aws\Result registerCompute(array $args = [])
* @method \GuzzleHttp\Promise\Promise registerComputeAsync(array $args = [])
* @method \Aws\Result registerGameServer(array $args = [])
* @method \GuzzleHttp\Promise\Promise registerGameServerAsync(array $args = [])
* @method \Aws\Result requestUploadCredentials(array $args = [])

View file

@ -21,6 +21,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise batchGetCrawlersAsync(array $args = [])
* @method \Aws\Result batchGetCustomEntityTypes(array $args = [])
* @method \GuzzleHttp\Promise\Promise batchGetCustomEntityTypesAsync(array $args = [])
* @method \Aws\Result batchGetDataQualityResult(array $args = [])
* @method \GuzzleHttp\Promise\Promise batchGetDataQualityResultAsync(array $args = [])
* @method \Aws\Result batchGetDevEndpoints(array $args = [])
* @method \GuzzleHttp\Promise\Promise batchGetDevEndpointsAsync(array $args = [])
* @method \Aws\Result batchGetJobs(array $args = [])
@ -35,6 +37,10 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise batchStopJobRunAsync(array $args = [])
* @method \Aws\Result batchUpdatePartition(array $args = [])
* @method \GuzzleHttp\Promise\Promise batchUpdatePartitionAsync(array $args = [])
* @method \Aws\Result cancelDataQualityRuleRecommendationRun(array $args = [])
* @method \GuzzleHttp\Promise\Promise cancelDataQualityRuleRecommendationRunAsync(array $args = [])
* @method \Aws\Result cancelDataQualityRulesetEvaluationRun(array $args = [])
* @method \GuzzleHttp\Promise\Promise cancelDataQualityRulesetEvaluationRunAsync(array $args = [])
* @method \Aws\Result cancelMLTaskRun(array $args = [])
* @method \GuzzleHttp\Promise\Promise cancelMLTaskRunAsync(array $args = [])
* @method \Aws\Result cancelStatement(array $args = [])
@ -51,6 +57,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise createCrawlerAsync(array $args = [])
* @method \Aws\Result createCustomEntityType(array $args = [])
* @method \GuzzleHttp\Promise\Promise createCustomEntityTypeAsync(array $args = [])
* @method \Aws\Result createDataQualityRuleset(array $args = [])
* @method \GuzzleHttp\Promise\Promise createDataQualityRulesetAsync(array $args = [])
* @method \Aws\Result createDatabase(array $args = [])
* @method \GuzzleHttp\Promise\Promise createDatabaseAsync(array $args = [])
* @method \Aws\Result createDevEndpoint(array $args = [])
@ -95,6 +103,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise deleteCrawlerAsync(array $args = [])
* @method \Aws\Result deleteCustomEntityType(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteCustomEntityTypeAsync(array $args = [])
* @method \Aws\Result deleteDataQualityRuleset(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteDataQualityRulesetAsync(array $args = [])
* @method \Aws\Result deleteDatabase(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteDatabaseAsync(array $args = [])
* @method \Aws\Result deleteDevEndpoint(array $args = [])
@ -159,6 +169,14 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getCustomEntityTypeAsync(array $args = [])
* @method \Aws\Result getDataCatalogEncryptionSettings(array $args = [])
* @method \GuzzleHttp\Promise\Promise getDataCatalogEncryptionSettingsAsync(array $args = [])
* @method \Aws\Result getDataQualityResult(array $args = [])
* @method \GuzzleHttp\Promise\Promise getDataQualityResultAsync(array $args = [])
* @method \Aws\Result getDataQualityRuleRecommendationRun(array $args = [])
* @method \GuzzleHttp\Promise\Promise getDataQualityRuleRecommendationRunAsync(array $args = [])
* @method \Aws\Result getDataQualityRuleset(array $args = [])
* @method \GuzzleHttp\Promise\Promise getDataQualityRulesetAsync(array $args = [])
* @method \Aws\Result getDataQualityRulesetEvaluationRun(array $args = [])
* @method \GuzzleHttp\Promise\Promise getDataQualityRulesetEvaluationRunAsync(array $args = [])
* @method \Aws\Result getDatabase(array $args = [])
* @method \GuzzleHttp\Promise\Promise getDatabaseAsync(array $args = [])
* @method \Aws\Result getDatabases(array $args = [])
@ -261,6 +279,14 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listCrawlsAsync(array $args = [])
* @method \Aws\Result listCustomEntityTypes(array $args = [])
* @method \GuzzleHttp\Promise\Promise listCustomEntityTypesAsync(array $args = [])
* @method \Aws\Result listDataQualityResults(array $args = [])
* @method \GuzzleHttp\Promise\Promise listDataQualityResultsAsync(array $args = [])
* @method \Aws\Result listDataQualityRuleRecommendationRuns(array $args = [])
* @method \GuzzleHttp\Promise\Promise listDataQualityRuleRecommendationRunsAsync(array $args = [])
* @method \Aws\Result listDataQualityRulesetEvaluationRuns(array $args = [])
* @method \GuzzleHttp\Promise\Promise listDataQualityRulesetEvaluationRunsAsync(array $args = [])
* @method \Aws\Result listDataQualityRulesets(array $args = [])
* @method \GuzzleHttp\Promise\Promise listDataQualityRulesetsAsync(array $args = [])
* @method \Aws\Result listDevEndpoints(array $args = [])
* @method \GuzzleHttp\Promise\Promise listDevEndpointsAsync(array $args = [])
* @method \Aws\Result listJobs(array $args = [])
@ -309,6 +335,10 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise startCrawlerAsync(array $args = [])
* @method \Aws\Result startCrawlerSchedule(array $args = [])
* @method \GuzzleHttp\Promise\Promise startCrawlerScheduleAsync(array $args = [])
* @method \Aws\Result startDataQualityRuleRecommendationRun(array $args = [])
* @method \GuzzleHttp\Promise\Promise startDataQualityRuleRecommendationRunAsync(array $args = [])
* @method \Aws\Result startDataQualityRulesetEvaluationRun(array $args = [])
* @method \GuzzleHttp\Promise\Promise startDataQualityRulesetEvaluationRunAsync(array $args = [])
* @method \Aws\Result startExportLabelsTaskRun(array $args = [])
* @method \GuzzleHttp\Promise\Promise startExportLabelsTaskRunAsync(array $args = [])
* @method \Aws\Result startImportLabelsTaskRun(array $args = [])
@ -351,6 +381,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise updateCrawlerAsync(array $args = [])
* @method \Aws\Result updateCrawlerSchedule(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateCrawlerScheduleAsync(array $args = [])
* @method \Aws\Result updateDataQualityRuleset(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateDataQualityRulesetAsync(array $args = [])
* @method \Aws\Result updateDatabase(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateDatabaseAsync(array $args = [])
* @method \Aws\Result updateDevEndpoint(array $args = [])

View file

@ -27,6 +27,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise describeContactAsync(array $args = [])
* @method \Aws\Result describeEphemeris(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeEphemerisAsync(array $args = [])
* @method \Aws\Result getAgentConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getAgentConfigurationAsync(array $args = [])
* @method \Aws\Result getMissionProfileConfig(array $args = [])
* @method \GuzzleHttp\Promise\Promise getMissionProfileConfigAsync(array $args = [])
* @method \Aws\Result getDataflowEndpointGroup(array $args = [])
@ -53,12 +55,16 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listSatellitesAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result registerAgent(array $args = [])
* @method \GuzzleHttp\Promise\Promise registerAgentAsync(array $args = [])
* @method \Aws\Result reserveContact(array $args = [])
* @method \GuzzleHttp\Promise\Promise reserveContactAsync(array $args = [])
* @method \Aws\Result tagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
* @method \Aws\Result untagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
* @method \Aws\Result updateAgentStatus(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateAgentStatusAsync(array $args = [])
* @method \Aws\Result updateConfig(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateConfigAsync(array $args = [])
* @method \Aws\Result updateEphemeris(array $args = [])

View file

@ -0,0 +1,9 @@
<?php
namespace Aws\IoTRoboRunner\Exception;
use Aws\Exception\AwsException;
/**
* Represents an error interacting with the **AWS IoT RoboRunner** service.
*/
class IoTRoboRunnerException extends AwsException {}

View file

@ -0,0 +1,49 @@
<?php
namespace Aws\IoTRoboRunner;
use Aws\AwsClient;
/**
* This client is used to interact with the **AWS IoT RoboRunner** service.
* @method \Aws\Result createDestination(array $args = [])
* @method \GuzzleHttp\Promise\Promise createDestinationAsync(array $args = [])
* @method \Aws\Result createSite(array $args = [])
* @method \GuzzleHttp\Promise\Promise createSiteAsync(array $args = [])
* @method \Aws\Result createWorker(array $args = [])
* @method \GuzzleHttp\Promise\Promise createWorkerAsync(array $args = [])
* @method \Aws\Result createWorkerFleet(array $args = [])
* @method \GuzzleHttp\Promise\Promise createWorkerFleetAsync(array $args = [])
* @method \Aws\Result deleteDestination(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteDestinationAsync(array $args = [])
* @method \Aws\Result deleteSite(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteSiteAsync(array $args = [])
* @method \Aws\Result deleteWorker(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteWorkerAsync(array $args = [])
* @method \Aws\Result deleteWorkerFleet(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteWorkerFleetAsync(array $args = [])
* @method \Aws\Result getDestination(array $args = [])
* @method \GuzzleHttp\Promise\Promise getDestinationAsync(array $args = [])
* @method \Aws\Result getSite(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSiteAsync(array $args = [])
* @method \Aws\Result getWorker(array $args = [])
* @method \GuzzleHttp\Promise\Promise getWorkerAsync(array $args = [])
* @method \Aws\Result getWorkerFleet(array $args = [])
* @method \GuzzleHttp\Promise\Promise getWorkerFleetAsync(array $args = [])
* @method \Aws\Result listDestinations(array $args = [])
* @method \GuzzleHttp\Promise\Promise listDestinationsAsync(array $args = [])
* @method \Aws\Result listSites(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSitesAsync(array $args = [])
* @method \Aws\Result listWorkerFleets(array $args = [])
* @method \GuzzleHttp\Promise\Promise listWorkerFleetsAsync(array $args = [])
* @method \Aws\Result listWorkers(array $args = [])
* @method \GuzzleHttp\Promise\Promise listWorkersAsync(array $args = [])
* @method \Aws\Result updateDestination(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateDestinationAsync(array $args = [])
* @method \Aws\Result updateSite(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateSiteAsync(array $args = [])
* @method \Aws\Result updateWorker(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateWorkerAsync(array $args = [])
* @method \Aws\Result updateWorkerFleet(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateWorkerFleetAsync(array $args = [])
*/
class IoTRoboRunnerClient extends AwsClient {}

View file

@ -13,6 +13,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise createEntityAsync(array $args = [])
* @method \Aws\Result createScene(array $args = [])
* @method \GuzzleHttp\Promise\Promise createSceneAsync(array $args = [])
* @method \Aws\Result createSyncJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise createSyncJobAsync(array $args = [])
* @method \Aws\Result createWorkspace(array $args = [])
* @method \GuzzleHttp\Promise\Promise createWorkspaceAsync(array $args = [])
* @method \Aws\Result deleteComponentType(array $args = [])
@ -21,18 +23,26 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise deleteEntityAsync(array $args = [])
* @method \Aws\Result deleteScene(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteSceneAsync(array $args = [])
* @method \Aws\Result deleteSyncJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteSyncJobAsync(array $args = [])
* @method \Aws\Result deleteWorkspace(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteWorkspaceAsync(array $args = [])
* @method \Aws\Result executeQuery(array $args = [])
* @method \GuzzleHttp\Promise\Promise executeQueryAsync(array $args = [])
* @method \Aws\Result getComponentType(array $args = [])
* @method \GuzzleHttp\Promise\Promise getComponentTypeAsync(array $args = [])
* @method \Aws\Result getEntity(array $args = [])
* @method \GuzzleHttp\Promise\Promise getEntityAsync(array $args = [])
* @method \Aws\Result getPricingPlan(array $args = [])
* @method \GuzzleHttp\Promise\Promise getPricingPlanAsync(array $args = [])
* @method \Aws\Result getPropertyValue(array $args = [])
* @method \GuzzleHttp\Promise\Promise getPropertyValueAsync(array $args = [])
* @method \Aws\Result getPropertyValueHistory(array $args = [])
* @method \GuzzleHttp\Promise\Promise getPropertyValueHistoryAsync(array $args = [])
* @method \Aws\Result getScene(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSceneAsync(array $args = [])
* @method \Aws\Result getSyncJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSyncJobAsync(array $args = [])
* @method \Aws\Result getWorkspace(array $args = [])
* @method \GuzzleHttp\Promise\Promise getWorkspaceAsync(array $args = [])
* @method \Aws\Result listComponentTypes(array $args = [])
@ -41,6 +51,10 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listEntitiesAsync(array $args = [])
* @method \Aws\Result listScenes(array $args = [])
* @method \GuzzleHttp\Promise\Promise listScenesAsync(array $args = [])
* @method \Aws\Result listSyncJobs(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSyncJobsAsync(array $args = [])
* @method \Aws\Result listSyncResources(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSyncResourcesAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result listWorkspaces(array $args = [])
@ -53,6 +67,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise updateComponentTypeAsync(array $args = [])
* @method \Aws\Result updateEntity(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateEntityAsync(array $args = [])
* @method \Aws\Result updatePricingPlan(array $args = [])
* @method \GuzzleHttp\Promise\Promise updatePricingPlanAsync(array $args = [])
* @method \Aws\Result updateScene(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateSceneAsync(array $args = [])
* @method \Aws\Result updateWorkspace(array $args = [])

View file

@ -99,10 +99,14 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getPositionAsync(array $args = [])
* @method \Aws\Result getPositionConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getPositionConfigurationAsync(array $args = [])
* @method \Aws\Result getPositionEstimate(array $args = [])
* @method \GuzzleHttp\Promise\Promise getPositionEstimateAsync(array $args = [])
* @method \Aws\Result getResourceEventConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getResourceEventConfigurationAsync(array $args = [])
* @method \Aws\Result getResourceLogLevel(array $args = [])
* @method \GuzzleHttp\Promise\Promise getResourceLogLevelAsync(array $args = [])
* @method \Aws\Result getResourcePosition(array $args = [])
* @method \GuzzleHttp\Promise\Promise getResourcePositionAsync(array $args = [])
* @method \Aws\Result getServiceEndpoint(array $args = [])
* @method \GuzzleHttp\Promise\Promise getServiceEndpointAsync(array $args = [])
* @method \Aws\Result getServiceProfile(array $args = [])
@ -197,6 +201,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise updatePositionAsync(array $args = [])
* @method \Aws\Result updateResourceEventConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateResourceEventConfigurationAsync(array $args = [])
* @method \Aws\Result updateResourcePosition(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateResourcePositionAsync(array $args = [])
* @method \Aws\Result updateWirelessDevice(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateWirelessDeviceAsync(array $args = [])
* @method \Aws\Result updateWirelessGateway(array $args = [])

View file

@ -0,0 +1,9 @@
<?php
namespace Aws\KendraRanking\Exception;
use Aws\Exception\AwsException;
/**
* Represents an error interacting with the **Amazon Kendra Intelligent Ranking** service.
*/
class KendraRankingException extends AwsException {}

View file

@ -0,0 +1,27 @@
<?php
namespace Aws\KendraRanking;
use Aws\AwsClient;
/**
* This client is used to interact with the **Amazon Kendra Intelligent Ranking** service.
* @method \Aws\Result createRescoreExecutionPlan(array $args = [])
* @method \GuzzleHttp\Promise\Promise createRescoreExecutionPlanAsync(array $args = [])
* @method \Aws\Result deleteRescoreExecutionPlan(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteRescoreExecutionPlanAsync(array $args = [])
* @method \Aws\Result describeRescoreExecutionPlan(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeRescoreExecutionPlanAsync(array $args = [])
* @method \Aws\Result listRescoreExecutionPlans(array $args = [])
* @method \GuzzleHttp\Promise\Promise listRescoreExecutionPlansAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result rescore(array $args = [])
* @method \GuzzleHttp\Promise\Promise rescoreAsync(array $args = [])
* @method \Aws\Result tagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
* @method \Aws\Result untagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
* @method \Aws\Result updateRescoreExecutionPlan(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateRescoreExecutionPlanAsync(array $args = [])
*/
class KendraRankingClient extends AwsClient {}

View file

@ -13,8 +13,14 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise deleteSignalingChannelAsync(array $args = [])
* @method \Aws\Result deleteStream(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteStreamAsync(array $args = [])
* @method \Aws\Result describeEdgeConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeEdgeConfigurationAsync(array $args = [])
* @method \Aws\Result describeImageGenerationConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeImageGenerationConfigurationAsync(array $args = [])
* @method \Aws\Result describeMappedResourceConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeMappedResourceConfigurationAsync(array $args = [])
* @method \Aws\Result describeMediaStorageConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeMediaStorageConfigurationAsync(array $args = [])
* @method \Aws\Result describeNotificationConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeNotificationConfigurationAsync(array $args = [])
* @method \Aws\Result describeSignalingChannel(array $args = [])
@ -33,6 +39,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result listTagsForStream(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForStreamAsync(array $args = [])
* @method \Aws\Result startEdgeConfigurationUpdate(array $args = [])
* @method \GuzzleHttp\Promise\Promise startEdgeConfigurationUpdateAsync(array $args = [])
* @method \Aws\Result tagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
* @method \Aws\Result tagStream(array $args = [])
@ -45,6 +53,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise updateDataRetentionAsync(array $args = [])
* @method \Aws\Result updateImageGenerationConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateImageGenerationConfigurationAsync(array $args = [])
* @method \Aws\Result updateMediaStorageConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateMediaStorageConfigurationAsync(array $args = [])
* @method \Aws\Result updateNotificationConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateNotificationConfigurationAsync(array $args = [])
* @method \Aws\Result updateSignalingChannel(array $args = [])

View file

@ -0,0 +1,9 @@
<?php
namespace Aws\KinesisVideoWebRTCStorage\Exception;
use Aws\Exception\AwsException;
/**
* Represents an error interacting with the **Amazon Kinesis Video WebRTC Storage** service.
*/
class KinesisVideoWebRTCStorageException extends AwsException {}

View file

@ -0,0 +1,11 @@
<?php
namespace Aws\KinesisVideoWebRTCStorage;
use Aws\AwsClient;
/**
* This client is used to interact with the **Amazon Kinesis Video WebRTC Storage** service.
* @method \Aws\Result joinStorageSession(array $args = [])
* @method \GuzzleHttp\Promise\Promise joinStorageSessionAsync(array $args = [])
*/
class KinesisVideoWebRTCStorageClient extends AwsClient {}

View file

@ -72,6 +72,8 @@ use Aws\Middleware;
* @method \GuzzleHttp\Promise\Promise getPolicyAsync(array $args = [])
* @method \Aws\Result getProvisionedConcurrencyConfig(array $args = [])
* @method \GuzzleHttp\Promise\Promise getProvisionedConcurrencyConfigAsync(array $args = [])
* @method \Aws\Result getRuntimeManagementConfig(array $args = [])
* @method \GuzzleHttp\Promise\Promise getRuntimeManagementConfigAsync(array $args = [])
* @method \Aws\Result invoke(array $args = [])
* @method \GuzzleHttp\Promise\Promise invokeAsync(array $args = [])
* @method \Aws\Result invokeAsync(array $args = [])
@ -112,6 +114,8 @@ use Aws\Middleware;
* @method \GuzzleHttp\Promise\Promise putFunctionEventInvokeConfigAsync(array $args = [])
* @method \Aws\Result putProvisionedConcurrencyConfig(array $args = [])
* @method \GuzzleHttp\Promise\Promise putProvisionedConcurrencyConfigAsync(array $args = [])
* @method \Aws\Result putRuntimeManagementConfig(array $args = [])
* @method \GuzzleHttp\Promise\Promise putRuntimeManagementConfigAsync(array $args = [])
* @method \Aws\Result removeLayerVersionPermission(array $args = [])
* @method \GuzzleHttp\Promise\Promise removeLayerVersionPermissionAsync(array $args = [])
* @method \Aws\Result removePermission(array $args = [])

View file

@ -0,0 +1,9 @@
<?php
namespace Aws\LicenseManagerLinuxSubscriptions\Exception;
use Aws\Exception\AwsException;
/**
* Represents an error interacting with the **AWS License Manager Linux Subscriptions** service.
*/
class LicenseManagerLinuxSubscriptionsException extends AwsException {}

View file

@ -0,0 +1,17 @@
<?php
namespace Aws\LicenseManagerLinuxSubscriptions;
use Aws\AwsClient;
/**
* This client is used to interact with the **AWS License Manager Linux Subscriptions** service.
* @method \Aws\Result getServiceSettings(array $args = [])
* @method \GuzzleHttp\Promise\Promise getServiceSettingsAsync(array $args = [])
* @method \Aws\Result listLinuxSubscriptionInstances(array $args = [])
* @method \GuzzleHttp\Promise\Promise listLinuxSubscriptionInstancesAsync(array $args = [])
* @method \Aws\Result listLinuxSubscriptions(array $args = [])
* @method \GuzzleHttp\Promise\Promise listLinuxSubscriptionsAsync(array $args = [])
* @method \Aws\Result updateServiceSettings(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateServiceSettingsAsync(array $args = [])
*/
class LicenseManagerLinuxSubscriptionsClient extends AwsClient {}

View file

@ -25,5 +25,7 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise startProductSubscriptionAsync(array $args = [])
* @method \Aws\Result stopProductSubscription(array $args = [])
* @method \GuzzleHttp\Promise\Promise stopProductSubscriptionAsync(array $args = [])
* @method \Aws\Result updateIdentityProviderSettings(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateIdentityProviderSettingsAsync(array $args = [])
*/
class LicenseManagerUserSubscriptionsClient extends AwsClient {}

View file

@ -59,10 +59,14 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getAdministratorAccountAsync(array $args = [])
* @method \Aws\Result getAllowList(array $args = [])
* @method \GuzzleHttp\Promise\Promise getAllowListAsync(array $args = [])
* @method \Aws\Result getAutomatedDiscoveryConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getAutomatedDiscoveryConfigurationAsync(array $args = [])
* @method \Aws\Result getBucketStatistics(array $args = [])
* @method \GuzzleHttp\Promise\Promise getBucketStatisticsAsync(array $args = [])
* @method \Aws\Result getClassificationExportConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getClassificationExportConfigurationAsync(array $args = [])
* @method \Aws\Result getClassificationScope(array $args = [])
* @method \GuzzleHttp\Promise\Promise getClassificationScopeAsync(array $args = [])
* @method \Aws\Result getCustomDataIdentifier(array $args = [])
* @method \GuzzleHttp\Promise\Promise getCustomDataIdentifierAsync(array $args = [])
* @method \Aws\Result getFindingStatistics(array $args = [])
@ -81,12 +85,16 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getMasterAccountAsync(array $args = [])
* @method \Aws\Result getMember(array $args = [])
* @method \GuzzleHttp\Promise\Promise getMemberAsync(array $args = [])
* @method \Aws\Result getResourceProfile(array $args = [])
* @method \GuzzleHttp\Promise\Promise getResourceProfileAsync(array $args = [])
* @method \Aws\Result getRevealConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise getRevealConfigurationAsync(array $args = [])
* @method \Aws\Result getSensitiveDataOccurrences(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSensitiveDataOccurrencesAsync(array $args = [])
* @method \Aws\Result getSensitiveDataOccurrencesAvailability(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSensitiveDataOccurrencesAvailabilityAsync(array $args = [])
* @method \Aws\Result getSensitivityInspectionTemplate(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSensitivityInspectionTemplateAsync(array $args = [])
* @method \Aws\Result getUsageStatistics(array $args = [])
* @method \GuzzleHttp\Promise\Promise getUsageStatisticsAsync(array $args = [])
* @method \Aws\Result getUsageTotals(array $args = [])
@ -95,6 +103,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listAllowListsAsync(array $args = [])
* @method \Aws\Result listClassificationJobs(array $args = [])
* @method \GuzzleHttp\Promise\Promise listClassificationJobsAsync(array $args = [])
* @method \Aws\Result listClassificationScopes(array $args = [])
* @method \GuzzleHttp\Promise\Promise listClassificationScopesAsync(array $args = [])
* @method \Aws\Result listCustomDataIdentifiers(array $args = [])
* @method \GuzzleHttp\Promise\Promise listCustomDataIdentifiersAsync(array $args = [])
* @method \Aws\Result listFindings(array $args = [])
@ -109,6 +119,12 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listMembersAsync(array $args = [])
* @method \Aws\Result listOrganizationAdminAccounts(array $args = [])
* @method \GuzzleHttp\Promise\Promise listOrganizationAdminAccountsAsync(array $args = [])
* @method \Aws\Result listResourceProfileArtifacts(array $args = [])
* @method \GuzzleHttp\Promise\Promise listResourceProfileArtifactsAsync(array $args = [])
* @method \Aws\Result listResourceProfileDetections(array $args = [])
* @method \GuzzleHttp\Promise\Promise listResourceProfileDetectionsAsync(array $args = [])
* @method \Aws\Result listSensitivityInspectionTemplates(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSensitivityInspectionTemplatesAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result putClassificationExportConfiguration(array $args = [])
@ -125,8 +141,12 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
* @method \Aws\Result updateAllowList(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateAllowListAsync(array $args = [])
* @method \Aws\Result updateAutomatedDiscoveryConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateAutomatedDiscoveryConfigurationAsync(array $args = [])
* @method \Aws\Result updateClassificationJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateClassificationJobAsync(array $args = [])
* @method \Aws\Result updateClassificationScope(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateClassificationScopeAsync(array $args = [])
* @method \Aws\Result updateFindingsFilter(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateFindingsFilterAsync(array $args = [])
* @method \Aws\Result updateMacieSession(array $args = [])
@ -135,7 +155,13 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise updateMemberSessionAsync(array $args = [])
* @method \Aws\Result updateOrganizationConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateOrganizationConfigurationAsync(array $args = [])
* @method \Aws\Result updateResourceProfile(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateResourceProfileAsync(array $args = [])
* @method \Aws\Result updateResourceProfileDetections(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateResourceProfileDetectionsAsync(array $args = [])
* @method \Aws\Result updateRevealConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateRevealConfigurationAsync(array $args = [])
* @method \Aws\Result updateSensitivityInspectionTemplate(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateSensitivityInspectionTemplateAsync(array $args = [])
*/
class Macie2Client extends AwsClient {}

View file

@ -19,6 +19,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise describeWorkspaceAsync(array $args = [])
* @method \Aws\Result describeWorkspaceAuthentication(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeWorkspaceAuthenticationAsync(array $args = [])
* @method \Aws\Result describeWorkspaceConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeWorkspaceConfigurationAsync(array $args = [])
* @method \Aws\Result disassociateLicense(array $args = [])
* @method \GuzzleHttp\Promise\Promise disassociateLicenseAsync(array $args = [])
* @method \Aws\Result listPermissions(array $args = [])
@ -37,5 +39,7 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise updateWorkspaceAsync(array $args = [])
* @method \Aws\Result updateWorkspaceAuthentication(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateWorkspaceAuthenticationAsync(array $args = [])
* @method \Aws\Result updateWorkspaceConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateWorkspaceConfigurationAsync(array $args = [])
*/
class ManagedGrafanaClient extends AwsClient {}

View file

@ -5,6 +5,8 @@ use Aws\AwsClient;
/**
* This client is used to interact with the **AWS MediaTailor** service.
* @method \Aws\Result configureLogsForChannel(array $args = [])
* @method \GuzzleHttp\Promise\Promise configureLogsForChannelAsync(array $args = [])
* @method \Aws\Result configureLogsForPlaybackConfiguration(array $args = [])
* @method \GuzzleHttp\Promise\Promise configureLogsForPlaybackConfigurationAsync(array $args = [])
* @method \Aws\Result createChannel(array $args = [])
@ -85,6 +87,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise updateChannelAsync(array $args = [])
* @method \Aws\Result updateLiveSource(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateLiveSourceAsync(array $args = [])
* @method \Aws\Result updateProgram(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateProgramAsync(array $args = [])
* @method \Aws\Result updateSourceLocation(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateSourceLocationAsync(array $args = [])
* @method \Aws\Result updateVodSource(array $args = [])

View file

@ -45,6 +45,10 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise describeParameterGroupsAsync(array $args = [])
* @method \Aws\Result describeParameters(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeParametersAsync(array $args = [])
* @method \Aws\Result describeReservedNodes(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeReservedNodesAsync(array $args = [])
* @method \Aws\Result describeReservedNodesOfferings(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeReservedNodesOfferingsAsync(array $args = [])
* @method \Aws\Result describeServiceUpdates(array $args = [])
* @method \GuzzleHttp\Promise\Promise describeServiceUpdatesAsync(array $args = [])
* @method \Aws\Result describeSnapshots(array $args = [])
@ -59,6 +63,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listAllowedNodeTypeUpdatesAsync(array $args = [])
* @method \Aws\Result listTags(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsAsync(array $args = [])
* @method \Aws\Result purchaseReservedNodesOffering(array $args = [])
* @method \GuzzleHttp\Promise\Promise purchaseReservedNodesOfferingAsync(array $args = [])
* @method \Aws\Result resetParameterGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise resetParameterGroupAsync(array $args = [])
* @method \Aws\Result tagResource(array $args = [])

View file

@ -4,7 +4,10 @@ namespace Aws;
use Aws\Api\Service;
use Aws\Api\Validator;
use Aws\Credentials\CredentialsInterface;
use Aws\EndpointV2\EndpointProviderV2;
use Aws\Exception\AwsException;
use Aws\Token\TokenAuthorization;
use Aws\Token\TokenInterface;
use GuzzleHttp\Promise;
use GuzzleHttp\Psr7;
use GuzzleHttp\Psr7\LazyOpenStream;
@ -71,6 +74,12 @@ final class Middleware
CommandInterface $command,
RequestInterface $request = null
) use ($api, $validator, $handler) {
if ($api->isModifiedModel()) {
$api = new Service(
$api->getDefinition(),
$api->getProvider()
);
}
$operation = $api->getOperation($command->getName());
$validator->validate(
$command->getName(),
@ -87,13 +96,19 @@ final class Middleware
*
* @param callable $serializer Function used to serialize a request for a
* command.
* @param EndpointProviderV2 | null $endpointProvider
* @param array $providerArgs
* @return callable
*/
public static function requestBuilder(callable $serializer)
public static function requestBuilder(
$serializer,
$endpointProvider = null,
array $providerArgs = null
)
{
return function (callable $handler) use ($serializer) {
return function (CommandInterface $command) use ($serializer, $handler) {
return $handler($command, $serializer($command));
return function (callable $handler) use ($serializer, $endpointProvider, $providerArgs) {
return function (CommandInterface $command) use ($serializer, $handler, $endpointProvider, $providerArgs) {
return $handler($command, $serializer($command, $endpointProvider, $providerArgs));
};
};
}
@ -110,14 +125,25 @@ final class Middleware
*
* @return callable
*/
public static function signer(callable $credProvider, callable $signatureFunction)
public static function signer(callable $credProvider, callable $signatureFunction, $tokenProvider = null)
{
return function (callable $handler) use ($signatureFunction, $credProvider) {
return function (callable $handler) use ($signatureFunction, $credProvider, $tokenProvider) {
return function (
CommandInterface $command,
RequestInterface $request
) use ($handler, $signatureFunction, $credProvider) {
) use ($handler, $signatureFunction, $credProvider, $tokenProvider) {
$signer = $signatureFunction($command);
if ($signer instanceof TokenAuthorization) {
return $tokenProvider()->then(
function (TokenInterface $token)
use ($handler, $command, $signer, $request) {
return $handler(
$command,
$signer->authorizeRequest($request, $token)
);
}
);
} else {
return $credProvider()->then(
function (CredentialsInterface $creds)
use ($handler, $command, $signer, $request) {
@ -127,6 +153,7 @@ final class Middleware
);
}
);
}
};
};
}

View file

@ -13,6 +13,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getAssessmentAsync(array $args = [])
* @method \Aws\Result getImportFileTask(array $args = [])
* @method \GuzzleHttp\Promise\Promise getImportFileTaskAsync(array $args = [])
* @method \Aws\Result getLatestAssessmentId(array $args = [])
* @method \GuzzleHttp\Promise\Promise getLatestAssessmentIdAsync(array $args = [])
* @method \Aws\Result getPortfolioPreferences(array $args = [])
* @method \GuzzleHttp\Promise\Promise getPortfolioPreferencesAsync(array $args = [])
* @method \Aws\Result getPortfolioSummary(array $args = [])

View file

@ -3,6 +3,8 @@ namespace Aws;
use Aws\Endpoint\PartitionEndpointProvider;
use Aws\Endpoint\PartitionInterface;
use Aws\EndpointV2\EndpointProviderV2;
use Aws\EndpointV2\EndpointDefinitionProvider;
class MultiRegionClient implements AwsClientInterface
{
@ -80,9 +82,12 @@ class MultiRegionClient implements AwsClientInterface
. ' or "aws-us-gov").'
);
}
$args['partition'] = $value;
$args['endpoint_provider'] = $value;
$ruleset = EndpointDefinitionProvider::getEndpointRuleset(
$args['service'],
isset($args['version']) ? $args['version'] : 'latest'
);
$partitions = EndpointDefinitionProvider::getPartitions();
$args['endpoint_provider'] = new EndpointProviderV2($ruleset, $partitions);
}
],
];

View file

@ -47,6 +47,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise getStreamingImageAsync(array $args = [])
* @method \Aws\Result getStreamingSession(array $args = [])
* @method \GuzzleHttp\Promise\Promise getStreamingSessionAsync(array $args = [])
* @method \Aws\Result getStreamingSessionBackup(array $args = [])
* @method \GuzzleHttp\Promise\Promise getStreamingSessionBackupAsync(array $args = [])
* @method \Aws\Result getStreamingSessionStream(array $args = [])
* @method \GuzzleHttp\Promise\Promise getStreamingSessionStreamAsync(array $args = [])
* @method \Aws\Result getStudio(array $args = [])
@ -65,6 +67,8 @@ use Aws\AwsClient;
* @method \GuzzleHttp\Promise\Promise listLaunchProfilesAsync(array $args = [])
* @method \Aws\Result listStreamingImages(array $args = [])
* @method \GuzzleHttp\Promise\Promise listStreamingImagesAsync(array $args = [])
* @method \Aws\Result listStreamingSessionBackups(array $args = [])
* @method \GuzzleHttp\Promise\Promise listStreamingSessionBackupsAsync(array $args = [])
* @method \Aws\Result listStreamingSessions(array $args = [])
* @method \GuzzleHttp\Promise\Promise listStreamingSessionsAsync(array $args = [])
* @method \Aws\Result listStudioComponents(array $args = [])

View file

@ -0,0 +1,9 @@
<?php
namespace Aws\OAM\Exception;
use Aws\Exception\AwsException;
/**
* Represents an error interacting with the **CloudWatch Observability Access Manager** service.
*/
class OAMException extends AwsException {}

View file

@ -0,0 +1,39 @@
<?php
namespace Aws\OAM;
use Aws\AwsClient;
/**
* This client is used to interact with the **CloudWatch Observability Access Manager** service.
* @method \Aws\Result createLink(array $args = [])
* @method \GuzzleHttp\Promise\Promise createLinkAsync(array $args = [])
* @method \Aws\Result createSink(array $args = [])
* @method \GuzzleHttp\Promise\Promise createSinkAsync(array $args = [])
* @method \Aws\Result deleteLink(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteLinkAsync(array $args = [])
* @method \Aws\Result deleteSink(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteSinkAsync(array $args = [])
* @method \Aws\Result getLink(array $args = [])
* @method \GuzzleHttp\Promise\Promise getLinkAsync(array $args = [])
* @method \Aws\Result getSink(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSinkAsync(array $args = [])
* @method \Aws\Result getSinkPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSinkPolicyAsync(array $args = [])
* @method \Aws\Result listAttachedLinks(array $args = [])
* @method \GuzzleHttp\Promise\Promise listAttachedLinksAsync(array $args = [])
* @method \Aws\Result listLinks(array $args = [])
* @method \GuzzleHttp\Promise\Promise listLinksAsync(array $args = [])
* @method \Aws\Result listSinks(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSinksAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result putSinkPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise putSinkPolicyAsync(array $args = [])
* @method \Aws\Result tagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
* @method \Aws\Result untagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
* @method \Aws\Result updateLink(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateLinkAsync(array $args = [])
*/
class OAMClient extends AwsClient {}

View file

@ -0,0 +1,9 @@
<?php
namespace Aws\Omics\Exception;
use Aws\Exception\AwsException;
/**
* Represents an error interacting with the **Amazon Omics** service.
*/
class OmicsException extends AwsException {}

View file

@ -0,0 +1,141 @@
<?php
namespace Aws\Omics;
use Aws\AwsClient;
/**
* This client is used to interact with the **Amazon Omics** service.
* @method \Aws\Result batchDeleteReadSet(array $args = [])
* @method \GuzzleHttp\Promise\Promise batchDeleteReadSetAsync(array $args = [])
* @method \Aws\Result cancelAnnotationImportJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise cancelAnnotationImportJobAsync(array $args = [])
* @method \Aws\Result cancelRun(array $args = [])
* @method \GuzzleHttp\Promise\Promise cancelRunAsync(array $args = [])
* @method \Aws\Result cancelVariantImportJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise cancelVariantImportJobAsync(array $args = [])
* @method \Aws\Result createAnnotationStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise createAnnotationStoreAsync(array $args = [])
* @method \Aws\Result createReferenceStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise createReferenceStoreAsync(array $args = [])
* @method \Aws\Result createRunGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise createRunGroupAsync(array $args = [])
* @method \Aws\Result createSequenceStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise createSequenceStoreAsync(array $args = [])
* @method \Aws\Result createVariantStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise createVariantStoreAsync(array $args = [])
* @method \Aws\Result createWorkflow(array $args = [])
* @method \GuzzleHttp\Promise\Promise createWorkflowAsync(array $args = [])
* @method \Aws\Result deleteAnnotationStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteAnnotationStoreAsync(array $args = [])
* @method \Aws\Result deleteReference(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteReferenceAsync(array $args = [])
* @method \Aws\Result deleteReferenceStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteReferenceStoreAsync(array $args = [])
* @method \Aws\Result deleteRun(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteRunAsync(array $args = [])
* @method \Aws\Result deleteRunGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteRunGroupAsync(array $args = [])
* @method \Aws\Result deleteSequenceStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteSequenceStoreAsync(array $args = [])
* @method \Aws\Result deleteVariantStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteVariantStoreAsync(array $args = [])
* @method \Aws\Result deleteWorkflow(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteWorkflowAsync(array $args = [])
* @method \Aws\Result getAnnotationImportJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise getAnnotationImportJobAsync(array $args = [])
* @method \Aws\Result getAnnotationStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise getAnnotationStoreAsync(array $args = [])
* @method \Aws\Result getReadSet(array $args = [])
* @method \GuzzleHttp\Promise\Promise getReadSetAsync(array $args = [])
* @method \Aws\Result getReadSetActivationJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise getReadSetActivationJobAsync(array $args = [])
* @method \Aws\Result getReadSetExportJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise getReadSetExportJobAsync(array $args = [])
* @method \Aws\Result getReadSetImportJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise getReadSetImportJobAsync(array $args = [])
* @method \Aws\Result getReadSetMetadata(array $args = [])
* @method \GuzzleHttp\Promise\Promise getReadSetMetadataAsync(array $args = [])
* @method \Aws\Result getReference(array $args = [])
* @method \GuzzleHttp\Promise\Promise getReferenceAsync(array $args = [])
* @method \Aws\Result getReferenceImportJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise getReferenceImportJobAsync(array $args = [])
* @method \Aws\Result getReferenceMetadata(array $args = [])
* @method \GuzzleHttp\Promise\Promise getReferenceMetadataAsync(array $args = [])
* @method \Aws\Result getReferenceStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise getReferenceStoreAsync(array $args = [])
* @method \Aws\Result getRun(array $args = [])
* @method \GuzzleHttp\Promise\Promise getRunAsync(array $args = [])
* @method \Aws\Result getRunGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise getRunGroupAsync(array $args = [])
* @method \Aws\Result getRunTask(array $args = [])
* @method \GuzzleHttp\Promise\Promise getRunTaskAsync(array $args = [])
* @method \Aws\Result getSequenceStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSequenceStoreAsync(array $args = [])
* @method \Aws\Result getVariantImportJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise getVariantImportJobAsync(array $args = [])
* @method \Aws\Result getVariantStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise getVariantStoreAsync(array $args = [])
* @method \Aws\Result getWorkflow(array $args = [])
* @method \GuzzleHttp\Promise\Promise getWorkflowAsync(array $args = [])
* @method \Aws\Result listAnnotationImportJobs(array $args = [])
* @method \GuzzleHttp\Promise\Promise listAnnotationImportJobsAsync(array $args = [])
* @method \Aws\Result listAnnotationStores(array $args = [])
* @method \GuzzleHttp\Promise\Promise listAnnotationStoresAsync(array $args = [])
* @method \Aws\Result listReadSetActivationJobs(array $args = [])
* @method \GuzzleHttp\Promise\Promise listReadSetActivationJobsAsync(array $args = [])
* @method \Aws\Result listReadSetExportJobs(array $args = [])
* @method \GuzzleHttp\Promise\Promise listReadSetExportJobsAsync(array $args = [])
* @method \Aws\Result listReadSetImportJobs(array $args = [])
* @method \GuzzleHttp\Promise\Promise listReadSetImportJobsAsync(array $args = [])
* @method \Aws\Result listReadSets(array $args = [])
* @method \GuzzleHttp\Promise\Promise listReadSetsAsync(array $args = [])
* @method \Aws\Result listReferenceImportJobs(array $args = [])
* @method \GuzzleHttp\Promise\Promise listReferenceImportJobsAsync(array $args = [])
* @method \Aws\Result listReferenceStores(array $args = [])
* @method \GuzzleHttp\Promise\Promise listReferenceStoresAsync(array $args = [])
* @method \Aws\Result listReferences(array $args = [])
* @method \GuzzleHttp\Promise\Promise listReferencesAsync(array $args = [])
* @method \Aws\Result listRunGroups(array $args = [])
* @method \GuzzleHttp\Promise\Promise listRunGroupsAsync(array $args = [])
* @method \Aws\Result listRunTasks(array $args = [])
* @method \GuzzleHttp\Promise\Promise listRunTasksAsync(array $args = [])
* @method \Aws\Result listRuns(array $args = [])
* @method \GuzzleHttp\Promise\Promise listRunsAsync(array $args = [])
* @method \Aws\Result listSequenceStores(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSequenceStoresAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result listVariantImportJobs(array $args = [])
* @method \GuzzleHttp\Promise\Promise listVariantImportJobsAsync(array $args = [])
* @method \Aws\Result listVariantStores(array $args = [])
* @method \GuzzleHttp\Promise\Promise listVariantStoresAsync(array $args = [])
* @method \Aws\Result listWorkflows(array $args = [])
* @method \GuzzleHttp\Promise\Promise listWorkflowsAsync(array $args = [])
* @method \Aws\Result startAnnotationImportJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise startAnnotationImportJobAsync(array $args = [])
* @method \Aws\Result startReadSetActivationJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise startReadSetActivationJobAsync(array $args = [])
* @method \Aws\Result startReadSetExportJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise startReadSetExportJobAsync(array $args = [])
* @method \Aws\Result startReadSetImportJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise startReadSetImportJobAsync(array $args = [])
* @method \Aws\Result startReferenceImportJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise startReferenceImportJobAsync(array $args = [])
* @method \Aws\Result startRun(array $args = [])
* @method \GuzzleHttp\Promise\Promise startRunAsync(array $args = [])
* @method \Aws\Result startVariantImportJob(array $args = [])
* @method \GuzzleHttp\Promise\Promise startVariantImportJobAsync(array $args = [])
* @method \Aws\Result tagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
* @method \Aws\Result untagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
* @method \Aws\Result updateAnnotationStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateAnnotationStoreAsync(array $args = [])
* @method \Aws\Result updateRunGroup(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateRunGroupAsync(array $args = [])
* @method \Aws\Result updateVariantStore(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateVariantStoreAsync(array $args = [])
* @method \Aws\Result updateWorkflow(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateWorkflowAsync(array $args = [])
*/
class OmicsClient extends AwsClient {}

View file

@ -0,0 +1,9 @@
<?php
namespace Aws\OpenSearchServerless\Exception;
use Aws\Exception\AwsException;
/**
* Represents an error interacting with the **OpenSearch Service Serverless** service.
*/
class OpenSearchServerlessException extends AwsException {}

View file

@ -0,0 +1,71 @@
<?php
namespace Aws\OpenSearchServerless;
use Aws\AwsClient;
/**
* This client is used to interact with the **OpenSearch Service Serverless** service.
* @method \Aws\Result batchGetCollection(array $args = [])
* @method \GuzzleHttp\Promise\Promise batchGetCollectionAsync(array $args = [])
* @method \Aws\Result batchGetVpcEndpoint(array $args = [])
* @method \GuzzleHttp\Promise\Promise batchGetVpcEndpointAsync(array $args = [])
* @method \Aws\Result createAccessPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise createAccessPolicyAsync(array $args = [])
* @method \Aws\Result createCollection(array $args = [])
* @method \GuzzleHttp\Promise\Promise createCollectionAsync(array $args = [])
* @method \Aws\Result createSecurityConfig(array $args = [])
* @method \GuzzleHttp\Promise\Promise createSecurityConfigAsync(array $args = [])
* @method \Aws\Result createSecurityPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise createSecurityPolicyAsync(array $args = [])
* @method \Aws\Result createVpcEndpoint(array $args = [])
* @method \GuzzleHttp\Promise\Promise createVpcEndpointAsync(array $args = [])
* @method \Aws\Result deleteAccessPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteAccessPolicyAsync(array $args = [])
* @method \Aws\Result deleteCollection(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteCollectionAsync(array $args = [])
* @method \Aws\Result deleteSecurityConfig(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteSecurityConfigAsync(array $args = [])
* @method \Aws\Result deleteSecurityPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteSecurityPolicyAsync(array $args = [])
* @method \Aws\Result deleteVpcEndpoint(array $args = [])
* @method \GuzzleHttp\Promise\Promise deleteVpcEndpointAsync(array $args = [])
* @method \Aws\Result getAccessPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise getAccessPolicyAsync(array $args = [])
* @method \Aws\Result getAccountSettings(array $args = [])
* @method \GuzzleHttp\Promise\Promise getAccountSettingsAsync(array $args = [])
* @method \Aws\Result getPoliciesStats(array $args = [])
* @method \GuzzleHttp\Promise\Promise getPoliciesStatsAsync(array $args = [])
* @method \Aws\Result getSecurityConfig(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSecurityConfigAsync(array $args = [])
* @method \Aws\Result getSecurityPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise getSecurityPolicyAsync(array $args = [])
* @method \Aws\Result listAccessPolicies(array $args = [])
* @method \GuzzleHttp\Promise\Promise listAccessPoliciesAsync(array $args = [])
* @method \Aws\Result listCollections(array $args = [])
* @method \GuzzleHttp\Promise\Promise listCollectionsAsync(array $args = [])
* @method \Aws\Result listSecurityConfigs(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSecurityConfigsAsync(array $args = [])
* @method \Aws\Result listSecurityPolicies(array $args = [])
* @method \GuzzleHttp\Promise\Promise listSecurityPoliciesAsync(array $args = [])
* @method \Aws\Result listTagsForResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise listTagsForResourceAsync(array $args = [])
* @method \Aws\Result listVpcEndpoints(array $args = [])
* @method \GuzzleHttp\Promise\Promise listVpcEndpointsAsync(array $args = [])
* @method \Aws\Result tagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise tagResourceAsync(array $args = [])
* @method \Aws\Result untagResource(array $args = [])
* @method \GuzzleHttp\Promise\Promise untagResourceAsync(array $args = [])
* @method \Aws\Result updateAccessPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateAccessPolicyAsync(array $args = [])
* @method \Aws\Result updateAccountSettings(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateAccountSettingsAsync(array $args = [])
* @method \Aws\Result updateCollection(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateCollectionAsync(array $args = [])
* @method \Aws\Result updateSecurityConfig(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateSecurityConfigAsync(array $args = [])
* @method \Aws\Result updateSecurityPolicy(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateSecurityPolicyAsync(array $args = [])
* @method \Aws\Result updateVpcEndpoint(array $args = [])
* @method \GuzzleHttp\Promise\Promise updateVpcEndpointAsync(array $args = [])
*/
class OpenSearchServerlessClient extends AwsClient {}

Some files were not shown because too many files have changed in this diff Show more