| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 | 
							- <?php
 
- namespace Aws\Multipart;
 
- /**
 
-  * Representation of the multipart upload.
 
-  *
 
-  * This object keeps track of the state of the upload, including the status and
 
-  * which parts have been uploaded.
 
-  */
 
- class UploadState
 
- {
 
-     const CREATED = 0;
 
-     const INITIATED = 1;
 
-     const COMPLETED = 2;
 
-     /** @var array Params used to identity the upload. */
 
-     private $id;
 
-     /** @var int Part size being used by the upload. */
 
-     private $partSize;
 
-     /** @var array Parts that have been uploaded. */
 
-     private $uploadedParts = [];
 
-     /** @var int Identifies the status the upload. */
 
-     private $status = self::CREATED;
 
-     /**
 
-      * @param array $id Params used to identity the upload.
 
-      */
 
-     public function __construct(array $id)
 
-     {
 
-         $this->id = $id;
 
-     }
 
-     /**
 
-      * Get the upload's ID, which is a tuple of parameters that can uniquely
 
-      * identify the upload.
 
-      *
 
-      * @return array
 
-      */
 
-     public function getId()
 
-     {
 
-         return $this->id;
 
-     }
 
-     /**
 
-      * Set's the "upload_id", or 3rd part of the upload's ID. This typically
 
-      * only needs to be done after initiating an upload.
 
-      *
 
-      * @param string $key   The param key of the upload_id.
 
-      * @param string $value The param value of the upload_id.
 
-      */
 
-     public function setUploadId($key, $value)
 
-     {
 
-         $this->id[$key] = $value;
 
-     }
 
-     /**
 
-      * Get the part size.
 
-      *
 
-      * @return int
 
-      */
 
-     public function getPartSize()
 
-     {
 
-         return $this->partSize;
 
-     }
 
-     /**
 
-      * Set the part size.
 
-      *
 
-      * @param $partSize int Size of upload parts.
 
-      */
 
-     public function setPartSize($partSize)
 
-     {
 
-         $this->partSize = $partSize;
 
-     }
 
-     /**
 
-      * Marks a part as being uploaded.
 
-      *
 
-      * @param int   $partNumber The part number.
 
-      * @param array $partData   Data from the upload operation that needs to be
 
-      *                          recalled during the complete operation.
 
-      */
 
-     public function markPartAsUploaded($partNumber, array $partData = [])
 
-     {
 
-         $this->uploadedParts[$partNumber] = $partData;
 
-     }
 
-     /**
 
-      * Returns whether a part has been uploaded.
 
-      *
 
-      * @param int $partNumber The part number.
 
-      *
 
-      * @return bool
 
-      */
 
-     public function hasPartBeenUploaded($partNumber)
 
-     {
 
-         return isset($this->uploadedParts[$partNumber]);
 
-     }
 
-     /**
 
-      * Returns a sorted list of all the uploaded parts.
 
-      *
 
-      * @return array
 
-      */
 
-     public function getUploadedParts()
 
-     {
 
-         ksort($this->uploadedParts);
 
-         return $this->uploadedParts;
 
-     }
 
-     /**
 
-      * Set the status of the upload.
 
-      *
 
-      * @param int $status Status is an integer code defined by the constants
 
-      *                    CREATED, INITIATED, and COMPLETED on this class.
 
-      */
 
-     public function setStatus($status)
 
-     {
 
-         $this->status = $status;
 
-     }
 
-     /**
 
-      * Determines whether the upload state is in the INITIATED status.
 
-      *
 
-      * @return bool
 
-      */
 
-     public function isInitiated()
 
-     {
 
-         return $this->status === self::INITIATED;
 
-     }
 
-     /**
 
-      * Determines whether the upload state is in the COMPLETED status.
 
-      *
 
-      * @return bool
 
-      */
 
-     public function isCompleted()
 
-     {
 
-         return $this->status === self::COMPLETED;
 
-     }
 
- }
 
 
  |