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

# Interface HasDispatcherInterface

Holds an event dispatcher

### Direct known implementers

`Aws\Common\Model\MultipartUpload\TransferInterface`, `Guzzle\Common\AbstractHasDispatcher`, `Guzzle\Http\ClientInterface`, `Guzzle\Http\Curl\CurlMultiInterface`, `Guzzle\Http\IoEmittingEntityBody`, `Guzzle\Http\Message\RequestInterface`, `Guzzle\Service\Resource\ResourceIteratorInterface`

### Indirect known implementers

`Aws\AutoScaling\AutoScalingClient`, `Aws\CloudFormation\CloudFormationClient`, `Aws\CloudWatchLogs\CloudWatchLogsClient`, `Aws\CodeCommit\CodeCommitClient`, `Aws\CodeDeploy\CodeDeployClient`, `Aws\CodePipeline\CodePipelineClient`, `Aws\CognitoIdentity\CognitoIdentityClient`, `Aws\CognitoSync\CognitoSyncClient`, `Aws\Common\Aws`, `Aws\Common\Client\AbstractClient`, `Aws\Common\Client\AwsClientInterface`, `Aws\Common\Client\DefaultClient`, `Aws\CloudFront\CloudFrontClient`, `Aws\Common\InstanceMetadata\InstanceMetadataClient`, `Aws\Common\InstanceMetadata\Waiter\ServiceAvailable`, `Aws\Common\Iterator\AwsResourceIterator`, `Aws\Common\Model\MultipartUpload\AbstractTransfer`, `Aws\Common\Waiter\AbstractResourceWaiter`, `Aws\Common\Waiter\AbstractWaiter`, `Aws\Common\Waiter\CallableWaiter`, `Aws\Common\Waiter\ConfigResourceWaiter`, `Aws\ConfigService\ConfigServiceClient`, `Aws\DataPipeline\DataPipelineClient`, `Aws\CloudFront_2012_05_05\CloudFrontClient`, `Aws\DeviceFarm\DeviceFarmClient`, `Aws\DirectConnect\DirectConnectClient`, `Aws\DirectoryService\DirectoryServiceClient`, `Aws\DynamoDb\DynamoDbClient`, `Aws\DynamoDb_2011_12_05\DynamoDbClient`, `Aws\DynamoDbStreams\DynamoDbStreamsClient`, `Aws\Ec2\Ec2Client`, `Aws\Ec2\Iterator\DescribeInstancesIterator`, `Aws\Ecs\EcsClient`, `Aws\Efs\EfsClient`, `Aws\CloudHsm\CloudHsmClient`, `Aws\ElastiCache\ElastiCacheClient`, `Aws\ElasticBeanstalk\ElasticBeanstalkClient`, `Aws\ElasticFileSystem\ElasticFileSystemClient`, `Aws\ElasticLoadBalancing\ElasticLoadBalancingClient`, `Aws\ElasticTranscoder\ElasticTranscoderClient`, `Aws\Emr\EmrClient`, `Aws\Glacier\GlacierClient`, `Aws\Glacier\Model\MultipartUpload\AbstractTransfer`, `Aws\Glacier\Model\MultipartUpload\ParallelTransfer`, `Aws\Glacier\Model\MultipartUpload\SerialTransfer`, `Aws\CloudSearch\CloudSearchClient`, `Aws\Iam\IamClient`, `Aws\ImportExport\ImportExportClient`, `Aws\Kinesis\KinesisClient`, `Aws\Kms\KmsClient`, `Aws\Lambda\LambdaClient`, `Aws\MachineLearning\MachineLearningClient`, `Aws\OpsWorks\OpsWorksClient`, `Aws\Rds\RdsClient`, `Aws\Redshift\RedshiftClient`, `Aws\Route53\Route53Client`, `Aws\CloudSearch_2011_02_01\CloudSearchClient`, `Aws\Route53Domains\Route53DomainsClient`, `Aws\S3\Iterator\ListBucketsIterator`, `Aws\S3\Iterator\ListMultipartUploadsIterator`, `Aws\S3\Iterator\ListObjectsIterator`, `Aws\S3\Iterator\ListObjectVersionsIterator`, `Aws\S3\Model\ClearBucket`, `Aws\S3\Model\MultipartUpload\AbstractTransfer`, `Aws\S3\Model\MultipartUpload\ParallelTransfer`, `Aws\S3\Model\MultipartUpload\SerialTransfer`, `Aws\S3\S3Client`, `Aws\CloudSearchDomain\CloudSearchDomainClient`, `Aws\S3\Sync\AbstractSync`, `Aws\S3\Sync\DownloadSync`, `Aws\S3\Sync\UploadSync`, `Aws\Ses\SesClient`, `Aws\SimpleDb\SimpleDbClient`, `Aws\Sns\SnsClient`, `Aws\Sqs\SqsClient`, `Aws\Ssm\SsmClient`, `Aws\StorageGateway\StorageGatewayClient`, `Aws\Sts\StsClient`, `Aws\CloudTrail\CloudTrailClient`, `Aws\Support\SupportClient`, `Aws\Swf\SwfClient`, `Aws\WorkSpaces\WorkSpacesClient`, `Guzzle\Http\Client`, `Guzzle\Http\Curl\CurlMulti`, `Guzzle\Http\Curl\CurlMultiProxy`, `Guzzle\Http\Message\EntityEnclosingRequest`, `Guzzle\Http\Message\EntityEnclosingRequestInterface`, `Guzzle\Http\Message\Request`, `Guzzle\Plugin\Backoff\BackoffPlugin`, `Aws\CloudWatch\CloudWatchClient`, `Guzzle\Plugin\Mock\MockPlugin`, `Guzzle\Service\Builder\ServiceBuilder`, `Guzzle\Service\Client`, `Guzzle\Service\ClientInterface`, `Guzzle\Service\Resource\ResourceIterator`

Namespace: Guzzle\Common
Located at Guzzle/Common/HasDispatcherInterface.php

## Methods summary

- `public static` `getAllEvents ( )`

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

- `public` `setEventDispatcher ( Symfony\Component\EventDispatcher\EventDispatcherInterface $eventDispatcher )`

  Set the EventDispatcher of the request

- `public` `getEventDispatcher ( )`

  Get the EventDispatcher of the request

- `public` `dispatch ( string $eventName, array $context = array() )`

  Helper to dispatch Guzzle events and set the event name on the event

- `public` `addSubscriber ( Symfony\Component\EventDispatcher\EventSubscriberInterface $subscriber )`

  Add an event subscriber to the dispatcher

## Methods detail

# `public static array`
`getAllEvents( )`

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

#### Returns

`array`
# `public `Guzzle\Common\HasDispatcherInterface``
`setEventDispatcher( Symfony\Component\EventDispatcher\EventDispatcherInterface $eventDispatcher )`

Set the EventDispatcher of the request

#### Parameters

$eventDispatcher
  `Symfony\Component\EventDispatcher\EventDispatcherInterface`
  $eventDispatcher

#### Returns

``Guzzle\Common\HasDispatcherInterface``
# `public Symfony\Component\EventDispatcher\EventDispatcherInterface`
`getEventDispatcher( )`

Get the EventDispatcher of the request

#### Returns

`Symfony\Component\EventDispatcher\EventDispatcherInterface`
# `public `Guzzle\Common\Event``
`dispatch( string $eventName, array $context = array() )`

Helper to dispatch Guzzle events and set the event name on the event

#### Parameters

$eventName
  `string`
  $eventName Name of the event to dispatch
$context
  `array`
  $context Context of the event

#### Returns

``Guzzle\Common\Event``
Returns the created event object
# `public `Guzzle\Common\HasDispatcherInterface``
`addSubscriber( Symfony\Component\EventDispatcher\EventSubscriberInterface $subscriber )`

Add an event subscriber to the dispatcher

#### Parameters

$subscriber
  `Symfony\Component\EventDispatcher\EventSubscriberInterface`
  $subscriber Event subscriber

#### Returns

``Guzzle\Common\HasDispatcherInterface``

### Magic methods summary