Example: Queue

Same name in other branches
  1. 3.x modules/queue_example/queue_example.module \queue_example
  2. 4.0.x modules/queue_example/queue_example.module \queue_example

Demonstrating the Queue API

The Queue API provides a traditional FIFO (first-in-first-out) queue, but also provides the concepts of:

  • "Creating" a queued item, which means inserting it into a queue.
  • "Claiming" a queued item, which essentially means requesting the next item from the queue and holding a lock on that item for a specified period of time.
  • "Releasing" an item, which means giving up a claim but leaving the item in the queue.
  • "Deleting" an item, which means finally removing it from the queue.

This example demonstrates only basic queue functionality, and will use the default queue implementation, which is SystemQueue, managed using persistent database storage.

Further resources include the limited Queue operations documentation. More:

Batch vs Queue Presentation slides by John VanDyk session video.

See also

system.queue.inc

Parent topics

File

queue_example/queue_example.module, line 8

Functions

Title Sort descending File name Summary
queue_example_add_remove_form queue_example/queue_example.module Form generator for managing the queue.
queue_example_add_remove_form_claim queue_example/queue_example.module Submit function for the "claim" button.
queue_example_add_remove_form_clear_queue queue_example/queue_example.module Submit handler for clearing/deleting the queue.
queue_example_add_remove_form_delete queue_example/queue_example.module Submit function for "Claim and delete" button.
queue_example_add_remove_form_insert queue_example/queue_example.module Submit function for the insert-into-queue button.
queue_example_add_remove_form_run_cron queue_example/queue_example.module Submit function for "run cron" button.
queue_example_menu queue_example/queue_example.module Implements hook_menu().
queue_example_retrieve_queue queue_example/queue_example.module Retrieves the queue from the database for display purposes only.
queue_example_show_queue queue_example/queue_example.module Submit function for the show-queue button.
queue_example_theme queue_example/queue_example.module Implements hook_theme().
theme_queue_items queue_example/queue_example.module Themes the queue display.

Classes

Title Sort descending File name Summary
QueueExampleTestCase queue_example/queue_example.test Functional tests for the Queue Example module.