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

# Class AbstractWaiter

Abstract wait implementation

  Guzzle\Common\AbstractHasDispatcher implements Guzzle\Common\HasDispatcherInterface
  Aws\Common\Waiter\AbstractWaiter implements Aws\Common\Waiter\WaiterInterface

### Direct known subclasses

`Aws\Common\Waiter\AbstractResourceWaiter`, `Aws\Common\Waiter\CallableWaiter`

### Indirect known subclasses

`Aws\Common\InstanceMetadata\Waiter\ServiceAvailable`, `Aws\Common\Waiter\ConfigResourceWaiter`

Abstract
Namespace: Aws\Common\Waiter
Located at Aws/Common/Waiter/AbstractWaiter.php

## Methods summary

- `public static` `getAllEvents ( )`

  Get a list of all of the events emitted from the class

- `public` `getMaxAttempts ( )`

  The max attempts allowed by the waiter

- `public` `getInterval ( )`

  Get the amount of time in seconds to delay between attempts

- `public` `setMaxAttempts ( int $maxAttempts )`

  Set the maximum number of attempts to make when waiting

- `public` `setInterval ( int $interval )`

  Set the amount of time to interval between attempts

- `public` `setConfig ( array $config )`

  Set config options associated with the waiter

- `public` `wait ( )`

  Begin the waiting loop

- `abstract protected` `doWait ( )`

  Method to implement in subclasses

## Methods detail

# `public static array`
`getAllEvents( )`

Get a list of all of the events emitted from the class

#### Returns

`array`

#### Overrides

`Guzzle\Common\AbstractHasDispatcher::getAllEvents`
# `public integer`
`getMaxAttempts( )`

The max attempts allowed by the waiter

#### Returns

`integer`
# `public integer`
`getInterval( )`

Get the amount of time in seconds to delay between attempts

#### Returns

`integer`
# `public `Aws\Common\Waiter\AbstractWaiter``
`setMaxAttempts( integer $maxAttempts )`

Set the maximum number of attempts to make when waiting

#### Parameters

$maxAttempts
  `integer`
  $maxAttempts Max number of attempts

#### Returns

``Aws\Common\Waiter\AbstractWaiter``

#### Implementation of

`Aws\Common\Waiter\WaiterInterface::setMaxAttempts()`
# `public `Aws\Common\Waiter\AbstractWaiter``
`setInterval( integer $interval )`

Set the amount of time to interval between attempts

#### Parameters

$interval
  `integer`
  $interval Interval in seconds

#### Returns

``Aws\Common\Waiter\AbstractWaiter``

#### Implementation of

`Aws\Common\Waiter\WaiterInterface::setInterval()`
# `public `Aws\Common\Waiter\AbstractWaiter``
`setConfig( array $config )`

Set config options associated with the waiter

#### Parameters

$config
  `array`
  $config Options to set

#### Returns

``Aws\Common\Waiter\AbstractWaiter``

#### Implementation of

`Aws\Common\Waiter\WaiterInterface::setConfig()`
# `public`
`wait( )`

Begin the waiting loop

#### Implementation of

`Aws\Common\Waiter\WaiterInterface::wait()`
# `abstract protected boolean`
`doWait( )`

Method to implement in subclasses

#### Returns

`boolean`
Return true when successful, false on failure

### Methods inherited from Guzzle\Common\AbstractHasDispatcher

`addSubscriber()`, `dispatch()`, `getEventDispatcher()`, `setEventDispatcher()`

### Magic methods summary

## Constants summary

### Constants inherited from Aws\Common\Waiter\WaiterInterface

`INTERVAL`, `MAX_ATTEMPTS`

## Properties summary

`protected integer` | $attempts | #
`protected array` | $config | #

### Properties inherited from Guzzle\Common\AbstractHasDispatcher

`$eventDispatcher`