You are here

protected function GroupRelationManager::getVanillaInstalled in Group 2.0.x

Retrieves a vanilla instance of every installed plugin.

Return value

\Drupal\group\Plugin\Group\Relation\GroupRelationCollection A plugin collection with a vanilla instance of every installed plugin.

1 call to GroupRelationManager::getVanillaInstalled()
GroupRelationManager::getInstalled in src/Plugin/Group/Relation/GroupRelationManager.php
Returns a plugin collection of all installed group relations.

File

src/Plugin/Group/Relation/GroupRelationManager.php, line 231

Class

GroupRelationManager
Manages GroupRelation plugin implementations.

Namespace

Drupal\group\Plugin\Group\Relation

Code

protected function getVanillaInstalled() {

  // Retrieve a vanilla instance of all known group relation plugins.
  $plugins = clone $this
    ->getAll();

  // Retrieve all installed group relation plugin IDs.
  $installed = $this
    ->getInstalledIds();

  // Remove uninstalled plugins from the collection.

  /** @var \Drupal\group\Plugin\Group\Relation\GroupRelationCollection $plugins */
  foreach ($plugins as $plugin_id => $plugin) {
    if (!in_array($plugin_id, $installed)) {
      $plugins
        ->removeInstanceId($plugin_id);
    }
  }
  return $plugins;
}