You are here

protected function CropStorageSchema::getEntitySchema in Crop API 8.2

Gets the entity schema for the specified entity type.

Entity types may override this method in order to optimize the generated schema of the entity tables. However, only cross-field optimizations should be added here; e.g., an index spanning multiple fields. Optimizations that apply to a single field have to be added via SqlContentEntityStorageSchema::getSharedTableFieldSchema() instead.

Parameters

\Drupal\Core\Entity\ContentEntityTypeInterface $entity_type: The entity type definition.

bool $reset: (optional) If set to TRUE static cache will be ignored and a new schema array generation will be performed. Defaults to FALSE.

Return value

array A Schema API array describing the entity schema, excluding dedicated field tables.

Overrides SqlContentEntityStorageSchema::getEntitySchema

File

src/CropStorageSchema.php, line 16

Class

CropStorageSchema
Defines the crop schema handler.

Namespace

Drupal\crop

Code

protected function getEntitySchema(ContentEntityTypeInterface $entity_type, $reset = FALSE) {
  $schema = parent::getEntitySchema($entity_type, $reset);
  if ($data_table = $this->storage
    ->getDataTable()) {
    $schema[$data_table]['indexes'] += [
      'crop__uri_type' => [
        'uri',
        'type',
      ],
    ];
  }
  return $schema;
}