class AutowireTestClass

Test class covering service and parameter autowiring scenarios.

Hierarchy

Expanded class hierarchy of AutowireTestClass

File

core/tests/Drupal/Tests/Core/DependencyInjection/AutowiredInstanceTraitTest.php, line 95

Namespace

Drupal\Tests\Core\DependencyInjection
View source
class AutowireTestClass {
  use AutowiredInstanceTrait;
  
  /**
   * An injected service.
   */
  public \stdClass $setterTypedService;
  
  /**
   * An injected service.
   */
  public \stdClass $setterNamedService;
  
  /**
   * An injected parameter.
   */
  public string $setterParameter;
  public function __construct(public readonly mixed $configuration, public readonly string $pluginId, public readonly array $pluginDefinition, public readonly \stdClass $serviceByType, #[Autowire(service: 'custom.service')] public readonly \stdClass $serviceById, #[Autowire('@custom.service')] public readonly \stdClass $serviceByShortId, #[Autowire(param: 'array.parameter')] public readonly array $arrayParameter, #[Autowire('%string.parameter%')] public readonly string $stringParameter, #[Autowire('@nullable.service')] public readonly ?object $nullableService = NULL, #[Autowire(param: 'nullable.parameter')] public readonly ?string $nullableParameter = NULL) {
  }
  public function setTypedService(\stdClass $service) : void {
    $this->setterTypedService = $service;
  }
  public function setNamedService(#[Autowire(service: 'setter.service')] $service) : void {
    $this->setterNamedService = $service;
  }
  public function setParameter(#[Autowire('%setter.parameter%')] string $parameter) : void {
    $this->setterParameter = $parameter;
  }

}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.