/usr/share/php/Aws/Glacier/GlacierClient.php is in php-aws-sdk 2.5.2-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 | <?php
/**
* Copyright 2010-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
namespace Aws\Glacier;
use Aws\Common\Client\AbstractClient;
use Aws\Common\Client\ClientBuilder;
use Aws\Common\Client\UploadBodyListener;
use Aws\Common\Enum\ClientOptions as Options;
use Aws\Common\Exception\Parser\JsonRestExceptionParser;
use Guzzle\Common\Collection;
use Guzzle\Service\Resource\Model;
use Guzzle\Service\Resource\ResourceIteratorInterface;
/**
* Client to interact with Amazon Glacier
*
* @method Model abortMultipartUpload(array $args = array()) {@command Glacier AbortMultipartUpload}
* @method Model completeMultipartUpload(array $args = array()) {@command Glacier CompleteMultipartUpload}
* @method Model createVault(array $args = array()) {@command Glacier CreateVault}
* @method Model deleteArchive(array $args = array()) {@command Glacier DeleteArchive}
* @method Model deleteVault(array $args = array()) {@command Glacier DeleteVault}
* @method Model deleteVaultNotifications(array $args = array()) {@command Glacier DeleteVaultNotifications}
* @method Model describeJob(array $args = array()) {@command Glacier DescribeJob}
* @method Model describeVault(array $args = array()) {@command Glacier DescribeVault}
* @method Model getJobOutput(array $args = array()) {@command Glacier GetJobOutput}
* @method Model getVaultNotifications(array $args = array()) {@command Glacier GetVaultNotifications}
* @method Model initiateJob(array $args = array()) {@command Glacier InitiateJob}
* @method Model initiateMultipartUpload(array $args = array()) {@command Glacier InitiateMultipartUpload}
* @method Model listJobs(array $args = array()) {@command Glacier ListJobs}
* @method Model listMultipartUploads(array $args = array()) {@command Glacier ListMultipartUploads}
* @method Model listParts(array $args = array()) {@command Glacier ListParts}
* @method Model listVaults(array $args = array()) {@command Glacier ListVaults}
* @method Model setVaultNotifications(array $args = array()) {@command Glacier SetVaultNotifications}
* @method Model uploadArchive(array $args = array()) {@command Glacier UploadArchive}
* @method Model uploadMultipartPart(array $args = array()) {@command Glacier UploadMultipartPart}
* @method waitUntilVaultExists(array $input) Wait until a vault can be accessed. The input array uses the parameters of the DescribeVault operation and waiter specific settings
* @method waitUntilVaultNotExists(array $input) Wait until a vault is deleted. The input array uses the parameters of the DescribeVault operation and waiter specific settings
* @method ResourceIteratorInterface getListJobsIterator(array $args = array()) The input array uses the parameters of the ListJobs operation
* @method ResourceIteratorInterface getListMultipartUploadsIterator(array $args = array()) The input array uses the parameters of the ListMultipartUploads operation
* @method ResourceIteratorInterface getListPartsIterator(array $args = array()) The input array uses the parameters of the ListParts operation
* @method ResourceIteratorInterface getListVaultsIterator(array $args = array()) The input array uses the parameters of the ListVaults operation
*
* @link http://docs.aws.amazon.com/aws-sdk-php/guide/latest/service-glacier.html User guide
* @link http://docs.aws.amazon.com/aws-sdk-php/latest/class-Aws.Glacier.GlacierClient.html API docs
*/
class GlacierClient extends AbstractClient
{
const LATEST_API_VERSION = '2012-06-01';
/**
* Factory method to create a new Amazon Glacier client using an array of configuration options.
*
* @param array|Collection $config Client configuration data
*
* @return self
* @see \Aws\Common\Client\DefaultClient for a list of available configuration options
*/
public static function factory($config = array())
{
// Setup the Glacier client
$client = ClientBuilder::factory(__NAMESPACE__)
->setConfig($config)
->setConfigDefaults(array(
Options::VERSION => self::LATEST_API_VERSION,
Options::SERVICE_DESCRIPTION => __DIR__ . '/Resources/glacier-%s.php',
// Set default value for "accountId" for all requests
'command.params' => array(
'accountId' => '-',
Options::MODEL_PROCESSING => true
)
))
->setExceptionParser(new JsonRestExceptionParser())
->setIteratorsConfig(array(
'limit_param' => 'limit',
'token_param' => 'marker',
'token_key' => 'Marker',
'operations' => array(
'ListJobs' => array(
'result_key' => 'JobList'
),
'ListMultipartUploads' => array(
'result_key' => 'UploadsList'
),
'ListParts' => array(
'result_key' => 'Parts'
),
'ListVaults' => array(
'result_key' => 'VaultList'
)
)
))
->build();
// Add the Glacier version header required for all operations
$client->getConfig()->setPath(
'request.options/headers/x-amz-glacier-version',
$client->getDescription()->getApiVersion()
);
// Allow for specifying bodies with file paths and file handles
$uploadOperations = array('UploadArchive', 'UploadMultipartPart');
$client->addSubscriber(new UploadBodyListener($uploadOperations, 'body', 'sourceFile'));
// Listen for upload operations and make sure the required hash headers are added
$client->addSubscriber(new GlacierUploadListener());
return $client;
}
}
|