summaryrefslogtreecommitdiffstats
path: root/apps/files_external/3rdparty/aws-sdk-php/Guzzle/Batch/BatchRequestTransfer.php
diff options
context:
space:
mode:
Diffstat (limited to 'apps/files_external/3rdparty/aws-sdk-php/Guzzle/Batch/BatchRequestTransfer.php')
-rw-r--r--apps/files_external/3rdparty/aws-sdk-php/Guzzle/Batch/BatchRequestTransfer.php65
1 files changed, 0 insertions, 65 deletions
diff --git a/apps/files_external/3rdparty/aws-sdk-php/Guzzle/Batch/BatchRequestTransfer.php b/apps/files_external/3rdparty/aws-sdk-php/Guzzle/Batch/BatchRequestTransfer.php
deleted file mode 100644
index 4d8489c7057..00000000000
--- a/apps/files_external/3rdparty/aws-sdk-php/Guzzle/Batch/BatchRequestTransfer.php
+++ /dev/null
@@ -1,65 +0,0 @@
-<?php
-
-namespace Guzzle\Batch;
-
-use Guzzle\Batch\BatchTransferInterface;
-use Guzzle\Batch\BatchDivisorInterface;
-use Guzzle\Common\Exception\InvalidArgumentException;
-use Guzzle\Http\Message\RequestInterface;
-
-/**
- * Batch transfer strategy used to efficiently transfer a batch of requests.
- * This class is to be used with {@see Guzzle\Batch\BatchInterface}
- */
-class BatchRequestTransfer implements BatchTransferInterface, BatchDivisorInterface
-{
- /** @var int Size of each command batch */
- protected $batchSize;
-
- /**
- * Constructor used to specify how large each batch should be
- *
- * @param int $batchSize Size of each batch
- */
- public function __construct($batchSize = 50)
- {
- $this->batchSize = $batchSize;
- }
-
- /**
- * Creates batches of requests by grouping requests by their associated curl multi object.
- * {@inheritdoc}
- */
- public function createBatches(\SplQueue $queue)
- {
- // Create batches by client objects
- $groups = new \SplObjectStorage();
- foreach ($queue as $item) {
- if (!$item instanceof RequestInterface) {
- throw new InvalidArgumentException('All items must implement Guzzle\Http\Message\RequestInterface');
- }
- $client = $item->getClient();
- if (!$groups->contains($client)) {
- $groups->attach($client, array($item));
- } else {
- $current = $groups[$client];
- $current[] = $item;
- $groups[$client] = $current;
- }
- }
-
- $batches = array();
- foreach ($groups as $batch) {
- $batches = array_merge($batches, array_chunk($groups[$batch], $this->batchSize));
- }
-
- return $batches;
- }
-
- public function transfer(array $batch)
- {
- if ($batch) {
- reset($batch)->getClient()->send($batch);
- }
- }
-}