diff -r 5b37998e522e -r 162c1de6545a web/lib/Zend/Ldap/Node/Schema/Item.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/lib/Zend/Ldap/Node/Schema/Item.php Fri Mar 11 15:05:35 2011 +0100 @@ -0,0 +1,163 @@ +setData($data); + } + + /** + * Sets the data + * + * @param array $data + * @return Zend_Ldap_Node_Schema_Item Provides a fluid interface + */ + public function setData(array $data) + { + $this->_data = $data; + return $this; + } + + /** + * Gets the data + * + * @return array + */ + public function getData() + { + return $this->_data; + } + + /** + * Gets a specific attribute from this item + * + * @param string $name + * @return mixed + */ + public function __get($name) + { + if (array_key_exists($name, $this->_data)) { + return $this->_data[$name]; + } else { + return null; + } + } + + /** + * Checks whether a specific attribute exists. + * + * @param string $name + * @return boolean + */ + public function __isset($name) + { + return (array_key_exists($name, $this->_data)); + } + + /** + * Always throws BadMethodCallException + * Implements ArrayAccess. + * + * This method is needed for a full implementation of ArrayAccess + * + * @param string $name + * @param mixed $value + * @return null + * @throws BadMethodCallException + */ + public function offsetSet($name, $value) + { + throw new BadMethodCallException(); + } + + /** + * Gets a specific attribute from this item + * + * @param string $name + * @return mixed + */ + public function offsetGet($name) + { + return $this->__get($name); + } + + /** + * Always throws BadMethodCallException + * Implements ArrayAccess. + * + * This method is needed for a full implementation of ArrayAccess + * + * @param string $name + * @return null + * @throws BadMethodCallException + */ + public function offsetUnset($name) + { + throw new BadMethodCallException(); + } + + /** + * Checks whether a specific attribute exists. + * + * @param string $name + * @return boolean + */ + public function offsetExists($name) + { + return $this->__isset($name); + } + + /** + * Returns the number of attributes. + * Implements Countable + * + * @return int + */ + public function count() + { + return count($this->_data); + } +} \ No newline at end of file