setOptions($options); } } public function __set($name, $value) { $method = 'set' . $name; if (('mapper' == $name) || !method_exists($this, $method)) { throw new Exception('Invalid pool property'); } $this->$method($value); } public function __get($name) { $method = 'get' . $name; if (('mapper' == $name) || !method_exists($this, $method)) { throw new Exception('Invalid pool property'); } return $this->$method(); } public function setOptions(array $options) { $methods = get_class_methods($this); foreach ($options as $key => $value) { $method = 'set' . ucfirst($key); if (in_array($method, $methods)) { $this->$method($value); } } return $this; } public function getID() { return $this->_poolID; } public function setID($_poolID) { $this->_poolID = $_poolID; return $this; } public function getTitle() { return $this->_title; } public function setTitle($_title) { $this->_title = $_title; return $this; } public function getDescription() { return $this->_description; } public function setDescription($_description) { $this->_description = $_description; return $this; } public function getLocation() { return $this->_location; } public function setLocation($_location) { $this->_location = $_location; return $this; } }