function DatabaseBackend::catchException
Same name in this branch
- 8.9.x core/lib/Drupal/Core/Cache/DatabaseBackend.php \Drupal\Core\Cache\DatabaseBackend::catchException()
Same name in other branches
- 9 core/lib/Drupal/Core/Flood/DatabaseBackend.php \Drupal\Core\Flood\DatabaseBackend::catchException()
- 9 core/lib/Drupal/Core/Cache/DatabaseBackend.php \Drupal\Core\Cache\DatabaseBackend::catchException()
- 10 core/lib/Drupal/Core/Flood/DatabaseBackend.php \Drupal\Core\Flood\DatabaseBackend::catchException()
- 10 core/lib/Drupal/Core/Cache/DatabaseBackend.php \Drupal\Core\Cache\DatabaseBackend::catchException()
- 11.x core/lib/Drupal/Core/Flood/DatabaseBackend.php \Drupal\Core\Flood\DatabaseBackend::catchException()
- 11.x core/lib/Drupal/Core/Cache/DatabaseBackend.php \Drupal\Core\Cache\DatabaseBackend::catchException()
Act on an exception when flood might be stale.
If the table does not yet exist, that's fine, but if the table exists and yet the query failed, then the flood is stale and the exception needs to propagate.
Parameters
$e: The exception.
Throws
\Exception
3 calls to DatabaseBackend::catchException()
- DatabaseBackend::clear in core/
lib/ Drupal/ Core/ Flood/ DatabaseBackend.php - Makes the flood control mechanism forget an event for the current visitor.
- DatabaseBackend::garbageCollection in core/
lib/ Drupal/ Core/ Flood/ DatabaseBackend.php - Cleans up expired flood events. This method is called automatically on cron run.
- DatabaseBackend::isAllowed in core/
lib/ Drupal/ Core/ Flood/ DatabaseBackend.php - Checks whether a user is allowed to proceed with the specified event.
File
-
core/
lib/ Drupal/ Core/ Flood/ DatabaseBackend.php, line 180
Class
- DatabaseBackend
- Defines the database flood backend. This is the default Drupal backend.
Namespace
Drupal\Core\FloodCode
protected function catchException(\Exception $e) {
if ($this->connection
->schema()
->tableExists(static::TABLE_NAME)) {
throw $e;
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.