http://www.mediawiki.org/wiki/Special:Code/MediaWiki/60816

Revision: 60816
Author:   tstarling
Date:     2010-01-08 00:31:24 +0000 (Fri, 08 Jan 2010)

Log Message:
-----------
For r60757: implement Database::getType() explicitly in each subclass, to make 
Roan happy.

Modified Paths:
--------------
    trunk/phase3/includes/db/Database.php
    trunk/phase3/includes/db/DatabaseIbm_db2.php
    trunk/phase3/includes/db/DatabaseMssql.php
    trunk/phase3/includes/db/DatabaseMysql.php
    trunk/phase3/includes/db/DatabaseOracle.php
    trunk/phase3/includes/db/DatabasePostgres.php
    trunk/phase3/includes/db/DatabaseSqlite.php

Modified: trunk/phase3/includes/db/Database.php
===================================================================
--- trunk/phase3/includes/db/Database.php       2010-01-08 00:02:17 UTC (rev 
60815)
+++ trunk/phase3/includes/db/Database.php       2010-01-08 00:31:24 UTC (rev 
60816)
@@ -287,13 +287,7 @@
        /**
         * Get the type of the DBMS, as it appears in $wgDBtype.
         */
-       function getType() {
-               if ( preg_match( '/^Database(\w+)$/', get_class( $this ), $m ) 
) {
-                       return strtolower( $m[1] );
-               } else {
-                       throw new MWException( get_class( $this ) .'::getType: 
unable to determine type.' );
-               }
-       }
+       abstract function getType();
 
 #------------------------------------------------------------------------------
 # Other functions

Modified: trunk/phase3/includes/db/DatabaseIbm_db2.php
===================================================================
--- trunk/phase3/includes/db/DatabaseIbm_db2.php        2010-01-08 00:02:17 UTC 
(rev 60815)
+++ trunk/phase3/includes/db/DatabaseIbm_db2.php        2010-01-08 00:31:24 UTC 
(rev 60816)
@@ -391,8 +391,11 @@
                        return $this->mDBname;
                }
        }
+
+       function getType() {
+               return 'ibm_db2';
+       }
        
-       
        ######################################
        # Setup
        ######################################

Modified: trunk/phase3/includes/db/DatabaseMssql.php
===================================================================
--- trunk/phase3/includes/db/DatabaseMssql.php  2010-01-08 00:02:17 UTC (rev 
60815)
+++ trunk/phase3/includes/db/DatabaseMssql.php  2010-01-08 00:31:24 UTC (rev 
60816)
@@ -45,6 +45,10 @@
 
        }
 
+       function getType() {
+               return 'mssql';
+       }
+
        /**
         * todo: check if these should be true like parent class
         */

Modified: trunk/phase3/includes/db/DatabaseMysql.php
===================================================================
--- trunk/phase3/includes/db/DatabaseMysql.php  2010-01-08 00:02:17 UTC (rev 
60815)
+++ trunk/phase3/includes/db/DatabaseMysql.php  2010-01-08 00:31:24 UTC (rev 
60816)
@@ -7,6 +7,10 @@
  * @see Database
  */
 class DatabaseMysql extends DatabaseBase {
+       function getType() {
+               return 'mysql';
+       }
+
        /*private*/ function doQuery( $sql ) {
                if( $this->bufferResults() ) {
                        $ret = mysql_query( $sql, $this->mConn );

Modified: trunk/phase3/includes/db/DatabaseOracle.php
===================================================================
--- trunk/phase3/includes/db/DatabaseOracle.php 2010-01-08 00:02:17 UTC (rev 
60815)
+++ trunk/phase3/includes/db/DatabaseOracle.php 2010-01-08 00:31:24 UTC (rev 
60816)
@@ -192,6 +192,10 @@
                wfRunHooks( 'DatabaseOraclePostInit', array( &$this ) );
        }
 
+       function getType() {
+               return 'oracle';
+       }
+
        function cascadingDeletes() {
                return true;
        }

Modified: trunk/phase3/includes/db/DatabasePostgres.php
===================================================================
--- trunk/phase3/includes/db/DatabasePostgres.php       2010-01-08 00:02:17 UTC 
(rev 60815)
+++ trunk/phase3/includes/db/DatabasePostgres.php       2010-01-08 00:31:24 UTC 
(rev 60816)
@@ -84,6 +84,10 @@
 
        }
 
+       function getType() {
+               return 'postgres';
+       }
+
        function cascadingDeletes() {
                return true;
        }

Modified: trunk/phase3/includes/db/DatabaseSqlite.php
===================================================================
--- trunk/phase3/includes/db/DatabaseSqlite.php 2010-01-08 00:02:17 UTC (rev 
60815)
+++ trunk/phase3/includes/db/DatabaseSqlite.php 2010-01-08 00:31:24 UTC (rev 
60816)
@@ -32,6 +32,10 @@
                $this->open( $server, $user, $password, $dbName );
        }
 
+       function getType() {
+               return 'sqlite';
+       }
+
        /**
         * @todo: check if it should be true like parent class
         */



_______________________________________________
MediaWiki-CVS mailing list
MediaWiki-CVS@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to