abstract class FileUsageBase in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/modules/file/src/FileUsage/FileUsageBase.php \Drupal\file\FileUsage\FileUsageBase
Defines the base class for database file usage backend.
Hierarchy
- class \Drupal\file\FileUsage\FileUsageBase implements FileUsageInterface
Expanded class hierarchy of FileUsageBase
1 file declares its use of FileUsageBase
- TestFileUsage.php in core/
modules/ system/ tests/ modules/ service_provider_test/ src/ TestFileUsage.php - Contains \Drupal\service_provider_test\TestFileUsage.
File
- core/
modules/ file/ src/ FileUsage/ FileUsageBase.php, line 15 - Contains \Drupal\file\FileUsage\FileUsageBase.
Namespace
Drupal\file\FileUsageView source
abstract class FileUsageBase implements FileUsageInterface {
/**
* {@inheritdoc}
*/
public function add(FileInterface $file, $module, $type, $id, $count = 1) {
// Make sure that a used file is permanent.
if (!$file
->isPermanent()) {
$file
->setPermanent();
$file
->save();
}
}
/**
* {@inheritdoc}
*/
public function delete(FileInterface $file, $module, $type = NULL, $id = NULL, $count = 1) {
// If there are no more remaining usages of this file, mark it as temporary,
// which result in a delete through system_cron().
$usage = \Drupal::service('file.usage')
->listUsage($file);
if (empty($usage)) {
$file
->setTemporary();
$file
->save();
}
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
FileUsageBase:: |
public | function |
Records that a module is using a file. Overrides FileUsageInterface:: |
2 |
FileUsageBase:: |
public | function |
Removes a record to indicate that a module is no longer using a file. Overrides FileUsageInterface:: |
2 |
FileUsageInterface:: |
public | function | Determines where a file is used. | 2 |