public static function getArguments()

in src/S3/S3Client.php [256:355]


    public static function getArguments()
    {
        $args = parent::getArguments();
        $args['retries']['fn'] = [__CLASS__, '_applyRetryConfig'];
        $args['api_provider']['fn'] = [__CLASS__, '_applyApiProvider'];

        return
            [
                'request_checksum_calculation' => [
                    'type' => 'config',
                    'valid' => ['string'],
                    'doc' => 'Valid values are `when_supported` and `when_required`. Default is `when_supported`.'
                        . ' `when_supported` results in checksum calculation when an operation has modeled checksum support.'
                        . ' `when_required` results in checksum calculation when an operation has modeled checksum support and'
                        . ' request checksums are modeled as required.',
                    'fn' => [__CLASS__, '_apply_request_checksum_calculation'],
                    'default' => [__CLASS__, '_default_request_checksum_calculation'],
                ],
                'response_checksum_validation' => [
                    'type' => 'config',
                    'valid' => ['string'],
                    'doc' => 'Valid values are `when_supported` and `when_required`. Default is `when_supported`.'
                        . ' `when_supported` results in checksum validation when an operation has modeled checksum support.'
                        . ' `when_required` results in checksum validation when an operation has modeled checksum support and'
                        . ' `CheckSumMode` is set to `enabled`.',
                    'fn' => [__CLASS__, '_apply_response_checksum_validation'],
                    'default' => [__CLASS__, '_default_response_checksum_validation'],
                ]
            ]
            + $args + [
                'bucket_endpoint' => [
                    'type'    => 'config',
                    'valid'   => ['bool'],
                    'doc'     => 'Set to true to send requests to a hardcoded '
                        . 'bucket endpoint rather than create an endpoint as a '
                        . 'result of injecting the bucket into the URL. This '
                        . 'option is useful for interacting with CNAME endpoints.',
                ],
                'use_arn_region' => [
                    'type'    => 'config',
                    'valid'   => [
                        'bool',
                        Configuration::class,
                        CacheInterface::class,
                        'callable'
                    ],
                    'doc'     => 'Set to true to allow passed in ARNs to override'
                        . ' client region. Accepts...',
                    'fn' => [__CLASS__, '_apply_use_arn_region'],
                    'default' => [UseArnRegionConfigurationProvider::class, 'defaultProvider'],
                ],
                'use_accelerate_endpoint' => [
                    'type' => 'config',
                    'valid' => ['bool'],
                    'doc' => 'Set to true to send requests to an S3 Accelerate'
                        . ' endpoint by default. Can be enabled or disabled on'
                        . ' individual operations by setting'
                        . ' \'@use_accelerate_endpoint\' to true or false. Note:'
                        . ' you must enable S3 Accelerate on a bucket before it can'
                        . ' be accessed via an Accelerate endpoint.',
                    'default' => false,
                ],
                'use_path_style_endpoint' => [
                    'type' => 'config',
                    'valid' => ['bool'],
                    'doc' => 'Set to true to send requests to an S3 path style'
                        . ' endpoint by default.'
                        . ' Can be enabled or disabled on individual operations by setting'
                        . ' \'@use_path_style_endpoint\' to true or false.',
                    'default' => false,
                ],
                'disable_multiregion_access_points' => [
                    'type' => 'config',
                    'valid' => ['bool'],
                    'doc' => 'Set to true to disable the usage of'
                        . ' multi region access points. These are enabled by default.'
                        . ' Can be enabled or disabled on individual operations by setting'
                        . ' \'@disable_multiregion_access_points\' to true or false.',
                    'default' => false,
                ],
                'disable_express_session_auth' => [
                    'type' => 'config',
                    'valid' => ['bool'],
                    'doc' => 'Set to true to disable the usage of'
                        . ' s3 express session authentication. This is enabled by default.',
                    'default' => [__CLASS__, '_default_disable_express_session_auth'],
                ],
                's3_express_identity_provider' => [
                    'type'    => 'config',
                    'valid'   => [
                        'bool',
                        'callable'
                    ],
                    'doc'     => 'Specifies the provider used to generate identities to sign s3 express requests.  '
                        . 'Set to `false` to disable s3 express auth, or a callable provider used to create s3 express '
                        . 'identities or return null.',
                    'default' => [__CLASS__, '_default_s3_express_identity_provider'],
            ],
        ];
    }