Commit 93de81ba authored by Joao Paulo Constantino's avatar Joao Paulo Constantino Committed by Bryan Sharpe
Browse files

Issue #3261184 by levibs, joaoimagex, b_sharpe: Refactor Queue logic to not be redis specific

parent 38d74e49
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
generic:
  enabled: 1
  redis_queue: 0
  use_queue: 0
legacy:
  enabled: 0
  redis_queue: 0
  use_queue: 0
+5 −7
Original line number Diff line number Diff line
@@ -90,13 +90,11 @@ class SettingsForm extends ConfigFormBase {
        '#title' => $this->t('Enable plugin'),
        '#default_value' => isset($config['enabled']) ? $config['enabled'] : FALSE,
      ];
      $form[$id][$id . '_redis_queue'] = [
      $form[$id][$id . '_use_queue'] = [
        '#type' => 'checkbox',
        '#title' => $this->t('Use Redis queue'),
        '#description' => $this->t('1. Enable and setup <a href="https://www.drupal.org/project/redis" target="_blank">Redis</a> module.<br>
          2. Add to your settings.php:<br>$settings[\'queue_service_usage_data_records\'] = \'queue.redis\';'),
        '#default_value' => isset($config['redis_queue']) ? $config['redis_queue'] : FALSE,
        '#disabled' => !$this->moduleHandler->moduleExists('redis'),
        '#title' => $this->t('Enable Queue'),
        '#description' => $this->t('Use queue to process items'),
        '#default_value' => !empty($config['use_queue']) ?? FALSE,
      ];
    }

@@ -113,7 +111,7 @@ class SettingsForm extends ConfigFormBase {
      $id = $definition['id'];
      $values = $config->get($id);
      $values['enabled'] = $form_state->getValue($id . '_enabled');
      $values['redis_queue'] = $form_state->getValue($id . '_redis_queue');
      $values['use_queue'] = $form_state->getValue($id . '_use_queue');
      $config->set($id, $values);
    }

+1 −1
Original line number Diff line number Diff line
@@ -138,7 +138,7 @@ class UsageData implements UsageDataInterface {

        // Prepare for Redis Queue or DB.
        $key = $usage['event_type'] . $usage['entity_type_id'] . $usage['entity_id'];
        if ($this->moduleHandler->moduleExists('redis') && !empty($config[$id]['redis_queue'])) {
        if (!empty($config[$id]['use_queue'])) {
          $inserts['queue'][$id][$key] = $usage;
        }
        else {
+1 −1
Original line number Diff line number Diff line
@@ -126,7 +126,7 @@ function usage_data_file_download($uri) {
    \Drupal::service('usage_data.storage.database')->recordUsage($inserts['db']);
  }
  if (isset($inserts['queue']) && !empty($inserts['queue'])) {
    $queue = \Drupal::service('queue.redis')->get('usage_data_records');
    $queue = \Drupal::service('queue')->get('usage_data_records');
    $queue->createItem($inserts['queue']);
  }
}
+1 −1
Original line number Diff line number Diff line
@@ -46,7 +46,7 @@ if ($request && is_array($post)) {
    $container->get('usage_data.storage.database')->recordUsage($inserts['db']);
  }
  if (isset($inserts['queue']) && !empty($inserts['queue'])) {
    $queue = $container->get('queue.redis')->get('usage_data_records');
    $queue = $container->get('queue')->get('usage_data_records');
    $queue->createItem($inserts['queue']);
  }
}