public function DefaultTableMapping::getDedicatedDataTableName in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/lib/Drupal/Core/Entity/Sql/DefaultTableMapping.php \Drupal\Core\Entity\Sql\DefaultTableMapping::getDedicatedDataTableName()
Generates a table name for a field data table.
Parameters
\Drupal\Core\Field\FieldStorageDefinitionInterface $storage_definition: The field storage definition.
bool $is_deleted: (optional) Whether the table name holding the values of a deleted field should be returned.
Return value
string A string containing the generated name for the database table.
File
- core/
lib/ Drupal/ Core/ Entity/ Sql/ DefaultTableMapping.php, line 324 - Contains \Drupal\Core\Entity\Sql\DefaultTableMapping.
Class
- DefaultTableMapping
- Defines a default table mapping class.
Namespace
Drupal\Core\Entity\SqlCode
public function getDedicatedDataTableName(FieldStorageDefinitionInterface $storage_definition, $is_deleted = FALSE) {
if ($is_deleted) {
// When a field is a deleted, the table is renamed to
// {field_deleted_data_FIELD_UUID}. To make sure we don't end up with
// table names longer than 64 characters, we hash the unique storage
// identifier and return the first 10 characters so we end up with a short
// unique ID.
return "field_deleted_data_" . substr(hash('sha256', $storage_definition
->getUniqueStorageIdentifier()), 0, 10);
}
else {
return $this
->generateFieldTableName($storage_definition, FALSE);
}
}