You are here

class Cron in Drupal 9

Same name in this branch
  1. 9 core/lib/Drupal/Core/Cron.php \Drupal\Core\Cron
  2. 9 core/lib/Drupal/Core/ProxyClass/Cron.php \Drupal\Core\ProxyClass\Cron
Same name and namespace in other branches
  1. 8 core/lib/Drupal/Core/ProxyClass/Cron.php \Drupal\Core\ProxyClass\Cron

Provides a proxy class for \Drupal\Core\Cron.

Hierarchy

Expanded class hierarchy of Cron

See also

\Drupal\Component\ProxyBuilder

7 string references to 'Cron'
MenuLinkTest::providerSource in core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/MenuLinkTest.php
The data provider.
router_test.routing.yml in core/modules/system/tests/modules/router_test_directory/router_test.routing.yml
core/modules/system/tests/modules/router_test_directory/router_test.routing.yml
ShortcutCacheTagsTest::testToolbar in core/modules/shortcut/tests/src/Functional/ShortcutCacheTagsTest.php
Tests visibility and cacheability of shortcuts in the toolbar.
ShortcutLinksTest::testAccessShortcutsPermission in core/modules/shortcut/tests/src/Functional/ShortcutLinksTest.php
Tests that the 'access shortcuts' permissions works properly.
ShortcutLinksTest::testShortcutQuickLink in core/modules/shortcut/tests/src/Functional/ShortcutLinksTest.php
Tests that the "add to shortcut" and "remove from shortcut" links work.

... See full list

File

core/lib/Drupal/Core/ProxyClass/Cron.php, line 15

Namespace

Drupal\Core\ProxyClass
View source
class Cron implements \Drupal\Core\CronInterface {
  use \Drupal\Core\DependencyInjection\DependencySerializationTrait;

  /**
   * The id of the original proxied service.
   *
   * @var string
   */
  protected $drupalProxyOriginalServiceId;

  /**
   * The real proxied service, after it was lazy loaded.
   *
   * @var \Drupal\Core\Cron
   */
  protected $service;

  /**
   * The service container.
   *
   * @var \Symfony\Component\DependencyInjection\ContainerInterface
   */
  protected $container;

  /**
   * Constructs a ProxyClass Drupal proxy object.
   *
   * @param \Symfony\Component\DependencyInjection\ContainerInterface $container
   *   The container.
   * @param string $drupal_proxy_original_service_id
   *   The service ID of the original service.
   */
  public function __construct(\Symfony\Component\DependencyInjection\ContainerInterface $container, $drupal_proxy_original_service_id) {
    $this->container = $container;
    $this->drupalProxyOriginalServiceId = $drupal_proxy_original_service_id;
  }

  /**
   * Lazy loads the real service from the container.
   *
   * @return object
   *   Returns the constructed real service.
   */
  protected function lazyLoadItself() {
    if (!isset($this->service)) {
      $this->service = $this->container
        ->get($this->drupalProxyOriginalServiceId);
    }
    return $this->service;
  }

  /**
   * {@inheritdoc}
   */
  public function run() {
    return $this
      ->lazyLoadItself()
      ->run();
  }

}

Members

Namesort descending Modifiers Type Description Overrides
Cron::$container protected property The service container.
Cron::$drupalProxyOriginalServiceId protected property The id of the original proxied service.
Cron::$service protected property The real proxied service, after it was lazy loaded.
Cron::lazyLoadItself protected function Lazy loads the real service from the container.
Cron::run public function Executes a cron run. Overrides CronInterface::run
Cron::__construct public function Constructs a ProxyClass Drupal proxy object.
DependencySerializationTrait::$_entityStorages protected property
DependencySerializationTrait::$_serviceIds protected property
DependencySerializationTrait::__sleep public function 2
DependencySerializationTrait::__wakeup public function 2