Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. CompositeResolver.php

class CompositeResolver

@internal

Hierarchy

  • class \OpenTelemetry\SDK\Common\Configuration\Resolver\CompositeResolver

Expanded class hierarchy of CompositeResolver

1 file declares its use of CompositeResolver
Configuration.php in vendor/open-telemetry/sdk/Common/Configuration/Configuration.php

File

vendor/open-telemetry/sdk/Common/Configuration/Resolver/CompositeResolver.php, line 12

Namespace

OpenTelemetry\SDK\Common\Configuration\Resolver
View source
class CompositeResolver {
    
    /** @var list<ResolverInterface> */
    private array $resolvers = [];
    public static function instance() : self {
        static $instance;
        $instance ??= new self([
            new EnvironmentResolver(),
            new PhpIniResolver(),
        ]);
        return $instance;
    }
    public function __construct($resolvers) {
        foreach ($resolvers as $resolver) {
            $this->addResolver($resolver);
        }
    }
    public function addResolver(ResolverInterface $resolver) : void {
        $this->resolvers[] = $resolver;
    }
    public function getResolvers() : array {
        return $this->resolvers;
    }
    public function resolve(string $variableName, $default = '') {
        foreach ($this->resolvers as $resolver) {
            if ($resolver->hasVariable($variableName)) {
                return $resolver->retrieveValue($variableName);
            }
        }
        return Configuration::isEmpty($default) ? Configuration::getDefault($variableName) : $default;
    }
    public function hasVariable(string $variableName) : bool {
        foreach ($this->resolvers as $resolver) {
            if ($resolver->hasVariable($variableName)) {
                return true;
            }
        }
        return false;
    }

}

Members

Title Sort descending Modifiers Object type Summary
CompositeResolver::$resolvers private property @var list&lt;ResolverInterface&gt;
CompositeResolver::addResolver public function
CompositeResolver::getResolvers public function
CompositeResolver::hasVariable public function
CompositeResolver::instance public static function
CompositeResolver::resolve public function
CompositeResolver::__construct public function

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal