protected function PropertiesBase::getFieldDataDefinition in Salesforce Suite 8.4
Same name and namespace in other branches
- 5.0.x modules/salesforce_mapping/src/Plugin/SalesforceMappingField/PropertiesBase.php \Drupal\salesforce_mapping\Plugin\SalesforceMappingField\PropertiesBase::getFieldDataDefinition()
Helper method to get the Data Definition for the current field.
Parameters
\Drupal\Core\Entity\EntityInterface $entity: The Entity to get the field from.
Return value
\Drupal\Core\TypedData\DataDefinitionInterface The Data Definition of the current field.
Overrides SalesforceMappingFieldPluginBase::getFieldDataDefinition
File
- modules/
salesforce_mapping/ src/ Plugin/ SalesforceMappingField/ PropertiesBase.php, line 189
Class
- PropertiesBase
- Base class for properties plugins.
Namespace
Drupal\salesforce_mapping\Plugin\SalesforceMappingFieldCode
protected function getFieldDataDefinition(EntityInterface $entity) {
if (!strpos($this
->config('drupal_field_value'), '.')) {
return parent::getFieldDataDefinition($entity);
}
$data_definition = $this
->dataFetcher()
->fetchDefinitionByPropertyPath($entity
->getTypedData()
->getDataDefinition(), $this
->config('drupal_field_value'));
if ($data_definition instanceof ListDataDefinitionInterface) {
$data_definition = $data_definition
->getItemDefinition();
}
return $data_definition;
}