public static function test_get_database_class_returns_database_reflection_class() { $database_class_factory = Database_DatabaseClassFactory::get_instance(); $database_class = $database_class_factory->get_database_class(); $mysql_user_factory = Database_MySQLUserFactory::get_instance(); $mysql_user = $mysql_user_factory->get_for_this_project(); $passwords_file = $mysql_user->get_password_file(); $database_object = $database_class->newInstance($mysql_user, $passwords_file->get_database()); return is_a($database_object, 'Database_Database'); }
public function get_database() { if (!isset($this->database)) { $password_file = $this->get_password_file(); $database_name = $password_file->get_database(); $database_class_factory = Database_DatabaseClassFactory::get_instance(); $database_class = $database_class_factory->get_database_class(); $this->database = $database_class->newInstance($this, $database_name); } return $this->database; }
/** * What if the row sub class hasn't been * implemented yet? * * This function should just return the Row * class in that case. */ public final function get_row_class() { $table_name = $this->get_name(); $database_class_factory = Database_DatabaseClassFactory::get_instance(); $row_class = $database_class_factory->get_row_class($table_name); return $row_class; }
/** * If a renderer class for this has been implemented * and saved in the row subclass renderers directory, * then that class will be returned. * * Otherwise, the default row renderer (which the * row subclass renderers should extend anyway) * is returned. */ public final function get_renderer() { #$renderer_class = $this->get_renderer_class(); #return $renderer_class->newInstance($this); $table = $this->get_table(); $table_name = $table->get_name(); $database_class_factory = Database_DatabaseClassFactory::get_instance(); $row_renderer_class = $database_class_factory->get_row_renderer_class($table_name); $renderer = $row_renderer_class->newInstance($this); return $renderer; }