MediaWiki  master
SqliteInstaller Class Reference

Class for setting up the MediaWiki database using SQLLite. More...

Inheritance diagram for SqliteInstaller:
Collaboration diagram for SqliteInstaller:

Public Member Functions

 checkPrerequisites ()
 
 createTables ()
 
 getConnectForm ()
 Get HTML for a web form that configures this database. More...
 
 getGlobalDefaults ()
 Get a name=>value map of MW configuration globals for the default values. More...
 
 getLocalSettings ()
 
 getName ()
 Return the internal name, e.g. More...
 
 isCompiled ()
 
 needsUpgrade ()
 
 openConnection ()
 
 setupDatabase ()
 
 setupSearchIndex (&$status)
 
 submitConnectForm ()
 
- Public Member Functions inherited from DatabaseInstaller
 __construct ( $parent)
 Construct and initialise parent. More...
 
 createExtensionTables ()
 Create the tables for each extension the user enabled Stable to override. More...
 
 createManualTables ()
 Create database tables from scratch. More...
 
 doUpgrade ()
 Perform database upgrades. More...
 
 enableLB ()
 Set up LBFactory so that wfGetDB() etc. More...
 
 getCheckBox ( $var, $label, $attribs=[], $helpData="")
 Get a labelled checkbox to configure a local boolean variable. More...
 
 getConnection ()
 Connect to the database using the administrative user/password currently defined in the session. More...
 
 getGeneratedSchemaPath ( $db)
 Return a path to the DBMS-specific automatically generated schema file. More...
 
 getGlobalNames ()
 Get an array of MW configuration globals that will be configured by this class. More...
 
 getInstallUserBox ()
 Get a standard install-user fieldset. More...
 
 getInternalDefaults ()
 Get a name=>value map of internal variables used during installation. More...
 
 getPasswordBox ( $var, $label, $attribs=[], $helpData="")
 Get a labelled password box to configure a local variable. More...
 
 getRadioSet ( $params)
 Get a set of labelled radio buttons. More...
 
 getReadableName ()
 Get the internationalised name for this DBMS. More...
 
 getSchemaPath ( $db)
 Return a path to the DBMS-specific schema file, otherwise default to tables.sql Stable to override. More...
 
 getSchemaVars ()
 Override this to provide DBMS-specific schema variables, to be substituted into tables.sql and other schema files. More...
 
 getSettingsForm ()
 Get HTML for a web form that retrieves settings used for installation. More...
 
 getTextBox ( $var, $label, $attribs=[], $helpData="")
 Get a labelled text box to configure a local variable. More...
 
 getUpdateKeysPath ( $db)
 Return a path to the DBMS-specific update key file, otherwise default to update-keys.sql Stable to override. More...
 
 getVar ( $var, $default=null)
 Get a variable, taking local defaults into account. More...
 
 getWebUserBox ( $noCreateMsg=false)
 Get a standard web-user fieldset. More...
 
 insertUpdateKeys ()
 Insert update keys into table to prevent running unneded updates. More...
 
 outputHandler ( $string)
 
 populateInterwikiTable ()
 Common function for databases that don't understand the MySQLish syntax of interwiki.sql. More...
 
 preInstall ()
 Allow DB installers a chance to make last-minute changes before installation occurs. More...
 
 preUpgrade ()
 Allow DB installers a chance to make checks before upgrade. More...
 
 setupSchemaVars ()
 Set appropriate schema variables in the current database connection. More...
 
 setVar ( $name, $value)
 Convenience alias for $this->parent->setVar() More...
 
 setVarsFromRequest ( $varNames)
 Convenience function to set variables based on form data. More...
 
 submitInstallUserBox ()
 Submit a standard install user fieldset. More...
 
 submitSettingsForm ()
 Set variables based on the request array, assuming it was submitted via the form return by getSettingsForm(). More...
 
 submitWebUserBox ()
 Submit the form from getWebUserBox(). More...
 

Public Attributes

DatabaseSqlite $db
 
- Public Attributes inherited from DatabaseInstaller
Database $db = null
 The database connection. More...
 
WebInstaller $parent
 The Installer object. More...
 

Static Public Attributes

static $minimumVersion = '3.8.0'
 
- Static Public Attributes inherited from DatabaseInstaller
static string $minimumVersion
 Set by subclasses. More...
 

Protected Member Functions

 makeStubDBFile ( $dir, $db)
 

Protected Attributes

 $globalNames
 
- Protected Attributes inherited from DatabaseInstaller
array $globalNames = []
 Array of MW configuration globals this class uses. More...
 
array $internalDefaults = []
 Internal variables for installation. More...
 

Static Protected Attributes

static $notMinimumVersionMessage = 'config-outdated-sqlite'
 
- Static Protected Attributes inherited from DatabaseInstaller
static string $notMinimumVersionMessage
 Set by subclasses. More...
 

Static Private Member Functions

static checkDataDir ( $dir)
 Check if the data directory is writable or can be created. More...
 
static createDataDir ( $dir)
 
static realpath ( $path)
 Safe wrapper for PHP's realpath() that fails gracefully if it's unable to canonicalize the path. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from DatabaseInstaller
static meetsMinimumRequirement ( $serverVersion)
 Whether the provided version meets the necessary requirements for this type. More...
 
- Static Protected Member Functions inherited from DatabaseInstaller
static checkExtension ( $name)
 Convenience function. More...
 

Detailed Description

Class for setting up the MediaWiki database using SQLLite.

Since
1.17

Definition at line 34 of file SqliteInstaller.php.

Member Function Documentation

◆ checkDataDir()

static SqliteInstaller::checkDataDir (   $dir)
staticprivate

Check if the data directory is writable or can be created.

Parameters
string$dirPath to the data directory
Returns
Status Return fatal Status if $dir un-writable or no permission to create a directory

Definition at line 144 of file SqliteInstaller.php.

References Installer\maybeGetWebserverPrimaryGroup(), StatusValue\newFatal(), and StatusValue\newGood().

Referenced by setupDatabase(), and submitConnectForm().

◆ checkPrerequisites()

SqliteInstaller::checkPrerequisites ( )
Returns
Status

Reimplemented from DatabaseInstaller.

Definition at line 60 of file SqliteInstaller.php.

References $db, and Wikimedia\Rdbms\DatabaseSqlite\getServerVersion().

◆ createDataDir()

static SqliteInstaller::createDataDir (   $dir)
staticprivate
Parameters
string$dirPath to the data directory
Returns
Status Return good Status if without error

Definition at line 174 of file SqliteInstaller.php.

References StatusValue\newFatal(), StatusValue\newGood(), and wfMkdirParents().

Referenced by setupDatabase().

◆ createTables()

SqliteInstaller::createTables ( )
Returns
Status

Reimplemented from DatabaseInstaller.

Definition at line 336 of file SqliteInstaller.php.

References setupSearchIndex().

◆ getConnectForm()

SqliteInstaller::getConnectForm ( )

Get HTML for a web form that configures this database.

Configuration at this time should be the minimum needed to connect and test whether install or upgrade is required.

If this is called, $this->parent can be assumed to be a WebInstaller.

Reimplemented from DatabaseInstaller.

Definition at line 89 of file SqliteInstaller.php.

References DatabaseInstaller\getTextBox().

◆ getGlobalDefaults()

SqliteInstaller::getGlobalDefaults ( )

Get a name=>value map of MW configuration globals for the default values.

Stable to override

Returns
array

Reimplemented from DatabaseInstaller.

Definition at line 72 of file SqliteInstaller.php.

References $IP, and $path.

◆ getLocalSettings()

SqliteInstaller::getLocalSettings ( )
Returns
string

Reimplemented from DatabaseInstaller.

Definition at line 374 of file SqliteInstaller.php.

References LocalSettingsGenerator\escapePhpString(), and DatabaseInstaller\getVar().

◆ getName()

SqliteInstaller::getName ( )

Return the internal name, e.g.

'mysql', or 'sqlite'.

Reimplemented from DatabaseInstaller.

Definition at line 49 of file SqliteInstaller.php.

◆ isCompiled()

SqliteInstaller::isCompiled ( )
Returns
bool Returns true if the client library is compiled in.

Reimplemented from DatabaseInstaller.

Definition at line 53 of file SqliteInstaller.php.

References DatabaseInstaller\checkExtension().

◆ makeStubDBFile()

SqliteInstaller::makeStubDBFile (   $dir,
  $db 
)
protected
Parameters
string$dir
string$db
Returns
Status

Definition at line 320 of file SqliteInstaller.php.

References $db, $file, StatusValue\newFatal(), and StatusValue\newGood().

Referenced by setupDatabase().

◆ needsUpgrade()

SqliteInstaller::needsUpgrade ( )
Returns
bool

Reimplemented from DatabaseInstaller.

Definition at line 209 of file SqliteInstaller.php.

References DatabaseInstaller\getVar().

◆ openConnection()

SqliteInstaller::openConnection ( )
Returns
Status

Reimplemented from DatabaseInstaller.

Definition at line 191 of file SqliteInstaller.php.

References $db, DatabaseInstaller\getVar(), and StatusValue\newGood().

◆ realpath()

static SqliteInstaller::realpath (   $path)
staticprivate

Safe wrapper for PHP's realpath() that fails gracefully if it's unable to canonicalize the path.

Parameters
string$path
Returns
string

Definition at line 110 of file SqliteInstaller.php.

References $path.

Referenced by submitConnectForm().

◆ setupDatabase()

◆ setupSearchIndex()

SqliteInstaller::setupSearchIndex ( $status)
Parameters
Status&$status
Returns
Status

Definition at line 349 of file SqliteInstaller.php.

References $IP.

Referenced by createTables().

◆ submitConnectForm()

SqliteInstaller::submitConnectForm ( )

Member Data Documentation

◆ $db

DatabaseSqlite SqliteInstaller::$db

◆ $globalNames

SqliteInstaller::$globalNames
protected
Initial value:
= [
'wgDBname',
'wgSQLiteDataDir',
]

Definition at line 44 of file SqliteInstaller.php.

◆ $minimumVersion

SqliteInstaller::$minimumVersion = '3.8.0'
static

Definition at line 36 of file SqliteInstaller.php.

◆ $notMinimumVersionMessage

SqliteInstaller::$notMinimumVersionMessage = 'config-outdated-sqlite'
staticprotected

Definition at line 37 of file SqliteInstaller.php.


The documentation for this class was generated from the following file: