| 1234567891011121314151617181920212223242526272829303132333435363738394041 | 
							- <?php
 
- namespace Aws\Endpoint\UseDualstackEndpoint;
 
- use Aws;
 
- use Aws\Endpoint\UseDualstackEndpoint\Exception\ConfigurationException;
 
- class Configuration implements ConfigurationInterface
 
- {
 
-     private $useDualstackEndpoint;
 
-     public function __construct($useDualstackEndpoint, $region)
 
-     {
 
-         $this->useDualstackEndpoint = Aws\boolean_value($useDualstackEndpoint);
 
-         if (is_null($this->useDualstackEndpoint)) {
 
-             throw new ConfigurationException("'use_dual_stack_endpoint' config option"
 
-                 . " must be a boolean value.");
 
-         }
 
-         if ($this->useDualstackEndpoint == true
 
-             && (strpos($region, "iso-") !== false || strpos($region, "-iso") !== false)
 
-         ) {
 
-             throw new ConfigurationException("Dual-stack is not supported in ISO regions");        }
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function isUseDualstackEndpoint()
 
-     {
 
-         return $this->useDualstackEndpoint;
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function toArray()
 
-     {
 
-         return [
 
-             'use_dual_stack_endpoint' => $this->isUseDualstackEndpoint(),
 
-         ];
 
-     }
 
- }
 
 
  |