Skip to content

Commit

Permalink
Compatibility to Job Scheduler after http://drupal.org/node/922702#co…
Browse files Browse the repository at this point in the history
…mment-3493518 got committed.
  • Loading branch information
Alex Barth committed Sep 26, 2010
1 parent fd1c70f commit ff48db1
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 12 deletions.
18 changes: 16 additions & 2 deletions feeds.module
Expand Up @@ -41,9 +41,23 @@ function feeds_cron() {
}

/**
* Implements hook_cron_queue_info().
* Implements hook_cron_job_scheduler_info().
*
* Invoked by drupal_queue module if present.
* Compare queue names with key names in feeds_cron_queue_info().
*/
function feeds_cron_job_scheduler_info() {
$info = array();
$info['feeds_source_import'] = array(
'queue name' => 'feeds_source_import',
);
$info['feeds_importer_expire'] = array(
'queue name' => 'feeds_importer_expire',
);
return $info;
}

/**
* Implements hook_cron_queue_info().
*/
function feeds_cron_queue_info() {
$queues = array();
Expand Down
8 changes: 3 additions & 5 deletions includes/FeedsImporter.inc
Expand Up @@ -78,17 +78,16 @@ class FeedsImporter extends FeedsConfigurable {
*/
public function schedule() {
$job = array(
'callback' => 'feeds_importer_expire',
'type' => $this->id,
'period' => 0,
'periodic' => TRUE,
);
if (FEEDS_EXPIRE_NEVER != $this->processor->expiryTime()) {
$job['period'] = 3600;
job_scheduler()->set($job);
JobScheduler::get('feeds_importer_expire')->set($job);
}
else {
job_scheduler()->remove($job);
JobScheduler::get('feeds_importer_expire')->remove($job);
}
}

Expand Down Expand Up @@ -152,15 +151,14 @@ class FeedsImporter extends FeedsConfigurable {
->condition('id', $this->id)
->execute();
$job = array(
'callback' => 'feeds_importer_expire',
'type' => $this->id,
'id' => 0,
);
if ($this->export_type & EXPORT_IN_CODE) {
feeds_reschedule($this->id);
}
else {
job_scheduler()->remove($job);
JobScheduler::get('feeds_importer_expire')->remove($job);
}
}

Expand Down
8 changes: 3 additions & 5 deletions includes/FeedsSource.inc
Expand Up @@ -316,18 +316,17 @@ class FeedsSource extends FeedsConfigurable {
$period = $fetcher_period;
}
$job = array(
'callback' => 'feeds_source_import',
'type' => $this->id,
'id' => $this->feed_nid,
// Schedule as soon as possible if a batch is active.
'period' => $this->progressImporting() === FEEDS_BATCH_COMPLETE ? $period : 0,
'periodic' => TRUE,
);
if ($job['period'] != FEEDS_SCHEDULE_NEVER) {
job_scheduler()->set($job);
JobScheduler::get('feeds_source_import')->set($job);
}
else {
job_scheduler()->remove($job);
JobScheduler::get('feeds_source_import')->remove($job);
}
}

Expand Down Expand Up @@ -400,11 +399,10 @@ class FeedsSource extends FeedsConfigurable {
->execute();
// Remove from schedule.
$job = array(
'callback' => 'feeds_source_import',
'type' => $this->id,
'id' => $this->feed_nid,
);
job_scheduler()->remove($job);
JobScheduler::get('feeds_source_import')->remove($job);
}

/**
Expand Down

0 comments on commit ff48db1

Please sign in to comment.