/**
  * set database
  */
 protected function _getDb()
 {
     $mailDbConfig = $this->_config[$this->_subconfigKey];
     $mailDbConfig['adapter'] = !empty($mailDbConfig['adapter']) ? strtolower($mailDbConfig['adapter']) : strtolower($this->_config['adapter']);
     $tine20DbConfig = Tinebase_Core::getDb()->getConfig();
     $tine20DbConfig['adapter'] = strtolower(str_replace('Tinebase_Backend_Sql_Adapter_', '', get_class(Tinebase_Core::getDb())));
     if ($mailDbConfig['adapter'] == $tine20DbConfig['adapter'] && $mailDbConfig['host'] == $tine20DbConfig['host'] && $mailDbConfig['dbname'] == $tine20DbConfig['dbname'] && $mailDbConfig['username'] == $tine20DbConfig['username']) {
         $this->_db = Tinebase_Core::getDb();
     } else {
         $dbConfig = array_intersect_key($mailDbConfig, array_flip(array('adapter', 'host', 'dbname', 'username', 'password', 'port')));
         $this->_db = Tinebase_Core::createAndConfigureDbAdapter($dbConfig);
     }
 }