You are here

function farm_sensor_listener_farm_entity_bundle_field_info in farmOS 2.x

Implements hook_farm_entity_bundle_field_info().

File

modules/asset/sensor/modules/listener/farm_sensor_listener.module, line 18
The farm_sensor_listener module.

Code

function farm_sensor_listener_farm_entity_bundle_field_info(EntityTypeInterface $entity_type, string $bundle) {
  $fields = [];

  // Add a public_key reference field to sensor assets.
  if ($entity_type
    ->id() === 'asset' && $bundle === 'sensor') {
    $options = [
      'type' => 'string',
      'label' => t('Public key (legacy)'),
      'description' => t('Public key (legacy) for the sensor.'),
      'default_value_callback' => DataStream::class . '::createUniqueKey',
      'weight' => [
        'form' => 3,
      ],
    ];
    $fields['public_key'] = \Drupal::service('farm_field.factory')
      ->bundleFieldDefinition($options);
  }
  return $fields;
}