MultipartUploadException.php 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <?php
  2. /**
  3. * Copyright 2010-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  4. *
  5. * Licensed under the Apache License, Version 2.0 (the "License").
  6. * You may not use this file except in compliance with the License.
  7. * A copy of the License is located at
  8. *
  9. * http://aws.amazon.com/apache2.0
  10. *
  11. * or in the "license" file accompanying this file. This file is distributed
  12. * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
  13. * express or implied. See the License for the specific language governing
  14. * permissions and limitations under the License.
  15. */
  16. namespace Aws\Common\Exception;
  17. use Aws\Common\Model\MultipartUpload\TransferStateInterface;
  18. /**
  19. * Thrown when a {@see Aws\Common\MultipartUpload\TransferInterface} object encounters an error during transfer
  20. */
  21. class MultipartUploadException extends RuntimeException
  22. {
  23. /**
  24. * @var TransferStateInterface State of the transfer when the error was encountered
  25. */
  26. protected $state;
  27. /**
  28. * @param TransferStateInterface $state Transfer state
  29. * @param \Exception $exception Last encountered exception
  30. */
  31. public function __construct(TransferStateInterface $state, \Exception $exception = null)
  32. {
  33. parent::__construct(
  34. 'An error was encountered while performing a multipart upload: ' . $exception->getMessage(),
  35. 0,
  36. $exception
  37. );
  38. $this->state = $state;
  39. }
  40. /**
  41. * Get the state of the transfer
  42. *
  43. * @return TransferStateInterface
  44. */
  45. public function getState()
  46. {
  47. return $this->state;
  48. }
  49. }