Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'core/Db/Schema.php')
-rw-r--r--core/Db/Schema.php423
1 files changed, 207 insertions, 216 deletions
diff --git a/core/Db/Schema.php b/core/Db/Schema.php
index fbce36722d..8cf56ccb85 100644
--- a/core/Db/Schema.php
+++ b/core/Db/Schema.php
@@ -19,254 +19,245 @@
*/
class Piwik_Db_Schema
{
- /**
- * Singleton instance
- *
- * @var Piwik_Db_Schema
- */
- static private $instance = null;
+ /**
+ * Singleton instance
+ *
+ * @var Piwik_Db_Schema
+ */
+ static private $instance = null;
- /**
- * Type of database schema
- *
- * @var string
- */
- private $schema = null;
+ /**
+ * Type of database schema
+ *
+ * @var string
+ */
+ private $schema = null;
- /**
- * Returns the singleton Piwik_Db_Schema
- *
- * @return Piwik_Db_Schema
- */
- static public function getInstance()
- {
- if (self::$instance === null)
- {
- self::$instance = new self;
- }
- return self::$instance;
- }
+ /**
+ * Returns the singleton Piwik_Db_Schema
+ *
+ * @return Piwik_Db_Schema
+ */
+ static public function getInstance()
+ {
+ if (self::$instance === null) {
+ self::$instance = new self;
+ }
+ return self::$instance;
+ }
- /**
- * Get schema class name
- *
- * @param string $schemaName
- * @return string
- */
- private static function getSchemaClassName($schemaName)
- {
- return 'Piwik_Db_Schema_' . str_replace(' ', '_', ucwords(str_replace('_', ' ', strtolower($schemaName))));
- }
+ /**
+ * Get schema class name
+ *
+ * @param string $schemaName
+ * @return string
+ */
+ private static function getSchemaClassName($schemaName)
+ {
+ return 'Piwik_Db_Schema_' . str_replace(' ', '_', ucwords(str_replace('_', ' ', strtolower($schemaName))));
+ }
- /**
- * Get list of schemas
- *
- * @param string $adapterName
- * @return array
- */
- public static function getSchemas($adapterName)
- {
- static $allSchemaNames = array(
- // MySQL storage engines
- 'MYSQL' => array(
- 'Myisam',
+ /**
+ * Get list of schemas
+ *
+ * @param string $adapterName
+ * @return array
+ */
+ public static function getSchemas($adapterName)
+ {
+ static $allSchemaNames = array(
+ // MySQL storage engines
+ 'MYSQL' => array(
+ 'Myisam',
// 'Innodb',
// 'Infinidb',
- ),
+ ),
- // Microsoft SQL Server
+ // Microsoft SQL Server
// 'MSSQL' => array( 'Mssql' ),
- // PostgreSQL
+ // PostgreSQL
// 'PDO_PGSQL' => array( 'Pgsql' ),
- // IBM DB2
+ // IBM DB2
// 'IBM' => array( 'Ibm' ),
- // Oracle
+ // Oracle
// 'OCI' => array( 'Oci' ),
- );
+ );
- $adapterName = strtoupper($adapterName);
- switch($adapterName)
- {
- case 'PDO_MYSQL':
- case 'MYSQLI':
- $adapterName = 'MYSQL';
- break;
+ $adapterName = strtoupper($adapterName);
+ switch ($adapterName) {
+ case 'PDO_MYSQL':
+ case 'MYSQLI':
+ $adapterName = 'MYSQL';
+ break;
- case 'PDO_MSSQL':
- case 'SQLSRV':
- $adapterName = 'MSSQL';
- break;
+ case 'PDO_MSSQL':
+ case 'SQLSRV':
+ $adapterName = 'MSSQL';
+ break;
- case 'PDO_IBM':
- case 'DB2':
- $adapterName = 'IBM';
- break;
+ case 'PDO_IBM':
+ case 'DB2':
+ $adapterName = 'IBM';
+ break;
- case 'PDO_OCI':
- case 'ORACLE':
- $adapterName = 'OCI';
- break;
- }
- $schemaNames = $allSchemaNames[$adapterName];
+ case 'PDO_OCI':
+ case 'ORACLE':
+ $adapterName = 'OCI';
+ break;
+ }
+ $schemaNames = $allSchemaNames[$adapterName];
- $schemas = array();
+ $schemas = array();
- foreach($schemaNames as $schemaName)
- {
- $className = 'Piwik_Db_Schema_'.$schemaName;
- if(call_user_func(array($className, 'isAvailable')))
- {
- $schemas[] = $schemaName;
- }
- }
+ foreach ($schemaNames as $schemaName) {
+ $className = 'Piwik_Db_Schema_' . $schemaName;
+ if (call_user_func(array($className, 'isAvailable'))) {
+ $schemas[] = $schemaName;
+ }
+ }
- return $schemas;
- }
+ return $schemas;
+ }
- /**
- * Load schema
- */
- private function loadSchema()
- {
- $schema = null;
- Piwik_PostEvent('Schema.loadSchema', $schema);
- if($schema === null)
- {
- $config = Piwik_Config::getInstance();
- $dbInfos = $config->database;
- if(isset($dbInfos['schema']))
- {
- $schemaName = $dbInfos['schema'];
- }
- else
- {
- $schemaName = 'Myisam';
- }
- $className = self::getSchemaClassName($schemaName);
- $schema = new $className();
- }
- $this->schema = $schema;
- }
+ /**
+ * Load schema
+ */
+ private function loadSchema()
+ {
+ $schema = null;
+ Piwik_PostEvent('Schema.loadSchema', $schema);
+ if ($schema === null) {
+ $config = Piwik_Config::getInstance();
+ $dbInfos = $config->database;
+ if (isset($dbInfos['schema'])) {
+ $schemaName = $dbInfos['schema'];
+ } else {
+ $schemaName = 'Myisam';
+ }
+ $className = self::getSchemaClassName($schemaName);
+ $schema = new $className();
+ }
+ $this->schema = $schema;
+ }
- /**
- * Returns an instance that subclasses Piwik_Db_Schema
- *
- * @return Piwik_Db_Schema_Interface
- */
- private function getSchema()
- {
- if ($this->schema === null)
- {
- $this->loadSchema();
- }
- return $this->schema;
- }
+ /**
+ * Returns an instance that subclasses Piwik_Db_Schema
+ *
+ * @return Piwik_Db_Schema_Interface
+ */
+ private function getSchema()
+ {
+ if ($this->schema === null) {
+ $this->loadSchema();
+ }
+ return $this->schema;
+ }
- /**
- * Get the SQL to create a specific Piwik table
- *
- * @param string $tableName name of the table to create
- * @return string SQL
- */
- public function getTableCreateSql( $tableName )
- {
- return $this->getSchema()->getTableCreateSql($tableName);
- }
+ /**
+ * Get the SQL to create a specific Piwik table
+ *
+ * @param string $tableName name of the table to create
+ * @return string SQL
+ */
+ public function getTableCreateSql($tableName)
+ {
+ return $this->getSchema()->getTableCreateSql($tableName);
+ }
- /**
- * Get the SQL to create Piwik tables
- *
- * @return array array of strings containing SQL
- */
- public function getTablesCreateSql()
- {
- return $this->getSchema()->getTablesCreateSql();
- }
+ /**
+ * Get the SQL to create Piwik tables
+ *
+ * @return array array of strings containing SQL
+ */
+ public function getTablesCreateSql()
+ {
+ return $this->getSchema()->getTablesCreateSql();
+ }
- /**
- * Create database
- *
- * @param null|string $dbName database name to create
- */
- public function createDatabase( $dbName = null )
- {
- $this->getSchema()->createDatabase($dbName);
- }
+ /**
+ * Create database
+ *
+ * @param null|string $dbName database name to create
+ */
+ public function createDatabase($dbName = null)
+ {
+ $this->getSchema()->createDatabase($dbName);
+ }
- /**
- * Drop database
- */
- public function dropDatabase()
- {
- $this->getSchema()->dropDatabase();
- }
+ /**
+ * Drop database
+ */
+ public function dropDatabase()
+ {
+ $this->getSchema()->dropDatabase();
+ }
- /**
- * Create all tables
- */
- public function createTables()
- {
- $this->getSchema()->createTables();
- }
+ /**
+ * Create all tables
+ */
+ public function createTables()
+ {
+ $this->getSchema()->createTables();
+ }
- /**
- * Creates an entry in the User table for the "anonymous" user.
- */
- public function createAnonymousUser()
- {
- $this->getSchema()->createAnonymousUser();
- }
+ /**
+ * Creates an entry in the User table for the "anonymous" user.
+ */
+ public function createAnonymousUser()
+ {
+ $this->getSchema()->createAnonymousUser();
+ }
- /**
- * Truncate all tables
- */
- public function truncateAllTables()
- {
- $this->getSchema()->truncateAllTables();
- }
+ /**
+ * Truncate all tables
+ */
+ public function truncateAllTables()
+ {
+ $this->getSchema()->truncateAllTables();
+ }
- /**
- * Drop specific tables
- *
- * @param array $doNotDelete
- */
- public function dropTables( $doNotDelete = array() )
- {
- $this->getSchema()->dropTables($doNotDelete);
- }
+ /**
+ * Drop specific tables
+ *
+ * @param array $doNotDelete
+ */
+ public function dropTables($doNotDelete = array())
+ {
+ $this->getSchema()->dropTables($doNotDelete);
+ }
- /**
- * Names of all the prefixed tables in piwik
- * Doesn't use the DB
- *
- * @return array Table names
- */
- public function getTablesNames()
- {
- return $this->getSchema()->getTablesNames();
- }
+ /**
+ * Names of all the prefixed tables in piwik
+ * Doesn't use the DB
+ *
+ * @return array Table names
+ */
+ public function getTablesNames()
+ {
+ return $this->getSchema()->getTablesNames();
+ }
- /**
- * Get list of tables installed
- *
- * @param bool $forceReload Invalidate cache
- * @return array installed tables
- */
- public function getTablesInstalled($forceReload = true)
- {
- return $this->getSchema()->getTablesInstalled($forceReload);
- }
+ /**
+ * Get list of tables installed
+ *
+ * @param bool $forceReload Invalidate cache
+ * @return array installed tables
+ */
+ public function getTablesInstalled($forceReload = true)
+ {
+ return $this->getSchema()->getTablesInstalled($forceReload);
+ }
- /**
- * Returns true if Piwik tables exist
- *
- * @return bool True if tables exist; false otherwise
- */
- public function hasTables()
- {
- return $this->getSchema()->hasTables();
- }
+ /**
+ * Returns true if Piwik tables exist
+ *
+ * @return bool True if tables exist; false otherwise
+ */
+ public function hasTables()
+ {
+ return $this->getSchema()->hasTables();
+ }
} \ No newline at end of file