Esempio n. 1
0
 /**
  * caching the meta info
  *
  * @return unknown
  */
 function availableTables($force_lookup = false)
 {
     $available_tables = array();
     !AK_TEST_MODE && $available_tables = Ak::getStaticVar('available_tables');
     if(!$force_lookup && empty($available_tables)){
         if (($available_tables = AkDbSchemaCache::get('avaliable_tables')) === false) {
             if(empty($available_tables)){
                 $available_tables = $this->connection->MetaTables();                
             }
             AkDbSchemaCache::set('avaliable_tables', $available_tables);
             !AK_TEST_MODE && Ak::setStaticVar('available_tables', $available_tables);
         }
     }
     $available_tables = $force_lookup ? $this->connection->MetaTables() : $available_tables;
     $force_lookup && !AK_TEST_MODE && Ak::setStaticVar('available_tables', $available_tables);
     return $available_tables;
 }
Esempio n. 2
0
 /**
  * Gets information from the database engine about a single table
  */
 private function _databaseTableInternals($table)
 {
     if (!($cache = AkDbSchemaCache::get('table_internals_for_' . $table))) {
         $cache = $this->_db->getColumnDetails($table);
         AkDbSchemaCache::set('table_internals_for_' . $table, $cache);
     }
     return $cache;
 }
Esempio n. 3
0
 /**
 * @access private
 */
 function _getPersistedTableColumnSettings()
 {
     return AkDbSchemaCache::get($this->getModelName().'_column_settings');
 }
Esempio n. 4
0
 public function Test_of_loadColumnsSettings()
 {
     AkDbSchemaCache::shouldRefresh(false);
     $AkTestField = new AkTestField();
     $AkTestField->loadColumnsSettings();
     // Testing database settings cache on session (this might be changed in a future
     $this->assertEqual($AkTestField->_columnsSettings, AkDbSchemaCache::get('AkTestField_column_settings'));
     AkDbSchemaCache::shouldRefresh(true);
 }