You are here

protected function ConfigEntityReference::getPotentialFields in Feeds 8.3

Returns possible fields to reference by for a config entity.

Return value

array A list of fields to reference by.

2 calls to ConfigEntityReference::getPotentialFields()
ConfigEntityReference::buildConfigurationForm in src/Feeds/Target/ConfigEntityReference.php
Form constructor.
ConfigEntityReference::getSummary in src/Feeds/Target/ConfigEntityReference.php
Returns the summary for a target.

File

src/Feeds/Target/ConfigEntityReference.php, line 165

Class

ConfigEntityReference
Defines a config entity reference mapper.

Namespace

Drupal\feeds\Feeds\Target

Code

protected function getPotentialFields() {

  /** @var \Drupal\Core\Config\Entity\ConfigEntityTypeInterface $config_entity_type */
  $config_entity_type = $this->entityTypeManager
    ->getDefinition($this
    ->getEntityType());
  $config_name = $config_entity_type
    ->getConfigPrefix() . '.*';
  $definition = $this->typedConfigManager
    ->getDefinition($config_name);
  if (!empty($definition['mapping'])) {
    $options = [];
    foreach ($definition['mapping'] as $key => $mapper) {
      switch ($mapper['type']) {
        case 'integer':
        case 'label':
        case 'string':
        case 'text':
        case 'uuid':
          $options[$key] = $mapper['label'];
          break;
      }
    }
    return $options;
  }
  return [
    'id' => $this
      ->t('ID'),
    'uuid' => $this
      ->t('UUID'),
  ];
}