You are here

protected static function Number::prepareTarget in Feeds 8.3

Prepares a target definition.

Parameters

\Drupal\Core\Field\FieldDefinitionInterface $field_definition: The field definition.

Return value

\Drupal\feeds\FieldTargetDefinition The target definition.

Overrides FieldTargetBase::prepareTarget

1 method overrides Number::prepareTarget()
Integer::prepareTarget in src/Feeds/Target/Integer.php
Prepares a target definition.

File

src/Feeds/Target/Number.php, line 26

Class

Number
Defines a number field mapper.

Namespace

Drupal\feeds\Feeds\Target

Code

protected static function prepareTarget(FieldDefinitionInterface $field_definition) {
  $definition = FieldTargetDefinition::createFromFieldDefinition($field_definition)
    ->addProperty('value');

  // Only the decimal field type is supported as unique target. The float
  // field type isn't because it cannot be precisely selected with the 'equal'
  // operator.
  // @see https://stackoverflow.com/questions/1302243/selecting-a-float-in-mysql
  if ($field_definition
    ->getType() === 'decimal') {
    $definition
      ->markPropertyUnique('value');
  }
  return $definition;
}