コード例 #1
0
 protected function buildCoreRequest(HttpRequest $request)
 {
     $headers = $request->getHeaders();
     $contentLength = 0;
     if (!$request->isParameterInUrl()) {
         $body = $request->getParameterString();
         $contentLength = strlen($body);
     } else {
         $body = $request->getContent();
         if ($body !== null) {
             AssertUtils::assertSet(HttpHeaders::CONTENT_LENGTH, $headers);
             $contentLength = (int) $headers[HttpHeaders::CONTENT_LENGTH];
         }
     }
     $entity = null;
     $headers[HttpHeaders::CONTENT_LENGTH] = (string) $contentLength;
     if ($body !== null) {
         $entity = new ReadLimitEntityBody(EntityBody::factory($body), $contentLength, $request->getOffset() !== false ? $request->getOffset() : 0);
     }
     $coreRequest = $this->client->createRequest($request->getMethod(), $request->getFullUrl(), $headers, $entity);
     if ($request->getResponseBody() != null) {
         $coreRequest->setResponseBody($request->getResponseBody());
     }
     return $coreRequest;
 }
コード例 #2
0
 protected function checkOptions($options)
 {
     $options = parent::checkOptions($options);
     AssertUtils::assertSet(array(OSSOptions::BUCKET, OSSOptions::KEY, OSSOptions::UPLOAD_ID), $options);
     OSSUtils::assertBucketName($options[OSSOptions::BUCKET]);
     OSSUtils::assertObjectKey($options[OSSOptions::KEY]);
     return $options;
 }
コード例 #3
0
 protected function checkOptions($options)
 {
     $options = parent::checkOptions($options);
     AssertUtils::assertSet(array(OSSOptions::BUCKET), $options);
     if (isset($options[OSSOptions::KEY])) {
         unset($options[OSSOptions::KEY]);
     }
     OSSUtils::assertBucketName($options[OSSOptions::BUCKET]);
     return $options;
 }
コード例 #4
0
 protected function checkOptions($options)
 {
     $options = parent::checkOptions($options);
     AssertUtils::assertSet(array(OSSOptions::SOURCE_BUCKET, OSSOptions::SOURCE_KEY, OSSOptions::DEST_BUCKET, OSSOptions::DEST_KEY), $options);
     $options[OSSOptions::BUCKET] = $options[OSSOptions::DEST_BUCKET];
     $options[OSSOptions::KEY] = $options[OSSOptions::DEST_KEY];
     OSSUtils::assertBucketName($options[OSSOptions::BUCKET]);
     OSSUtils::assertObjectKey($options[OSSOptions::KEY]);
     return $options;
 }
コード例 #5
0
 protected function checkOptions($options)
 {
     $options = parent::checkOptions($options);
     AssertUtils::assertSet(array(OSSOptions::CONTENT, OSSOptions::BUCKET, OSSOptions::KEY, OSSOptions::UPLOAD_ID, OSSOptions::PART_NUMBER, OSSOptions::PART_SIZE), $options);
     OSSUtils::assertBucketName($options[OSSOptions::BUCKET]);
     OSSUtils::assertObjectKey($options[OSSOptions::KEY]);
     AssertUtils::assertNumber($options[OSSOptions::PART_NUMBER], OSSOptions::PART_NUMBER);
     AssertUtils::assertNumber($options[OSSOptions::PART_SIZE], OSSOptions::PART_SIZE);
     return $options;
 }
コード例 #6
0
 private function checkOptions($options)
 {
     AssertUtils::assertSet(array(OSSOptions::BUCKET, OSSOptions::KEY, OSSOptions::EXPIRES), $options);
     OSSUtils::assertBucketName($options[OSSOptions::BUCKET]);
     if (isset($options[OSSOptions::KEY])) {
         OSSUtils::assertObjectKey($options[OSSOptions::KEY]);
     }
     if (!$options[OSSOptions::EXPIRES] instanceof \DateTime) {
         throw new \InvalidArgumentException(OSSOptions::EXPIRES . ' must be instance of \\DateTime');
     }
     $options[OSSOptions::METHOD] = strtoupper($options[OSSOptions::METHOD]);
     return $options;
 }
コード例 #7
0
 protected function checkOptions($options)
 {
     $options = parent::checkOptions($options);
     AssertUtils::assertSet(array(OSSOptions::BUCKET, OSSOptions::KEY), $options);
     OSSUtils::assertBucketName($options[OSSOptions::BUCKET]);
     OSSUtils::assertObjectKey($options[OSSOptions::KEY]);
     if (isset($options[OSSOptions::META_ONLY])) {
         if ($options[OSSOptions::META_ONLY]) {
             unset($options[OSSOptions::SAVE_AS]);
         }
     }
     return $options;
 }
コード例 #8
0
 protected function checkOptions($options)
 {
     $options = parent::checkOptions($options);
     AssertUtils::assertSet(array(OSSOptions::BUCKET, OSSOptions::KEY, OSSOptions::UPLOAD_ID, OSSOptions::PART_ETAGS), $options);
     OSSUtils::assertBucketName($options[OSSOptions::BUCKET]);
     OSSUtils::assertObjectKey($options[OSSOptions::KEY]);
     AssertUtils::assertArray($options[OSSOptions::PART_ETAGS], OSSOptions::PART_ETAGS);
     for ($i = 0; $i < count($options[OSSOptions::PART_ETAGS]); $i++) {
         $partETag = $options[OSSOptions::PART_ETAGS][$i];
         AssertUtils::assertArray($partETag, OSSOptions::PART_ETAGS . '.' . $i);
         AssertUtils::assertSet(array(OSSOptions::PART_NUMBER, OSSOptions::ETAG), $partETag);
     }
     return $options;
 }
コード例 #9
0
 protected function checkOptions($options)
 {
     $options = parent::checkOptions($options);
     AssertUtils::assertSet(array(OSSOptions::CONTENT, OSSOptions::BUCKET, OSSOptions::KEY), $options);
     OSSUtils::assertBucketName($options[OSSOptions::BUCKET]);
     OSSUtils::assertObjectKey($options[OSSOptions::KEY]);
     if (isset($options[OSSOptions::CONTENT_LENGTH])) {
         AssertUtils::assertNumber($options[OSSOptions::CONTENT_LENGTH], OSSOptions::CONTENT_LENGTH);
     }
     if (is_resource($options[OSSOptions::CONTENT]) && !isset($options[OSSOptions::CONTENT_LENGTH])) {
         throw new \InvalidArgumentException(OSSOptions::CONTENT_LENGTH . ' must be set when the content is a resource.');
     }
     return $options;
 }
コード例 #10
0
 protected function checkOptions($options)
 {
     $options = parent::checkOptions($options);
     AssertUtils::assertSet(array(OSSOptions::BUCKET, OSSOptions::KEY, OSSOptions::UPLOAD_ID), $options);
     OSSUtils::assertBucketName($options[OSSOptions::BUCKET]);
     OSSUtils::assertObjectKey($options[OSSOptions::KEY]);
     if (isset($options[OSSOptions::PART_NUMBER_MARKER])) {
         AssertUtils::assertNumber($options[OSSOptions::PART_NUMBER_MARKER], OSSOptions::PART_NUMBER_MARKER);
     }
     if (isset($options[OSSOptions::MAX_PARTS])) {
         AssertUtils::assertNumber($options[OSSOptions::MAX_PARTS], OSSOptions::MAX_PARTS);
     }
     return $options;
 }
コード例 #11
0
 public function sign(HttpRequest $request, array $credentials)
 {
     AssertUtils::assertSet(array(OSSOptions::ACCESS_KEY_ID, OSSOptions::ACCESS_KEY_SECRET), $credentials);
     AssertUtils::assertString($credentials[OSSOptions::ACCESS_KEY_ID], OSSOptions::ACCESS_KEY_ID);
     AssertUtils::assertString($credentials[OSSOptions::ACCESS_KEY_SECRET], OSSOptions::ACCESS_KEY_SECRET);
     $key = $credentials[OSSOptions::ACCESS_KEY_ID];
     $secret = $credentials[OSSOptions::ACCESS_KEY_SECRET];
     if (strlen($key) > 0 && strlen($secret) > 0) {
         $canonicalString = SignUtils::buildCanonicalString($request, $this->bucket, $this->key);
         $signature = ServiceSignature::factory()->computeSignature($secret, $canonicalString);
         $request->addHeader(OSSHeaders::AUTHORIZATION, 'OSS ' . $key . ':' . $signature);
     } else {
         if (strlen($key) > 0) {
             $request->addHeader(OSSHeaders::AUTHORIZATION, $key);
         }
     }
 }
コード例 #12
0
 public function __construct(ServiceClientInterface $client, array $config = array())
 {
     AssertUtils::assertSet(ServiceOptions::MAX_ERROR_RETRY, $config);
     $this->client = $client;
     $this->maxErrotRetry = $config[ServiceOptions::MAX_ERROR_RETRY];
 }
コード例 #13
0
ファイル: OSSCommand.php プロジェクト: diandianxiyu/Yii2Api
 protected function checkOptions($options)
 {
     $options = parent::checkOptions($options);
     AssertUtils::assertSet(array(OSSOptions::ENDPOINT, OSSOptions::ACCESS_KEY_ID, OSSOptions::ACCESS_KEY_SECRET), $options);
     return $options;
 }
コード例 #14
0
ファイル: OSSClient.php プロジェクト: diandianxiyu/Yii2Api
 protected function __construct(array $config)
 {
     // Merge config with default config
     $config = array_merge(ResourceManager::getInstance()->getDefaultOptions(__DIR__), $config);
     // To ensure contains import args
     AssertUtils::assertSet(array(OSSOptions::ENDPOINT, OSSOptions::ACCESS_KEY_ID, OSSOptions::ACCESS_KEY_SECRET), $config);
     // Config client
     $this->endpoint = $config[OSSOptions::ENDPOINT];
     $this->credentials = array(OSSOptions::ACCESS_KEY_ID => $config[OSSOptions::ACCESS_KEY_ID], OSSOptions::ACCESS_KEY_SECRET => $config[OSSOptions::ACCESS_KEY_SECRET]);
     // Creat service client
     $this->serviceClient = ServiceClientFactory::factory()->createService($config);
 }