public function Job::preSave

File

src/Entity/Job.php, line 768

Class

Job
Entity class for the tmgmt_job entity.

Namespace

Drupal\tmgmt\Entity

Code

public function preSave(EntityStorageInterface $storage) {
  parent::preSave($storage);
  if ($this
    ->isContinuous() && !$this
    ->isContinuousInactive() && !$this
    ->isAborted()) {
    $this->state = Job::STATE_CONTINUOUS;
  }

  // Activate job item if the previous job state was not active.
  if ($this
    ->isActive() && (!isset($this->original) || !$this->original
    ->isActive())) {
    foreach ($this
      ->getItems() as $item) {

      // The job was submitted, activate any inactive job item.
      if ($item
        ->isInactive()) {
        $item
          ->setState(JobItemInterface::STATE_ACTIVE);
      }
    }
  }
}