_adapter = $adapter; return $this; } /** * Adapter type to use * * @return string */ public function getAdapter() { return $this->_adapter; } /** * Set the adapter params * * @param $adapter string * @return Zend_Application_Resource_Db */ public function setParams(array $params) { $this->_params = $params; return $this; } /** * Adapter parameters * * @return array */ public function getParams() { return $this->_params; } /** * Set whether to use this as default table adapter * * @param boolean $defaultTableAdapter * @return Zend_Application_Resource_Db */ public function setIsDefaultTableAdapter($isDefaultTableAdapter) { $this->_isDefaultTableAdapter = $isDefaultTableAdapter; return $this; } /** * Is this adapter the default table adapter? * * @return void */ public function isDefaultTableAdapter() { return $this->_isDefaultTableAdapter; } /** * Retrieve initialized DB connection * * @return null|Zend_Db_Adapter_Interface */ public function getDbAdapter() { if ((null === $this->_db) && (null !== ($adapter = $this->getAdapter())) ) { $this->_db = Zend_Db::factory($adapter, $this->getParams()); } return $this->_db; } /** * Defined by Zend_Application_Resource_Resource * * @return Zend_Db_Adapter_Abstract|null */ public function init() { if (null !== ($db = $this->getDbAdapter())) { if ($this->isDefaultTableAdapter()) { Zend_Db_Table::setDefaultAdapter($db); } return $db; } } }