getConfigManager example


  public static function preDelete(EntityStorageInterface $storage, array $entities) {
    parent::preDelete($storage$entities);

    foreach ($entities as $entity) {
      if ($entity->isUninstalling() || $entity->isSyncing()) {
        // During extension uninstall and configuration synchronization         // deletions are already managed.         break;
      }
      // Fix or remove any dependencies.       $config_entities = static::getConfigManager()->getConfigEntitiesToChangeOnDependencyRemoval('config', [$entity->getConfigDependencyName()], FALSE);
      /** @var \Drupal\Core\Config\Entity\ConfigEntityInterface $dependent_entity */
      foreach ($config_entities['update'] as $dependent_entity) {
        $dependent_entity->save();
      }
      foreach ($config_entities['delete'] as $dependent_entity) {
        $dependent_entity->delete();
      }
    }
  }

  /** * Gets the configuration manager. * * @return \Drupal\Core\Config\ConfigManager * The configuration manager. */
$form = parent::buildForm($form$form_state);
    $entity = $this->getEntity();
    // Only do dependency processing for configuration entities. Whilst it is     // possible for a configuration entity to be dependent on a content entity,     // these dependencies are soft and content delete permissions are often     // given to more users. This method should not make assumptions that $entity     // is a configuration entity in case we decide to remove the following     // condition.     if (!($entity instanceof ConfigEntityInterface)) {
      return $form;
    }
    $this->addDependencyListsToForm($form$entity->getConfigDependencyKey()$this->getConfigNamesToDelete($entity)$this->getConfigManager()$this->entityTypeManager);

    return $form;
  }

  /** * Gets the configuration manager. * * @return \Drupal\Core\Config\ConfigManager * The configuration manager. */
  protected function getConfigManager() {
    
Home | Imprint | This part of the site doesn't use cookies.