public function getObject($bucketName, $objectName, array $requestPars = null, array $requestHeaders = null)
{
$options = array('_subdomain' => (string) $bucketName);
$allowedRequestPars = array('versionId', 'response-content-type', 'response-content-language', 'response-expires', 'response-cache-control', 'response-content-disposition', 'response-content-encoding');
if (!empty($requestPars)) {
$requestPars = $this->getFilteredArray($allowedRequestPars, $requestPars);
$aQueryString = array();
foreach ($requestPars as $k => $v) {
$aQueryString[] = sprintf('%s=%s', $k, self::escape($v));
}
}
$allowedRequestHeaders = self::$rangeHeaders;
if (!empty($requestHeaders)) {
$requestHeaders = $this->getFilteredArray($allowedRequestHeaders, $requestHeaders);
$options = array_merge($options, $requestHeaders);
}
$path = '/' . self::escapeObjectName($objectName) . (!empty($aQueryString) ? (strpos($objectName, '?') === false ? '?' : '&') . join('&', $aQueryString) : '');
$response = $this->client->call('GET', $options, $path);
return $response->getError() ?: $response;
}