You are here

public function ContextMapper::getContextValues in Chaos Tool Suite (ctools) 8.3

Gathers the static context values.

Parameters

array[] $static_context_configurations: An array of static context configurations.

Return value

\Drupal\Component\Plugin\Context\ContextInterface[] An array of set context values, keyed by context name.

Overrides ContextMapperInterface::getContextValues

File

src/ContextMapper.php, line 36

Class

ContextMapper
Maps context configurations to context objects.

Namespace

Drupal\ctools

Code

public function getContextValues(array $context_configurations) {
  $contexts = [];
  foreach ($context_configurations as $name => $context_configuration) {
    if (strpos($context_configuration['type'], 'entity:') === 0) {
      $context_definition = new EntityContextDefinition($context_configuration['type'], $context_configuration['label'], TRUE, FALSE, $context_configuration['description']);
      $context = new EntityLazyLoadContext($context_definition, $this->entityRepository, $context_configuration['value']);
    }
    else {
      $context_definition = new ContextDefinition($context_configuration['type'], $context_configuration['label'], TRUE, FALSE, $context_configuration['description']);
      $context = new Context($context_definition, $context_configuration['value']);
    }
    $contexts[$name] = $context;
  }
  return $contexts;
}