| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- <?php
- namespace AlibabaCloud\Client\Credentials\Ini;
- use AlibabaCloud\Client\Clients\Client;
- use AlibabaCloud\Client\Exception\ClientException;
- /**
- * Trait OptionsTrait
- *
- * @package AlibabaCloud\Client\Credentials\Ini
- *
- * @mixin IniCredential
- */
- trait OptionsTrait
- {
- /**
- * @param array $configures
- * @param Client $client
- *
- * @throws ClientException
- */
- private static function setClientAttributes($configures, Client $client)
- {
- if (self::isNotEmpty($configures, 'region_id')) {
- $client->regionId($configures['region_id']);
- }
- if (isset($configures['debug'])) {
- $client->options(
- [
- 'debug' => (bool)$configures['debug'],
- ]
- );
- }
- if (self::isNotEmpty($configures, 'timeout')) {
- $client->options(
- [
- 'timeout' => $configures['timeout'],
- ]
- );
- }
- if (self::isNotEmpty($configures, 'connect_timeout')) {
- $client->options(
- [
- 'connect_timeout' => $configures['connect_timeout'],
- ]
- );
- }
- }
- /**
- * @param array $configures
- * @param Client $client
- */
- private static function setProxy($configures, Client $client)
- {
- if (self::isNotEmpty($configures, 'proxy')) {
- $client->options(
- [
- 'proxy' => $configures['proxy'],
- ]
- );
- }
- $proxy = [];
- if (self::isNotEmpty($configures, 'proxy_http')) {
- $proxy['http'] = $configures['proxy_http'];
- }
- if (self::isNotEmpty($configures, 'proxy_https')) {
- $proxy['https'] = $configures['proxy_https'];
- }
- if (self::isNotEmpty($configures, 'proxy_no')) {
- $proxy['no'] = \explode(',', $configures['proxy_no']);
- }
- if ($proxy !== []) {
- $client->options(
- [
- 'proxy' => $proxy,
- ]
- );
- }
- }
- /**
- * @param array $configures
- * @param Client $client
- */
- private static function setCert($configures, Client $client)
- {
- if (self::isNotEmpty($configures, 'cert_file') && !self::isNotEmpty($configures, 'cert_password')) {
- $client->options(
- [
- 'cert' => $configures['cert_file'],
- ]
- );
- }
- if (self::isNotEmpty($configures, 'cert_file') && self::isNotEmpty($configures, 'cert_password')) {
- $client->options(
- [
- 'cert' => [
- $configures['cert_file'],
- $configures['cert_password'],
- ],
- ]
- );
- }
- }
- }
|