class AnnouncementsFeedCronHooks

Cron hook implementations for announcements_feed.

Hierarchy

Expanded class hierarchy of AnnouncementsFeedCronHooks

File

core/modules/announcements_feed/src/Hook/AnnouncementsFeedCronHooks.php, line 14

Namespace

Drupal\announcements_feed\Hook
View source
class AnnouncementsFeedCronHooks {
  public function __construct(protected readonly AnnounceFetcher $announceFetcher, protected readonly StateInterface $state, protected readonly ConfigFactoryInterface $configFactory, protected readonly TimeInterface $time) {
  }
  
  /**
   * Implements hook_cron().
   */
  public function cron() : void {
    $interval = $this->configFactory
      ->get('announcements_feed.settings')
      ->get('cron_interval');
    $last_check = $this->state
      ->get('announcements_feed.last_fetch', 0);
    $time = $this->time
      ->getRequestTime();
    if ($time - $last_check > $interval) {
      $this->announceFetcher
        ->fetch(TRUE);
      $this->state
        ->set('announcements_feed.last_fetch', $time);
    }
  }

}

Members

Title Sort descending Modifiers Object type Summary
AnnouncementsFeedCronHooks::cron public function Implements hook_cron().
AnnouncementsFeedCronHooks::__construct public function

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