You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.0 KiB
52 lines
1.0 KiB
<?php |
|
|
|
namespace Guzzle\Common; |
|
|
|
use Symfony\Component\EventDispatcher\Event as SymfonyEvent; |
|
|
|
/** |
|
* Default event for Guzzle notifications |
|
*/ |
|
class Event extends SymfonyEvent implements ToArrayInterface, \ArrayAccess, \IteratorAggregate |
|
{ |
|
/** @var array */ |
|
private $context; |
|
|
|
/** |
|
* @param array $context Contextual information |
|
*/ |
|
public function __construct(array $context = array()) |
|
{ |
|
$this->context = $context; |
|
} |
|
|
|
public function getIterator() |
|
{ |
|
return new \ArrayIterator($this->context); |
|
} |
|
|
|
public function offsetGet($offset) |
|
{ |
|
return isset($this->context[$offset]) ? $this->context[$offset] : null; |
|
} |
|
|
|
public function offsetSet($offset, $value) |
|
{ |
|
$this->context[$offset] = $value; |
|
} |
|
|
|
public function offsetExists($offset) |
|
{ |
|
return isset($this->context[$offset]); |
|
} |
|
|
|
public function offsetUnset($offset) |
|
{ |
|
unset($this->context[$offset]); |
|
} |
|
|
|
public function toArray() |
|
{ |
|
return $this->context; |
|
} |
|
}
|
|
|