advancedqueue-8.x-1.x-dev/tests/modules/advancedqueue_test/src/Plugin/AdvancedQueue/JobType/Flexible.php

tests/modules/advancedqueue_test/src/Plugin/AdvancedQueue/JobType/Flexible.php
<?php

declare(strict_types=1);

namespace Drupal\advancedqueue_test\Plugin\AdvancedQueue\JobType;

use Drupal\advancedqueue\Attribute\AdvancedQueueJobType;
use Drupal\advancedqueue\Job;
use Drupal\advancedqueue\JobResult;
use Drupal\advancedqueue\Plugin\AdvancedQueue\JobType\JobTypeBase;
use Drupal\Core\StringTranslation\TranslatableMarkup;

/**
 * Flexible job type.
 */
#[AdvancedQueueJobType(
  id: "flexible",
  label: new TranslatableMarkup("Flexible"),
)]
class Flexible extends JobTypeBase {

  /**
   * {@inheritdoc}
   */
  public function process(Job $job) {
    $payload = $job->getPayload();
    if (!empty($payload['expected_exception'])) {
      throw new \Exception($payload['expected_exception']);
    }

    return new JobResult(
      $payload['expected_state'],
      $payload['expected_message'],
      $payload['max_retries'] ?? NULL,
      $payload['retry_delay'] ?? NULL
    );
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc