You are here

protected function EntityUpdateManager::allowSourceEntityTracking in Entity Usage 8.2

Same name and namespace in other branches
  1. 8.3 src/EntityUpdateManager.php \Drupal\entity_usage\EntityUpdateManager::allowSourceEntityTracking()

Check if an entity is allowed to be tracked as source.

Parameters

\Drupal\Core\Entity\EntityInterface $entity: The entity object.

Return value

bool Whether the entity can be tracked or not.

2 calls to EntityUpdateManager::allowSourceEntityTracking()
EntityUpdateManager::trackUpdateOnCreation in src/EntityUpdateManager.php
Track updates on creation of potential source entities.
EntityUpdateManager::trackUpdateOnEdition in src/EntityUpdateManager.php
Track updates on edit / update of potential source entities.

File

src/EntityUpdateManager.php, line 168

Class

EntityUpdateManager
Class EntityUpdateManager.

Namespace

Drupal\entity_usage

Code

protected function allowSourceEntityTracking(EntityInterface $entity) {
  $allow_tracking = FALSE;
  $entity_type = $entity
    ->getEntityType();
  $enabled_source_entity_types = $this->config
    ->get('track_enabled_source_entity_types');
  if (!is_array($enabled_source_entity_types) && $entity_type
    ->entityClassImplements('\\Drupal\\Core\\Entity\\ContentEntityInterface')) {

    // When no settings are defined, track all content entities by default.
    $allow_tracking = TRUE;
  }
  elseif (is_array($enabled_source_entity_types) && in_array($entity_type
    ->id(), $enabled_source_entity_types, TRUE)) {
    $allow_tracking = TRUE;
  }
  return $allow_tracking;
}