entity_hierarchy-8.x-2.24/modules/entity_hierarchy_microsite/src/MicrositeMenuItemOverrideStorageSchema.php
modules/entity_hierarchy_microsite/src/MicrositeMenuItemOverrideStorageSchema.php
<?php namespace Drupal\entity_hierarchy_microsite; use Drupal\Core\Entity\Sql\SqlContentEntityStorageSchema; use Drupal\Core\Field\FieldStorageDefinitionInterface; /** * Defines a class for storage of overrides. */ class MicrositeMenuItemOverrideStorageSchema extends SqlContentEntityStorageSchema { /** * {@inheritdoc} */ protected function getSharedTableFieldSchema(FieldStorageDefinitionInterface $storage_definition, $table_name, array $column_mapping) { $schema = parent::getSharedTableFieldSchema($storage_definition, $table_name, $column_mapping); $field_name = $storage_definition->getName(); if ($table_name == $this->storage->getBaseTable() && $field_name === 'target') { // Target should have a unique index. This is a) for performance and b) // to prevent the presence of two overrides for the one derivative. $this->addSharedTableFieldUniqueKey($storage_definition, $schema); } return $schema; } }