1 config.inc | public ConfigDatabaseStorage::initializeStorage() |
Create the database table if does not already exist.
Return value
bool: TRUE on success, FALSE in case of an error.
Throws
Overrides ConfigStorageInterface::initializeStorage
File
- core/
includes/ config.inc, line 1346 - This is the API for configuration storage.
Class
- ConfigDatabaseStorage
- Defines the database storage controller.
Code
public function initializeStorage() {
// db_table_exists() does not prefix our tables, so we have to do it
// manually when we do this check.
$connection_info = Database::getConnectionInfo($this->database);
$prefix = $connection_info[$this->database]['prefix']['default'];
if (!db_table_exists($prefix . $this->table)) {
try {
db_create_table($this->table, $this->schema($this->table));
}
catch (\Exception $e) {
throw new ConfigStorageException(format_string('The database table %table could not be created: @error', array(
'%table' => $this->table,
'@error' => $e->getMessage(),
)), 0, $e);
}
}
return TRUE;
}