summaryrefslogtreecommitdiff
path: root/intern.gospeladlershof.de/vendor/pda/pheanstalk/src/Response/ArrayResponse.php
diff options
context:
space:
mode:
Diffstat (limited to 'intern.gospeladlershof.de/vendor/pda/pheanstalk/src/Response/ArrayResponse.php')
-rw-r--r--intern.gospeladlershof.de/vendor/pda/pheanstalk/src/Response/ArrayResponse.php69
1 files changed, 69 insertions, 0 deletions
diff --git a/intern.gospeladlershof.de/vendor/pda/pheanstalk/src/Response/ArrayResponse.php b/intern.gospeladlershof.de/vendor/pda/pheanstalk/src/Response/ArrayResponse.php
new file mode 100644
index 0000000..23c03ed
--- /dev/null
+++ b/intern.gospeladlershof.de/vendor/pda/pheanstalk/src/Response/ArrayResponse.php
@@ -0,0 +1,69 @@
+<?php
+
+namespace Pheanstalk\Response;
+
+use Pheanstalk\Response;
+
+/**
+ * A response with an ArrayObject interface to key=>value data
+ *
+ * @author Paul Annesley
+ * @package Pheanstalk
+ * @license http://www.opensource.org/licenses/mit-license.php
+ */
+class ArrayResponse
+ extends \ArrayObject
+ implements Response
+{
+ private $_name;
+
+ /**
+ * @param string $name
+ * @param array $data
+ */
+ public function __construct($name, $data)
+ {
+ $this->_name = $name;
+ parent::__construct($data);
+ }
+
+ /* (non-phpdoc)
+ * @see Response::getResponseName()
+ */
+ public function getResponseName()
+ {
+ return $this->_name;
+ }
+
+ /**
+ * Object property access to ArrayObject data.
+ */
+ public function __get($property)
+ {
+ $key = $this->_transformPropertyName($property);
+
+ return isset($this[$key]) ? $this[$key] : null;
+ }
+
+ /**
+ * Object property access to ArrayObject data.
+ */
+ public function __isset($property)
+ {
+ $key = $this->_transformPropertyName($property);
+
+ return isset($this[$key]);
+ }
+
+ // ----------------------------------------
+
+ /**
+ * Tranform underscored property name to hyphenated array key.
+ * @param string
+ * @return string
+ */
+ private function _transformPropertyName($propertyName)
+ {
+ return str_replace('_', '-', $propertyName);
+ }
+}