NOTE: For Version 3 of the AWS SDK for PHP, please see the V3 User Guide and V3 API Reference.

# Class IncompleteMultipartUploadChecker

Retries CompleteMultipartUpload requests in the case of failure.

From the S3 API Documentation:
Processing of a Complete Multipart Upload request could take several minutes to complete. After Amazon S3 begins processing the request, it sends an HTTP response header that specifies a 200 OK response. While processing is in progress, Amazon S3 periodically sends whitespace characters to keep the connection from timing out. Because a request could fail after the initial 200 OK response has been sent, it is important that you check the response body to determine whether the request succeeded. Note that if Complete Multipart Upload fails, applications should be prepared to retry the failed requests.

  Guzzle\Plugin\Backoff\AbstractBackoffStrategy implements Guzzle\Plugin\Backoff\BackoffStrategyInterface
  Aws\S3\IncompleteMultipartUploadChecker

Namespace: Aws\S3
Located at Aws/S3/IncompleteMultipartUploadChecker.php

## Methods summary

- `public` `__construct ( Guzzle\Plugin\Backoff\BackoffStrategyInterface $next = null )`
- `public` `makesDecision ( )`

  Check if the strategy does filtering and makes decisions on whether or not to retry.

- `protected` `getDelay ( int $retries, Guzzle\Http\Message\RequestInterface $request, Guzzle\Http\Message\Response $response = null, Guzzle\Http\Exception\HttpException $e = null )`

  Implement the concrete strategy

## Methods detail

# `public`
`__construct( `Guzzle\Plugin\Backoff\BackoffStrategyInterface` $next = null )`
# `public boolean`
`makesDecision( )`

Check if the strategy does filtering and makes decisions on whether or not to retry.

Strategies that return false will never retry if all of the previous strategies in a chain defer on a backoff decision.

#### Returns

`boolean`
# `protected boolean|integer|null`
`getDelay( integer $retries, `Guzzle\Http\Message\RequestInterface` $request, `Guzzle\Http\Message\Response` $response = null, `Guzzle\Http\Exception\HttpException` $e = null )`

Implement the concrete strategy

#### Parameters

$retries
  `integer`
  $retries Number of retries of the request
$request
  ``Guzzle\Http\Message\RequestInterface``
  $request Request that was sent
$response
  ``Guzzle\Http\Message\Response``
  $response Response that was received. Note that there may not be a response
$e
  ``Guzzle\Http\Exception\HttpException``
  $e Exception that was encountered if any

#### Returns

`boolean|integer|null`
Returns false to not retry or the number of seconds to delay between retries. Return true or null to defer to the next strategy if available, and if not, return 0.

### Methods inherited from Guzzle\Plugin\Backoff\AbstractBackoffStrategy

`getBackoffPeriod()`, `getNext()`, `setNext()`

### Magic methods summary

## Properties summary

### Properties inherited from Guzzle\Plugin\Backoff\AbstractBackoffStrategy

`$next`