diff options
Diffstat (limited to 'vendor/aws/aws-sdk-php/src/EndpointV2/Rule/ErrorRule.php')
-rw-r--r-- | vendor/aws/aws-sdk-php/src/EndpointV2/Rule/ErrorRule.php | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/vendor/aws/aws-sdk-php/src/EndpointV2/Rule/ErrorRule.php b/vendor/aws/aws-sdk-php/src/EndpointV2/Rule/ErrorRule.php new file mode 100644 index 0000000..941624a --- /dev/null +++ b/vendor/aws/aws-sdk-php/src/EndpointV2/Rule/ErrorRule.php @@ -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; + } +} |