true, 'error' => 'details of error') */ public function requireDatabaseServer($databaseConfig); /** * Ensure a database connection is possible using credentials provided. * The established connection resource is returned with the results as well. * * @param array $databaseConfig Associative array of db configuration, e.g. "server", "username" etc * @return array Result - e.g. array('okay' => true, 'connection' => mysql link, 'error' => 'details of error') */ public function requireDatabaseConnection($databaseConfig); /** * Determines the version of the database server * * @param array $databaseConfig Associative array of db configuration, e.g. "server", "username" etc * @return string Version of database server or false on failure */ public function getDatabaseVersion($databaseConfig); /** * Check database version is greater than the minimum supported * * @param array $databaseConfig Associative array of db configuration, e.g. "server", "username" etc * @return array Result - e.g. array('success' => true, 'error' => 'details of error') */ public function requireDatabaseVersion($databaseConfig); /** * Ensure that the database connection is able to use an existing database, * or be able to create one if it doesn't exist. * * @param array $databaseConfig Associative array of db configuration, e.g. "server", "username" etc * @return array Result - e.g. array('okay' => true, 'existsAlready' => 'true') */ public function requireDatabaseOrCreatePermissions($databaseConfig); /** * Ensure we have permissions to alter tables. * * @param array $databaseConfig Associative array of db configuration, e.g. "server", "username" etc * @return array Result - e.g. array('okay' => true, 'applies' => true), where applies is whether * the test is relevant for the database */ public function requireDatabaseAlterPermissions($databaseConfig); }