PATH:
home
/
lab2454c
/
crypto.keyreum.com
/
vendor
/
aws
/
aws-sdk-php
/
src
/
Endpoint
<?php namespace Aws\Endpoint; /** * Provides endpoints based on an endpoint pattern configuration array. */ class PatternEndpointProvider { /** @var array */ private $patterns; /** * @param array $patterns Hash of endpoint patterns mapping to endpoint * configurations. */ public function __construct(array $patterns) { $this->patterns = $patterns; } public function __invoke(array $args = []) { $service = isset($args['service']) ? $args['service'] : ''; $region = isset($args['region']) ? $args['region'] : ''; $keys = ["{$region}/{$service}", "{$region}/*", "*/{$service}", "*/*"]; foreach ($keys as $key) { if (isset($this->patterns[$key])) { return $this->expand( $this->patterns[$key], isset($args['scheme']) ? $args['scheme'] : 'https', $service, $region ); } } return null; } private function expand(array $config, $scheme, $service, $region) { $config['endpoint'] = $scheme . '://' . strtr($config['endpoint'], [ '{service}' => $service, '{region}' => $region ]); return $config; } }
[+]
..
[-] PatternEndpointProvider.php
[edit]
[-] Partition.php
[edit]
[-] PartitionEndpointProvider.php
[edit]
[-] PartitionInterface.php
[edit]
[-] EndpointProvider.php
[edit]