farm_entity_test.module in farmOS 2.x
Contains farm_entity_test.module.
File
modules/core/entity/tests/modules/farm_entity_test/farm_entity_test.moduleView source
<?php
/**
* @file
* Contains farm_entity_test.module.
*/
use Drupal\Core\Entity\EntityTypeInterface;
/**
* Implements hook_entity_base_field_info().
*/
function farm_entity_test_entity_base_field_info(EntityTypeInterface $entity_type) {
$fields = [];
// Add a new base field to all logs.
if ($entity_type
->id() == 'log') {
$options = [
'type' => 'string',
'label' => t('Test hook base field'),
];
$fields['test_hook_base_field'] = \Drupal::service('farm_field.factory')
->baseFieldDefinition($options);
}
return $fields;
}
/**
* Implements hook_farm_entity_bundle_field_info().
*/
function farm_entity_test_farm_entity_bundle_field_info(EntityTypeInterface $entity_type, string $bundle) {
$fields = [];
// Add a new bundle field to test logs.
if ($entity_type
->id() == 'log' && in_array($bundle, [
'test',
'test_override',
])) {
$options = [
'type' => 'string',
'label' => t('Test hook bundle field'),
];
$fields['test_hook_bundle_field'] = \Drupal::service('farm_field.factory')
->bundleFieldDefinition($options);
}
// Add bundle specific fields to all log types.
if ($entity_type
->id() == 'log') {
$options = [
'type' => 'string',
'label' => t('Test bundle specific field for: @bundle', [
'@bundle' => $bundle,
]),
];
$field_name = 'test_hook_bundle_' . $bundle . '_specific_field';
$fields[$field_name] = \Drupal::service('farm_field.factory')
->bundleFieldDefinition($options);
}
return $fields;
}
Functions
Name | Description |
---|---|
farm_entity_test_entity_base_field_info | Implements hook_entity_base_field_info(). |
farm_entity_test_farm_entity_bundle_field_info | Implements hook_farm_entity_bundle_field_info(). |