瀏覽代碼

Sphinx generated documentation for the GitHub page.

Ask Solem 16 年之前
父節點
當前提交
99e51ec0c1
共有 54 個文件被更改,包括 5882 次插入72 次删除
  1. 409 0
      genindex.html
  2. 132 72
      index.html
  3. 164 0
      modindex.html
  4. 171 0
      objects.inv
  5. 177 0
      reference/celery.backends.base.html
  6. 140 0
      reference/celery.backends.cache.html
  7. 145 0
      reference/celery.backends.database.html
  8. 138 0
      reference/celery.backends.html
  9. 154 0
      reference/celery.backends.tyrant.html
  10. 102 0
      reference/celery.bin.celeryd.html
  11. 202 0
      reference/celery.conf.html
  12. 112 0
      reference/celery.datastructures.html
  13. 124 0
      reference/celery.discovery.html
  14. 128 0
      reference/celery.log.html
  15. 157 0
      reference/celery.managers.html
  16. 148 0
      reference/celery.messaging.html
  17. 242 0
      reference/celery.models.html
  18. 158 0
      reference/celery.platform.html
  19. 196 0
      reference/celery.registry.html
  20. 168 0
      reference/celery.result.html
  21. 386 0
      reference/celery.task.html
  22. 150 0
      reference/celery.timer.html
  23. 189 0
      reference/celery.worker.html
  24. 97 0
      search.html
  25. 0 0
      searchindex.js
  26. 40 0
      sources/index.txt
  27. 10 0
      sources/reference/celery.backends.base.txt
  28. 8 0
      sources/reference/celery.backends.cache.txt
  29. 8 0
      sources/reference/celery.backends.database.txt
  30. 21 0
      sources/reference/celery.backends.txt
  31. 14 0
      sources/reference/celery.backends.tyrant.txt
  32. 8 0
      sources/reference/celery.bin.celeryd.txt
  33. 47 0
      sources/reference/celery.conf.txt
  34. 8 0
      sources/reference/celery.datastructures.txt
  35. 8 0
      sources/reference/celery.discovery.txt
  36. 8 0
      sources/reference/celery.log.txt
  37. 8 0
      sources/reference/celery.managers.txt
  38. 8 0
      sources/reference/celery.messaging.txt
  39. 60 0
      sources/reference/celery.models.txt
  40. 10 0
      sources/reference/celery.platform.txt
  41. 11 0
      sources/reference/celery.registry.txt
  42. 8 0
      sources/reference/celery.result.txt
  43. 8 0
      sources/reference/celery.task.txt
  44. 8 0
      sources/reference/celery.timer.txt
  45. 8 0
      sources/reference/celery.worker.txt
  46. 414 0
      static/basic.css
  47. 201 0
      static/default.css
  48. 232 0
      static/doctools.js
  49. 二進制
      static/file.png
  50. 11 0
      static/jquery.js
  51. 二進制
      static/minus.png
  52. 二進制
      static/plus.png
  53. 59 0
      static/pygments.css
  54. 467 0
      static/searchtools.js

+ 409 - 0
genindex.html

@@ -0,0 +1,409 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Index &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="static/default.css" type="text/css" />
+    <link rel="stylesheet" href="static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="static/jquery.js"></script>
+    <script type="text/javascript" src="static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="index.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li><a href="index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+
+   <h1 id="index">Index</h1>
+
+   <a href="#A"><strong>A</strong></a> | <a href="#B"><strong>B</strong></a> | <a href="#C"><strong>C</strong></a> | <a href="#D"><strong>D</strong></a> | <a href="#E"><strong>E</strong></a> | <a href="#F"><strong>F</strong></a> | <a href="#G"><strong>G</strong></a> | <a href="#I"><strong>I</strong></a> | <a href="#J"><strong>J</strong></a> | <a href="#L"><strong>L</strong></a> | <a href="#M"><strong>M</strong></a> | <a href="#N"><strong>N</strong></a> | <a href="#P"><strong>P</strong></a> | <a href="#Q"><strong>Q</strong></a> | <a href="#R"><strong>R</strong></a> | <a href="#S"><strong>S</strong></a> | <a href="#T"><strong>T</strong></a> | <a href="#U"><strong>U</strong></a> | <a href="#W"><strong>W</strong></a> 
+
+   <hr />
+
+   
+<h2 id="A">A</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.registry.html#celery.registry.AlreadyRegistered">AlreadyRegistered</a></dt>
+<dt><a href="reference/celery.conf.html#celery.conf.AMQP_CONSUMER_QUEUE">AMQP_CONSUMER_QUEUE (in module celery.conf)</a></dt>
+<dt><a href="reference/celery.conf.html#celery.conf.AMQP_EXCHANGE">AMQP_EXCHANGE (in module celery.conf)</a></dt>
+<dt><a href="reference/celery.conf.html#celery.conf.AMQP_ROUTING_KEY">AMQP_ROUTING_KEY (in module celery.conf)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.AsynchronousMapTask">AsynchronousMapTask (class in celery.task)</a></dt></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.result.html#celery.result.AsyncResult">AsyncResult (class in celery.result)</a></dt>
+<dt><a href="reference/celery.registry.html#celery.registry.TaskRegistry.autodiscover">autodiscover() (celery.registry.TaskRegistry method)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.discovery.html#celery.discovery.autodiscover">(in module celery.discovery)</a></dt>
+  </dl></dd>
+</dl></td></tr></table>
+
+<h2 id="B">B</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.backends.cache.html#celery.backends.cache.Backend">Backend (class in celery.backends.cache)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.backends.database.html#celery.backends.database.Backend">(class in celery.backends.database)</a></dt>
+    <dt><a href="reference/celery.backends.tyrant.html#celery.backends.tyrant.Backend">(class in celery.backends.tyrant)</a></dt>
+  </dl></dd></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.result.html#celery.result.BaseAsyncResult">BaseAsyncResult (class in celery.result)</a></dt>
+<dt><a href="reference/celery.backends.base.html#celery.backends.base.BaseBackend">BaseBackend (class in celery.backends.base)</a></dt>
+</dl></td></tr></table>
+
+<h2 id="C">C</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.backends.html#module-celery.backends">celery.backends (module)</a></dt>
+<dt><a href="reference/celery.backends.base.html#module-celery.backends.base">celery.backends.base (module)</a></dt>
+<dt><a href="reference/celery.backends.cache.html#module-celery.backends.cache">celery.backends.cache (module)</a></dt>
+<dt><a href="reference/celery.backends.database.html#module-celery.backends.database">celery.backends.database (module)</a></dt>
+<dt><a href="reference/celery.backends.tyrant.html#module-celery.backends.tyrant">celery.backends.tyrant (module)</a></dt>
+<dt><a href="reference/celery.conf.html#module-celery.conf">celery.conf (module)</a></dt>
+<dt><a href="reference/celery.discovery.html#module-celery.discovery">celery.discovery (module)</a></dt>
+<dt><a href="reference/celery.log.html#module-celery.log">celery.log (module)</a></dt>
+<dt><a href="reference/celery.managers.html#module-celery.managers">celery.managers (module)</a></dt>
+<dt><a href="reference/celery.messaging.html#module-celery.messaging">celery.messaging (module)</a></dt></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.platform.html#module-celery.platform">celery.platform (module)</a></dt>
+<dt><a href="reference/celery.registry.html#module-celery.registry">celery.registry (module)</a></dt>
+<dt><a href="reference/celery.result.html#module-celery.result">celery.result (module)</a></dt>
+<dt><a href="reference/celery.task.html#module-celery.task">celery.task (module)</a></dt>
+<dt><a href="reference/celery.timer.html#module-celery.timer">celery.timer (module)</a></dt>
+<dt><a href="reference/celery.worker.html#module-celery.worker">celery.worker (module)</a></dt>
+<dt><a href="reference/celery.platform.html#celery.platform.PIDFile.check">check() (celery.platform.PIDFile method)</a></dt>
+<dt><a href="reference/celery.backends.base.html#celery.backends.base.BaseBackend.cleanup">cleanup() (celery.backends.base.BaseBackend method)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.backends.database.html#celery.backends.database.Backend.cleanup">(celery.backends.database.Backend method)</a></dt>
+  </dl></dd>
+</dl></td></tr></table>
+
+<h2 id="D">D</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.conf.html#celery.conf.DAEMON_CONCURRENCY">DAEMON_CONCURRENCY (in module celery.conf)</a></dt>
+<dt><a href="reference/celery.conf.html#celery.conf.DAEMON_LOG_FILE">DAEMON_LOG_FILE (in module celery.conf)</a></dt>
+<dt><a href="reference/celery.conf.html#celery.conf.DAEMON_LOG_LEVEL">DAEMON_LOG_LEVEL (in module celery.conf)</a></dt>
+<dt><a href="reference/celery.conf.html#celery.conf.DAEMON_PID_FILE">DAEMON_PID_FILE (in module celery.conf)</a></dt>
+<dt><a href="reference/celery.platform.html#celery.platform.daemonize">daemonize() (in module celery.platform)</a></dt>
+<dt><a href="reference/celery.models.html#TaskMeta.date_done">date_done (TaskMeta attribute)</a></dt>
+<dt><a href="reference/celery.backends.html#celery.backends.default_backend">default_backend (in module celery.backends)</a></dt>
+<dt><a href="reference/celery.backends.html#celery.backends.DefaultBackend">DefaultBackend (class in celery.backends)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.Task.delay">delay() (celery.task.Task class method)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.models.html#PeriodicTaskMeta.delay">(PeriodicTaskMeta method)</a></dt>
+  </dl></dd></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.messaging.html#celery.messaging.TaskPublisher.delay_task">delay_task() (celery.messaging.TaskPublisher method)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.task.html#celery.task.delay_task">(in module celery.task)</a></dt>
+  </dl></dd>
+<dt><a href="reference/celery.messaging.html#celery.messaging.TaskPublisher.delay_task_in_set">delay_task_in_set() (celery.messaging.TaskPublisher method)</a></dt>
+<dt><a href="reference/celery.managers.html#celery.managers.TaskManager.delete_expired">delete_expired() (celery.managers.TaskManager method)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.DeleteExpiredTaskMetaTask">DeleteExpiredTaskMetaTask (class in celery.task)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.discard_all">discard_all() (in module celery.task)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.dmap">dmap() (in module celery.task)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.dmap_async">dmap_async() (in module celery.task)</a></dt>
+</dl></td></tr></table>
+
+<h2 id="E">E</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.log.html#celery.log.emergency_error">emergency_error() (in module celery.log)</a></dt>
+<dt><a href="reference/celery.conf.html#celery.conf.EMPTY_MSG_EMIT_EVERY">EMPTY_MSG_EMIT_EVERY (in module celery.conf)</a></dt>
+<dt><a href="reference/celery.worker.html#celery.worker.EmptyQueue">EmptyQueue</a></dt>
+<dt><a href="reference/celery.timer.html#celery.timer.EventTimer">EventTimer (class in celery.timer)</a></dt>
+<dt><a href="reference/celery.worker.html#celery.worker.TaskWrapper.execute">execute() (celery.worker.TaskWrapper method)</a></dt></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.task.html#celery.task.execute_remote">execute_remote() (in module celery.task)</a></dt>
+<dt><a href="reference/celery.worker.html#celery.worker.TaskWrapper.execute_using_pool">execute_using_pool() (celery.worker.TaskWrapper method)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.ExecuteRemoteTask">ExecuteRemoteTask (class in celery.task)</a></dt>
+<dt><a href="reference/celery.worker.html#celery.worker.TaskWrapper.extend_kwargs_with_logging">extend_kwargs_with_logging() (celery.worker.TaskWrapper method)</a></dt>
+</dl></td></tr></table>
+
+<h2 id="F">F</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.registry.html#celery.registry.TaskRegistry.filter_types">filter_types() (celery.registry.TaskRegistry method)</a></dt>
+<dt><a href="reference/celery.discovery.html#celery.discovery.find_related_module">find_related_module() (in module celery.discovery)</a></dt></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.worker.html#celery.worker.TaskWrapper.from_message">from_message() (celery.worker.TaskWrapper class method)</a></dt>
+</dl></td></tr></table>
+
+<h2 id="G">G</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.result.html#celery.result.BaseAsyncResult.get">get() (celery.result.BaseAsyncResult method)</a></dt>
+<dt><a href="reference/celery.registry.html#celery.registry.TaskRegistry.get_all">get_all() (celery.registry.TaskRegistry method)</a></dt>
+<dt><a href="reference/celery.managers.html#celery.managers.TaskManager.get_all_expired">get_all_expired() (celery.managers.TaskManager method)</a></dt>
+<dt><a href="reference/celery.registry.html#celery.registry.TaskRegistry.get_all_periodic">get_all_periodic() (celery.registry.TaskRegistry method)</a></dt>
+<dt><a href="reference/celery.registry.html#celery.registry.TaskRegistry.get_all_regular">get_all_regular() (celery.registry.TaskRegistry method)</a></dt>
+<dt><a href="reference/celery.backends.html#celery.backends.get_backend_cls">get_backend_cls() (in module celery.backends)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.Task.get_consumer">get_consumer() (celery.task.Task method)</a></dt>
+<dt><a href="reference/celery.backends.html#celery.backends.get_default_backend_cls">get_default_backend_cls() (in module celery.backends)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.Task.get_logger">get_logger() (celery.task.Task method)</a></dt>
+<dt><a href="reference/celery.platform.html#celery.platform.PIDFile.get_pid">get_pid() (celery.platform.PIDFile method)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.Task.get_publisher">get_publisher() (celery.task.Task method)</a></dt>
+<dt><a href="reference/celery.backends.base.html#celery.backends.base.BaseBackend.get_result">get_result() (celery.backends.base.BaseBackend method)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.backends.cache.html#celery.backends.cache.Backend.get_result">(celery.backends.cache.Backend method)</a></dt>
+    <dt><a href="reference/celery.backends.database.html#celery.backends.database.Backend.get_result">(celery.backends.database.Backend method)</a></dt>
+    <dt><a href="reference/celery.backends.tyrant.html#celery.backends.tyrant.Backend.get_result">(celery.backends.tyrant.Backend method)</a></dt>
+  </dl></dd></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.backends.base.html#celery.backends.base.BaseBackend.get_status">get_status() (celery.backends.base.BaseBackend method)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.backends.cache.html#celery.backends.cache.Backend.get_status">(celery.backends.cache.Backend method)</a></dt>
+    <dt><a href="reference/celery.backends.database.html#celery.backends.database.Backend.get_status">(celery.backends.database.Backend method)</a></dt>
+    <dt><a href="reference/celery.backends.tyrant.html#celery.backends.tyrant.Backend.get_status">(celery.backends.tyrant.Backend method)</a></dt>
+  </dl></dd>
+<dt><a href="reference/celery.managers.html#celery.managers.TaskManager.get_task">get_task() (celery.managers.TaskManager method)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.registry.html#celery.registry.TaskRegistry.get_task">(celery.registry.TaskRegistry method)</a></dt>
+  </dl></dd>
+<dt><a href="reference/celery.managers.html#celery.managers.PeriodicTaskManager.get_waiting_tasks">get_waiting_tasks() (celery.managers.PeriodicTaskManager method)</a></dt>
+</dl></td></tr></table>
+
+<h2 id="I">I</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.backends.base.html#celery.backends.base.BaseBackend.is_done">is_done() (celery.backends.base.BaseBackend method)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.backends.cache.html#celery.backends.cache.Backend.is_done">(celery.backends.cache.Backend method)</a></dt>
+    <dt><a href="reference/celery.backends.database.html#celery.backends.database.Backend.is_done">(celery.backends.database.Backend method)</a></dt>
+    <dt><a href="reference/celery.backends.tyrant.html#celery.backends.tyrant.Backend.is_done">(celery.backends.tyrant.Backend method)</a></dt>
+    <dt><a href="reference/celery.managers.html#celery.managers.TaskManager.is_done">(celery.managers.TaskManager method)</a></dt>
+    <dt><a href="reference/celery.result.html#celery.result.BaseAsyncResult.is_done">(celery.result.BaseAsyncResult method)</a></dt>
+    <dt><a href="reference/celery.task.html#celery.task.is_done">(in module celery.task)</a></dt>
+  </dl></dd></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.task.html#celery.task.TaskSet.iterate">iterate() (celery.task.TaskSet method)</a></dt>
+</dl></td></tr></table>
+
+<h2 id="J">J</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.worker.html#celery.worker.jail">jail() (in module celery.worker)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.TaskSet.join">join() (celery.task.TaskSet method)</a></dt></dl></td><td width="33%" valign="top"><dl>
+</dl></td></tr></table>
+
+<h2 id="L">L</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.models.html#PeriodicTaskMeta.last_run_at">last_run_at (PeriodicTaskMeta attribute)</a></dt>
+<dt><a href="reference/celery.conf.html#celery.conf.LOG_FORMAT">LOG_FORMAT (in module celery.conf)</a></dt></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.conf.html#celery.conf.LOG_LEVELS">LOG_LEVELS (in module celery.conf)</a></dt>
+</dl></td></tr></table>
+
+<h2 id="M">M</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.task.html#celery.task.TaskSet.map">map() (celery.task.TaskSet class method)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.TaskSet.map_async">map_async() (celery.task.TaskSet class method)</a></dt>
+<dt><a href="reference/celery.backends.base.html#celery.backends.base.BaseBackend.mark_as_done">mark_as_done() (celery.backends.base.BaseBackend method)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.task.html#celery.task.mark_as_done">(in module celery.task)</a></dt>
+  </dl></dd></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.backends.base.html#celery.backends.base.BaseBackend.mark_as_failure">mark_as_failure() (celery.backends.base.BaseBackend method)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.task.html#celery.task.mark_as_failure">(in module celery.task)</a></dt>
+  </dl></dd>
+<dt><a href="reference/celery.backends.base.html#celery.backends.base.BaseBackend.mark_as_retry">mark_as_retry() (celery.backends.base.BaseBackend method)</a></dt>
+</dl></td></tr></table>
+
+<h2 id="N">N</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.models.html#PeriodicTaskMeta.name">name (PeriodicTaskMeta attribute)</a></dt>
+<dt><a href="reference/celery.messaging.html#celery.messaging.NoProcessConsumer">NoProcessConsumer (class in celery.messaging)</a></dt></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.registry.html#celery.registry.NotRegistered">NotRegistered</a></dt>
+</dl></td></tr></table>
+
+<h2 id="P">P</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.task.html#celery.task.PeriodicTask">PeriodicTask (class in celery.task)</a></dt>
+<dt><a href="reference/celery.managers.html#celery.managers.PeriodicTaskManager">PeriodicTaskManager (class in celery.managers)</a></dt>
+<dt><a href="reference/celery.models.html#PeriodicTaskMeta">PeriodicTaskMeta (built-in class)</a></dt></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.platform.html#celery.platform.PIDFile">PIDFile (class in celery.platform)</a></dt>
+<dt><a href="reference/celery.backends.base.html#celery.backends.base.BaseBackend.prepare_result">prepare_result() (celery.backends.base.BaseBackend method)</a></dt>
+</dl></td></tr></table>
+
+<h2 id="Q">Q</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.conf.html#celery.conf.QUEUE_WAKEUP_AFTER">QUEUE_WAKEUP_AFTER (in module celery.conf)</a></dt></dl></td><td width="33%" valign="top"><dl>
+</dl></td></tr></table>
+
+<h2 id="R">R</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.result.html#celery.result.BaseAsyncResult.ready">ready() (celery.result.BaseAsyncResult method)</a></dt>
+<dt><a href="reference/celery.registry.html#celery.registry.TaskRegistry.register">register() (celery.registry.TaskRegistry method)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.TaskSet.remote_execute">remote_execute() (celery.task.TaskSet class method)</a></dt>
+<dt><a href="reference/celery.platform.html#celery.platform.PIDFile.remove">remove() (celery.platform.PIDFile method)</a></dt>
+<dt><a href="reference/celery.platform.html#celery.platform.remove_pidfile">remove_pidfile() (in module celery.platform)</a></dt>
+<dt><a href="reference/celery.messaging.html#celery.messaging.TaskPublisher.requeue_task">requeue_task() (celery.messaging.TaskPublisher method)</a></dt>
+<dt><a href="reference/celery.result.html#celery.result.BaseAsyncResult.result">result (celery.result.BaseAsyncResult attribute)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.models.html#TaskMeta.result">(TaskMeta attribute)</a></dt>
+  </dl></dd></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.task.html#celery.task.ExecuteRemoteTask.run">run() (celery.task.ExecuteRemoteTask method)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.task.html#celery.task.Task.run">(celery.task.Task method)</a></dt>
+    <dt><a href="reference/celery.task.html#celery.task.TaskSet.run">(celery.task.TaskSet method)</a></dt>
+    <dt><a href="reference/celery.worker.html#celery.worker.TaskDaemon.run">(celery.worker.TaskDaemon method)</a></dt>
+  </dl></dd>
+<dt><a href="reference/celery.worker.html#celery.worker.TaskDaemon.run_periodic_tasks">run_periodic_tasks() (celery.worker.TaskDaemon method)</a></dt>
+</dl></td></tr></table>
+
+<h2 id="S">S</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.worker.html#celery.worker.TaskDaemon.schedule_retry_tasks">schedule_retry_tasks() (celery.worker.TaskDaemon method)</a></dt>
+<dt><a href="reference/celery.log.html#celery.log.setup_logger">setup_logger() (in module celery.log)</a></dt>
+<dt><a href="reference/celery.result.html#celery.result.BaseAsyncResult.status">status (celery.result.BaseAsyncResult attribute)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.models.html#TaskMeta.status">(TaskMeta attribute)</a></dt>
+  </dl></dd>
+<dt><a href="reference/celery.backends.base.html#celery.backends.base.BaseBackend.store_result">store_result() (celery.backends.base.BaseBackend method)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.backends.cache.html#celery.backends.cache.Backend.store_result">(celery.backends.cache.Backend method)</a></dt>
+    <dt><a href="reference/celery.backends.database.html#celery.backends.database.Backend.store_result">(celery.backends.database.Backend method)</a></dt>
+    <dt><a href="reference/celery.backends.tyrant.html#celery.backends.tyrant.Backend.store_result">(celery.backends.tyrant.Backend method)</a></dt>
+    <dt><a href="reference/celery.managers.html#celery.managers.TaskManager.store_result">(celery.managers.TaskManager method)</a></dt>
+  </dl></dd></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.result.html#celery.result.BaseAsyncResult.successful">successful() (celery.result.BaseAsyncResult method)</a></dt>
+</dl></td></tr></table>
+
+<h2 id="T">T</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.task.html#celery.task.Task">Task (class in celery.task)</a></dt>
+<dt><a href="reference/celery.models.html#PeriodicTaskMeta.task">task (PeriodicTaskMeta attribute)</a></dt>
+<dt><a href="reference/celery.models.html#TaskMeta.task_id">task_id (TaskMeta attribute)</a></dt>
+<dt><a href="reference/celery.models.html#TASK_STATUS_DONE">TASK_STATUS_DONE (built-in variable)</a></dt>
+<dt><a href="reference/celery.models.html#TASK_STATUS_FAILURE">TASK_STATUS_FAILURE (built-in variable)</a></dt>
+<dt><a href="reference/celery.models.html#TASK_STATUS_PENDING">TASK_STATUS_PENDING (built-in variable)</a></dt>
+<dt><a href="reference/celery.models.html#TASK_STATUS_RETRY">TASK_STATUS_RETRY (built-in variable)</a></dt>
+<dt><a href="reference/celery.models.html#TASK_STATUSES">TASK_STATUSES (built-in variable)</a></dt>
+<dt><a href="reference/celery.models.html#TASK_STATUSES_CHOICES">TASK_STATUSES_CHOICES (built-in variable)</a></dt>
+<dt><a href="reference/celery.messaging.html#celery.messaging.TaskConsumer">TaskConsumer (class in celery.messaging)</a></dt>
+<dt><a href="reference/celery.worker.html#celery.worker.TaskDaemon">TaskDaemon (class in celery.worker)</a></dt>
+<dt><a href="reference/celery.managers.html#celery.managers.TaskManager">TaskManager (class in celery.managers)</a></dt>
+<dt><a href="reference/celery.models.html#TaskMeta">TaskMeta (built-in class)</a></dt>
+<dt><a href="reference/celery.messaging.html#celery.messaging.TaskPublisher">TaskPublisher (class in celery.messaging)</a></dt></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.registry.html#celery.registry.TaskRegistry">TaskRegistry (class in celery.registry)</a></dt>
+<dt><a href="reference/celery.registry.html#celery.registry.TaskRegistry.AlreadyRegistered">TaskRegistry.AlreadyRegistered</a></dt>
+<dt><a href="reference/celery.registry.html#celery.registry.TaskRegistry.NotRegistered">TaskRegistry.NotRegistered</a></dt>
+<dt><a href="reference/celery.registry.html#celery.registry.tasks">tasks (in module celery.registry)</a></dt>
+<dt><a href="reference/celery.task.html#celery.task.TaskSet">TaskSet (class in celery.task)</a></dt>
+<dt><a href="reference/celery.worker.html#celery.worker.TaskWrapper">TaskWrapper (class in celery.worker)</a></dt>
+<dt><a href="reference/celery.timer.html#celery.timer.EventTimer.tick">tick() (celery.timer.EventTimer method)</a></dt>
+  <dd><dl>
+    <dt><a href="reference/celery.timer.html#celery.timer.TimeoutTimer.tick">(celery.timer.TimeoutTimer method)</a></dt>
+  </dl></dd>
+<dt><a href="reference/celery.timer.html#celery.timer.TimeoutError">TimeoutError</a></dt>
+<dt><a href="reference/celery.timer.html#celery.timer.TimeoutTimer">TimeoutTimer (class in celery.timer)</a></dt>
+<dt><a href="reference/celery.models.html#PeriodicTaskMeta.total_run_count">total_run_count (PeriodicTaskMeta attribute)</a></dt>
+<dt><a href="reference/celery.backends.tyrant.html#celery.backends.tyrant.TT_HOST">TT_HOST (in module celery.backends.tyrant)</a></dt>
+<dt><a href="reference/celery.backends.tyrant.html#celery.backends.tyrant.TT_PORT">TT_PORT (in module celery.backends.tyrant)</a></dt>
+</dl></td></tr></table>
+
+<h2 id="U">U</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.worker.html#celery.worker.UnknownTask">UnknownTask</a></dt>
+<dt><a href="reference/celery.registry.html#celery.registry.TaskRegistry.unregister">unregister() (celery.registry.TaskRegistry method)</a></dt></dl></td><td width="33%" valign="top"><dl>
+</dl></td></tr></table>
+
+<h2 id="W">W</h2>
+<table width="100%" class="indextable"><tr><td width="33%" valign="top">
+<dl>
+
+<dt><a href="reference/celery.result.html#celery.result.BaseAsyncResult.wait">wait() (celery.result.BaseAsyncResult method)</a></dt>
+<dt><a href="reference/celery.backends.base.html#celery.backends.base.BaseBackend.wait_for">wait_for() (celery.backends.base.BaseBackend method)</a></dt></dl></td><td width="33%" valign="top"><dl>
+<dt><a href="reference/celery.platform.html#celery.platform.PIDFile.write">write() (celery.platform.PIDFile method)</a></dt>
+</dl></td></tr></table>
+
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+
+   
+
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li><a href="index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 132 - 72
index.html

@@ -1,80 +1,140 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-	<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Welcome to Celery’s documentation! &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="static/default.css" type="text/css" />
+    <link rel="stylesheet" href="static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="static/jquery.js"></script>
+    <script type="text/javascript" src="static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="" />
+    <link rel="next" title="Tasks - celery.task" href="reference/celery.task.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="reference/celery.task.html" title="Tasks - celery.task"
+             accesskey="N">next</a> |</li>
+        <li><a href="">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
 
-	<title>ask/celery @ GitHub</title>
-	
-	<style type="text/css">
-		body {
-  		margin-top: 1.0em;
-  		background-color: #bdaa63;
-		  font-family: "helvetica"; 
-  		color: #000000;
-    }
-    #container {
-      margin: 0 auto;
-      width: 700px;
-    }
-		h1 { font-size: 3.8em; color: #42559c; margin-bottom: 3px; }
-		h1 .small { font-size: 0.4em; }
-		h1 a { text-decoration: none }
-		h2 { font-size: 1.5em; color: #42559c; }
-    h3 { text-align: center; color: #42559c; }
-    a { color: #42559c; }
-    .description { font-size: 1.2em; margin-bottom: 30px; margin-top: 30px; font-style: italic;}
-    .download { float: right; }
-		pre { background: #000; color: #fff; padding: 15px;}
-    hr { border: 0; width: 80%; border-bottom: 1px solid #aaa}
-    .footer { text-align:center; padding-top:30px; font-style: italic; }
-	</style>
-	
-</head>
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="welcome-to-celery-s-documentation">
+<h1>Welcome to Celery&#8217;s documentation!<a class="headerlink" href="#welcome-to-celery-s-documentation" title="Permalink to this headline">¶</a></h1>
+<p>Contents:</p>
+<ul>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.task.html">Tasks - celery.task</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.result.html">Task Result - celery.result</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.registry.html">Task Registry - celery.registry</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.discovery.html">Task Discovery - celery.discovery</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.worker.html">Multiprocessing Worker - celery.worker</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.backends.html">Backends - celery.backends</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.backends.base.html">Backend: Base - celery.backends.base</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.backends.database.html">Backend: Database - celery.backends.database</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.backends.cache.html">Backend: Cache - celery.backends.cache</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.backends.tyrant.html">Backend: Tokyo Tyrant - celery.backends.tyrant</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.conf.html">Configuration - celery.conf</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.datastructures.html">Datastructures - celery.datastructures</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.log.html">Logging - celery.log</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.managers.html">Django Model Managers - celery.managers</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.models.html">Django Models - celery.models</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.messaging.html">Messaging - celery.messaging</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.platform.html">Platform Specific - celery.platform</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.timer.html">Timers - celery.timer</a></li>
+<li class="toctree-l1"><a class="reference external" href="reference/celery.bin.celeryd.html">Celery Worker Daemon - celery.bin.celeryd</a></li>
+</ul>
+</div>
+<div class="section" id="indices-and-tables">
+<h1>Indices and tables<a class="headerlink" href="#indices-and-tables" title="Permalink to this headline">¶</a></h1>
+<ul class="simple">
+<li><a class="reference external" href="genindex.html"><em>Index</em></a></li>
+<li><a class="reference external" href="modindex.html"><em>Module Index</em></a></li>
+<li><a class="reference external" href="search.html"><em>Search Page</em></a></li>
+</ul>
+</div>
 
-<body>
-  <a href="http://github.com/ask/celery"><img style="position: absolute; top: 0; right: 0; border: 0;" src="http://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub" /></a>
-  
-  <div id="container">
 
-    <div class="download">
-      <a href="http://github.com/ask/celery/zipball/master">
-        <img border="0" width="90" src="http://github.com/images/modules/download/zip.png"></a>
-      <a href="http://github.com/ask/celery/tarball/master">
-        <img border="0" width="90" src="http://github.com/images/modules/download/tar.png"></a>
-    </div>
-      
-    <h1><a href="http://github.com/ask/celery">celery</a> 
-      <span class="small">by <a href="http://github.com/ask">ask</a></span></h1>
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h3><a href="">Table Of Contents</a></h3>
+            <ul>
+<li><a class="reference external" href="">Welcome to Celery&#8217;s documentation!</a><ul>
+</ul>
+</li>
+<li><a class="reference external" href="#indices-and-tables">Indices and tables</a></li>
+</ul>
 
-    <div class="description">
-      Distributed Task Queue for Django
+            <h4>Next topic</h4>
+            <p class="topless"><a href="reference/celery.task.html"
+                                  title="next chapter">Tasks - celery.task</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="sources/index.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="reference/celery.task.html" title="Tasks - celery.task"
+             >next</a> |</li>
+        <li><a href="">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
     </div>
-
-    <h2>Authors</h2>
-<p>Ask Solem (askh@opera.com)
<br/>
<br/>      </p>
-<h2>Contact</h2>
-<p>Ask Solem Hoel (ask@0x61736b.net)
<br/>      </p>
-
-
-    <h2>Download</h2>
-    <p>
-      You can download this project in either
-      <a href="http://github.com/ask/celery/zipball/master">zip</a> or
-      <a href="http://github.com/ask/celery/tarball/master">tar</a> formats.
-    </p>
-    <p>You can also clone the project with <a href="http://git-scm.com">Git</a>
-      by running:
-      <pre>$ git clone git://github.com/ask/celery</pre>
-    </p>
-      
     <div class="footer">
-      get the source code on GitHub : <a href="http://github.com/ask/celery">ask/celery</a>
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
     </div>
-    
-  </div>
-
-  
-</body>
-</html>
+  </body>
+</html>

+ 164 - 0
modindex.html

@@ -0,0 +1,164 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Global Module Index &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="static/default.css" type="text/css" />
+    <link rel="stylesheet" href="static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="static/jquery.js"></script>
+    <script type="text/javascript" src="static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="index.html" />
+ 
+
+
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li><a href="index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+
+   <h1 id="global-module-index">Global Module Index</h1>
+   <a href="#cap-C"><strong>C</strong></a> 
+   <hr/>
+
+   <table width="100%" class="indextable" cellspacing="0" cellpadding="2"><tr class="pcap"><td></td><td>&nbsp;</td><td></td></tr>
+   <tr class="cap"><td></td><td><a name="cap-C"><strong>C</strong></a></td><td></td></tr><tr>
+     <td><img src="static/minus.png" id="toggle-1"
+            class="toggler" style="display: none" alt="-" /></td>
+     <td>
+     <tt class="xref">celery</tt></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.backends.html#module-celery.backends"><tt class="xref">celery.backends</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.backends.base.html#module-celery.backends.base"><tt class="xref">celery.backends.base</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.backends.cache.html#module-celery.backends.cache"><tt class="xref">celery.backends.cache</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.backends.database.html#module-celery.backends.database"><tt class="xref">celery.backends.database</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.backends.tyrant.html#module-celery.backends.tyrant"><tt class="xref">celery.backends.tyrant</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.conf.html#module-celery.conf"><tt class="xref">celery.conf</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.discovery.html#module-celery.discovery"><tt class="xref">celery.discovery</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.log.html#module-celery.log"><tt class="xref">celery.log</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.managers.html#module-celery.managers"><tt class="xref">celery.managers</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.messaging.html#module-celery.messaging"><tt class="xref">celery.messaging</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.platform.html#module-celery.platform"><tt class="xref">celery.platform</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.registry.html#module-celery.registry"><tt class="xref">celery.registry</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.result.html#module-celery.result"><tt class="xref">celery.result</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.task.html#module-celery.task"><tt class="xref">celery.task</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.timer.html#module-celery.timer"><tt class="xref">celery.timer</tt></a></td><td>
+     <em></em></td></tr><tr class="cg-1">
+     <td></td>
+     <td>&nbsp;&nbsp;&nbsp;
+     <a href="reference/celery.worker.html#module-celery.worker"><tt class="xref">celery.worker</tt></a></td><td>
+     <em></em></td></tr>
+   </table>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="" title="Global Module Index"
+             >modules</a> |</li>
+        <li><a href="index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 171 - 0
objects.inv

@@ -0,0 +1,171 @@
+# Sphinx inventory version 1
+# Project: Celery
+# Version: 0.1
+celery.backends mod reference/celery.backends.html
+celery.task mod reference/celery.task.html
+celery.worker mod reference/celery.worker.html
+celery.backends.cache mod reference/celery.backends.cache.html
+celery.managers mod reference/celery.managers.html
+celery.backends.base mod reference/celery.backends.base.html
+celery.messaging mod reference/celery.messaging.html
+celery.conf mod reference/celery.conf.html
+celery.registry mod reference/celery.registry.html
+celery.log mod reference/celery.log.html
+celery.platform mod reference/celery.platform.html
+celery.backends.database mod reference/celery.backends.database.html
+celery.result mod reference/celery.result.html
+celery.discovery mod reference/celery.discovery.html
+celery.timer mod reference/celery.timer.html
+celery.backends.tyrant mod reference/celery.backends.tyrant.html
+celery.log.emergency_error function reference/celery.log.html
+celery.backends.base.BaseBackend.get_result method reference/celery.backends.base.html
+celery.task.dmap function reference/celery.task.html
+celery.messaging.NoProcessConsumer class reference/celery.messaging.html
+celery.task.mark_as_done function reference/celery.task.html
+celery.result.BaseAsyncResult.is_done method reference/celery.result.html
+celery.worker.TaskWrapper.execute method reference/celery.worker.html
+celery.backends.base.BaseBackend.mark_as_done method reference/celery.backends.base.html
+celery.task.delay_task function reference/celery.task.html
+celery.registry.AlreadyRegistered exception reference/celery.registry.html
+TASK_STATUS_FAILURE data reference/celery.models.html
+celery.worker.TaskWrapper class reference/celery.worker.html
+celery.discovery.find_related_module function reference/celery.discovery.html
+celery.backends.tyrant.TT_PORT data reference/celery.backends.tyrant.html
+celery.result.BaseAsyncResult.ready method reference/celery.result.html
+celery.worker.EmptyQueue exception reference/celery.worker.html
+celery.registry.TaskRegistry.AlreadyRegistered exception reference/celery.registry.html
+celery.managers.TaskManager.delete_expired method reference/celery.managers.html
+celery.registry.TaskRegistry.filter_types method reference/celery.registry.html
+celery.conf.AMQP_CONSUMER_QUEUE data reference/celery.conf.html
+celery.task.DeleteExpiredTaskMetaTask class reference/celery.task.html
+celery.managers.TaskManager.get_all_expired method reference/celery.managers.html
+TaskMeta.task_id attribute reference/celery.models.html
+celery.platform.PIDFile.get_pid method reference/celery.platform.html
+celery.worker.TaskDaemon class reference/celery.worker.html
+celery.backends.get_default_backend_cls function reference/celery.backends.html
+celery.backends.tyrant.Backend.get_result method reference/celery.backends.tyrant.html
+celery.task.TaskSet class reference/celery.task.html
+celery.task.AsynchronousMapTask class reference/celery.task.html
+celery.managers.PeriodicTaskManager class reference/celery.managers.html
+TaskMeta class reference/celery.models.html
+celery.worker.TaskWrapper.from_message classmethod reference/celery.worker.html
+celery.timer.TimeoutError exception reference/celery.timer.html
+celery.result.BaseAsyncResult class reference/celery.result.html
+celery.platform.PIDFile.check method reference/celery.platform.html
+TASK_STATUS_RETRY data reference/celery.models.html
+celery.backends.database.Backend.store_result method reference/celery.backends.database.html
+celery.task.TaskSet.map_async classmethod reference/celery.task.html
+celery.platform.PIDFile.remove method reference/celery.platform.html
+PeriodicTaskMeta.task attribute reference/celery.models.html
+celery.log.setup_logger function reference/celery.log.html
+celery.backends.base.BaseBackend.wait_for method reference/celery.backends.base.html
+celery.result.AsyncResult class reference/celery.result.html
+celery.registry.TaskRegistry.get_all_periodic method reference/celery.registry.html
+celery.worker.TaskWrapper.extend_kwargs_with_logging method reference/celery.worker.html
+PeriodicTaskMeta.last_run_at attribute reference/celery.models.html
+celery.task.Task.get_publisher method reference/celery.task.html
+celery.worker.TaskDaemon.run method reference/celery.worker.html
+celery.backends.tyrant.TT_HOST data reference/celery.backends.tyrant.html
+celery.backends.base.BaseBackend.cleanup method reference/celery.backends.base.html
+celery.task.discard_all function reference/celery.task.html
+celery.backends.database.Backend.get_status method reference/celery.backends.database.html
+PeriodicTaskMeta class reference/celery.models.html
+celery.messaging.TaskPublisher.requeue_task method reference/celery.messaging.html
+celery.messaging.TaskPublisher class reference/celery.messaging.html
+celery.backends.base.BaseBackend class reference/celery.backends.base.html
+celery.backends.base.BaseBackend.mark_as_failure method reference/celery.backends.base.html
+celery.backends.tyrant.Backend.get_status method reference/celery.backends.tyrant.html
+celery.registry.TaskRegistry.NotRegistered exception reference/celery.registry.html
+celery.backends.base.BaseBackend.prepare_result method reference/celery.backends.base.html
+celery.task.execute_remote function reference/celery.task.html
+celery.task.ExecuteRemoteTask class reference/celery.task.html
+celery.task.dmap_async function reference/celery.task.html
+celery.managers.TaskManager class reference/celery.managers.html
+celery.backends.base.BaseBackend.store_result method reference/celery.backends.base.html
+celery.worker.jail function reference/celery.worker.html
+celery.result.BaseAsyncResult.successful method reference/celery.result.html
+celery.conf.LOG_FORMAT data reference/celery.conf.html
+TASK_STATUSES data reference/celery.models.html
+celery.managers.TaskManager.get_task method reference/celery.managers.html
+celery.conf.AMQP_EXCHANGE data reference/celery.conf.html
+celery.registry.tasks data reference/celery.registry.html
+celery.conf.AMQP_ROUTING_KEY data reference/celery.conf.html
+celery.backends.database.Backend.cleanup method reference/celery.backends.database.html
+celery.conf.DAEMON_LOG_LEVEL data reference/celery.conf.html
+celery.backends.database.Backend class reference/celery.backends.database.html
+celery.result.BaseAsyncResult.status attribute reference/celery.result.html
+celery.conf.QUEUE_WAKEUP_AFTER data reference/celery.conf.html
+celery.backends.database.Backend.get_result method reference/celery.backends.database.html
+celery.backends.get_backend_cls function reference/celery.backends.html
+celery.registry.TaskRegistry.register method reference/celery.registry.html
+celery.worker.TaskDaemon.schedule_retry_tasks method reference/celery.worker.html
+celery.worker.UnknownTask exception reference/celery.worker.html
+celery.task.TaskSet.map classmethod reference/celery.task.html
+celery.backends.cache.Backend.get_result method reference/celery.backends.cache.html
+celery.task.Task.get_logger method reference/celery.task.html
+celery.conf.DAEMON_LOG_FILE data reference/celery.conf.html
+celery.task.PeriodicTask class reference/celery.task.html
+celery.registry.TaskRegistry.unregister method reference/celery.registry.html
+celery.task.TaskSet.remote_execute classmethod reference/celery.task.html
+TaskMeta.date_done attribute reference/celery.models.html
+PeriodicTaskMeta.name attribute reference/celery.models.html
+celery.task.mark_as_failure function reference/celery.task.html
+celery.worker.TaskWrapper.execute_using_pool method reference/celery.worker.html
+celery.backends.base.BaseBackend.is_done method reference/celery.backends.base.html
+celery.backends.tyrant.Backend.is_done method reference/celery.backends.tyrant.html
+celery.backends.cache.Backend.is_done method reference/celery.backends.cache.html
+celery.task.Task.get_consumer method reference/celery.task.html
+celery.messaging.TaskPublisher.delay_task_in_set method reference/celery.messaging.html
+celery.registry.TaskRegistry.get_task method reference/celery.registry.html
+celery.platform.PIDFile.write method reference/celery.platform.html
+celery.platform.remove_pidfile function reference/celery.platform.html
+celery.platform.PIDFile class reference/celery.platform.html
+celery.managers.PeriodicTaskManager.get_waiting_tasks method reference/celery.managers.html
+celery.messaging.TaskPublisher.delay_task method reference/celery.messaging.html
+celery.task.TaskSet.join method reference/celery.task.html
+celery.registry.TaskRegistry.get_all_regular method reference/celery.registry.html
+celery.registry.TaskRegistry class reference/celery.registry.html
+celery.backends.DefaultBackend class reference/celery.backends.html
+PeriodicTaskMeta.total_run_count attribute reference/celery.models.html
+celery.timer.TimeoutTimer class reference/celery.timer.html
+celery.task.Task.run method reference/celery.task.html
+celery.result.BaseAsyncResult.wait method reference/celery.result.html
+celery.task.TaskSet.run method reference/celery.task.html
+PeriodicTaskMeta.delay method reference/celery.models.html
+celery.worker.TaskDaemon.run_periodic_tasks method reference/celery.worker.html
+celery.result.BaseAsyncResult.result attribute reference/celery.result.html
+celery.backends.cache.Backend.store_result method reference/celery.backends.cache.html
+TaskMeta.status attribute reference/celery.models.html
+celery.backends.database.Backend.is_done method reference/celery.backends.database.html
+celery.backends.tyrant.Backend class reference/celery.backends.tyrant.html
+TASK_STATUSES_CHOICES data reference/celery.models.html
+celery.backends.base.BaseBackend.mark_as_retry method reference/celery.backends.base.html
+TASK_STATUS_DONE data reference/celery.models.html
+celery.backends.cache.Backend class reference/celery.backends.cache.html
+celery.task.is_done function reference/celery.task.html
+celery.conf.LOG_LEVELS data reference/celery.conf.html
+celery.managers.TaskManager.is_done method reference/celery.managers.html
+celery.timer.EventTimer.tick method reference/celery.timer.html
+celery.task.Task.delay classmethod reference/celery.task.html
+celery.backends.cache.Backend.get_status method reference/celery.backends.cache.html
+celery.conf.EMPTY_MSG_EMIT_EVERY data reference/celery.conf.html
+celery.registry.NotRegistered exception reference/celery.registry.html
+celery.conf.DAEMON_CONCURRENCY data reference/celery.conf.html
+celery.registry.TaskRegistry.get_all method reference/celery.registry.html
+celery.backends.tyrant.Backend.store_result method reference/celery.backends.tyrant.html
+celery.timer.TimeoutTimer.tick method reference/celery.timer.html
+TASK_STATUS_PENDING data reference/celery.models.html
+celery.result.BaseAsyncResult.get method reference/celery.result.html
+celery.conf.DAEMON_PID_FILE data reference/celery.conf.html
+celery.task.Task class reference/celery.task.html
+celery.backends.base.BaseBackend.get_status method reference/celery.backends.base.html
+celery.registry.TaskRegistry.autodiscover method reference/celery.registry.html
+celery.backends.default_backend data reference/celery.backends.html
+celery.task.TaskSet.iterate method reference/celery.task.html
+celery.discovery.autodiscover function reference/celery.discovery.html
+celery.task.ExecuteRemoteTask.run method reference/celery.task.html
+celery.timer.EventTimer class reference/celery.timer.html
+celery.messaging.TaskConsumer class reference/celery.messaging.html
+celery.platform.daemonize function reference/celery.platform.html
+celery.managers.TaskManager.store_result method reference/celery.managers.html
+TaskMeta.result attribute reference/celery.models.html

+ 177 - 0
reference/celery.backends.base.html

@@ -0,0 +1,177 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Backend: Base - celery.backends.base &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Backend: Database - celery.backends.database" href="celery.backends.database.html" />
+    <link rel="prev" title="Backends - celery.backends" href="celery.backends.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.database.html" title="Backend: Database - celery.backends.database"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.html" title="Backends - celery.backends"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.backends.base">
+<h1>Backend: Base - celery.backends.base<a class="headerlink" href="#module-celery.backends.base" title="Permalink to this headline">¶</a></h1>
+<p>celery.backends.base</p>
+<dl class="class">
+<dt id="celery.backends.base.BaseBackend">
+<em class="property">
+class </em><tt class="descclassname">celery.backends.base.</tt><tt class="descname">BaseBackend</tt><a class="headerlink" href="#celery.backends.base.BaseBackend" title="Permalink to this definition">¶</a></dt>
+<dd><p>The base backend class. All backends should inherit from this.</p>
+<dl class="method">
+<dt id="celery.backends.base.BaseBackend.cleanup">
+<tt class="descname">cleanup</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.backends.base.BaseBackend.cleanup" title="Permalink to this definition">¶</a></dt>
+<dd>Backend cleanup. Is run by
+<a title="celery.task.DeleteExpiredTaskMetaTask" class="reference external" href="celery.task.html#celery.task.DeleteExpiredTaskMetaTask"><tt class="xref docutils literal"><span class="pre">celery.task.DeleteExpiredTaskMetaTask</span></tt></a>.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.base.BaseBackend.get_result">
+<tt class="descname">get_result</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.backends.base.BaseBackend.get_result" title="Permalink to this definition">¶</a></dt>
+<dd>Get the result of a task.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.base.BaseBackend.get_status">
+<tt class="descname">get_status</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.backends.base.BaseBackend.get_status" title="Permalink to this definition">¶</a></dt>
+<dd>Get the status of a task.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.base.BaseBackend.is_done">
+<tt class="descname">is_done</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.backends.base.BaseBackend.is_done" title="Permalink to this definition">¶</a></dt>
+<dd>Returns <tt class="xref docutils literal"><span class="pre">True</span></tt> if the task was successfully executed.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.base.BaseBackend.mark_as_done">
+<tt class="descname">mark_as_done</tt><big>(</big><em>task_id</em>, <em>result</em><big>)</big><a class="headerlink" href="#celery.backends.base.BaseBackend.mark_as_done" title="Permalink to this definition">¶</a></dt>
+<dd>Mark task as successfully executed.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.base.BaseBackend.mark_as_failure">
+<tt class="descname">mark_as_failure</tt><big>(</big><em>task_id</em>, <em>exc</em><big>)</big><a class="headerlink" href="#celery.backends.base.BaseBackend.mark_as_failure" title="Permalink to this definition">¶</a></dt>
+<dd>Mark task as executed with failure. Stores the execption.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.base.BaseBackend.mark_as_retry">
+<tt class="descname">mark_as_retry</tt><big>(</big><em>task_id</em>, <em>exc</em><big>)</big><a class="headerlink" href="#celery.backends.base.BaseBackend.mark_as_retry" title="Permalink to this definition">¶</a></dt>
+<dd>Mark task for retry.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.base.BaseBackend.prepare_result">
+<tt class="descname">prepare_result</tt><big>(</big><em>result</em><big>)</big><a class="headerlink" href="#celery.backends.base.BaseBackend.prepare_result" title="Permalink to this definition">¶</a></dt>
+<dd>Prepare result for storage.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.base.BaseBackend.store_result">
+<tt class="descname">store_result</tt><big>(</big><em>task_id</em>, <em>result</em>, <em>status</em><big>)</big><a class="headerlink" href="#celery.backends.base.BaseBackend.store_result" title="Permalink to this definition">¶</a></dt>
+<dd>Store the result and status of a task.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.base.BaseBackend.wait_for">
+<tt class="descname">wait_for</tt><big>(</big><em>task_id</em>, <em>timeout=None</em><big>)</big><a class="headerlink" href="#celery.backends.base.BaseBackend.wait_for" title="Permalink to this definition">¶</a></dt>
+<dd><p>Wait for task and return its result.</p>
+<p>If the task raises an exception, this exception
+will be re-raised by <tt class="docutils literal"><span class="pre">wait_for</span></tt>.</p>
+<p>If <tt class="docutils literal"><span class="pre">timeout</span></tt> is not <tt class="xref docutils literal"><span class="pre">None</span></tt>, this raises
+<tt class="docutils literal"><span class="pre">celery.timer.TimeoutError</span></tt> if the operation takes longer than
+<tt class="docutils literal"><span class="pre">timeout</span></tt> seconds.</p>
+</dd></dl>
+
+</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.backends.html"
+                                  title="previous chapter">Backends - celery.backends</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.backends.database.html"
+                                  title="next chapter">Backend: Database - celery.backends.database</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.backends.base.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.database.html" title="Backend: Database - celery.backends.database"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.html" title="Backends - celery.backends"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 140 - 0
reference/celery.backends.cache.html

@@ -0,0 +1,140 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Backend: Cache - celery.backends.cache &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Backend: Tokyo Tyrant - celery.backends.tyrant" href="celery.backends.tyrant.html" />
+    <link rel="prev" title="Backend: Database - celery.backends.database" href="celery.backends.database.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.tyrant.html" title="Backend: Tokyo Tyrant - celery.backends.tyrant"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.database.html" title="Backend: Database - celery.backends.database"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.backends.cache">
+<h1>Backend: Cache - celery.backends.cache<a class="headerlink" href="#module-celery.backends.cache" title="Permalink to this headline">¶</a></h1>
+<p>celery.backends.cache</p>
+<dl class="class">
+<dt id="celery.backends.cache.Backend">
+<em class="property">
+class </em><tt class="descclassname">celery.backends.cache.</tt><tt class="descname">Backend</tt><big>(</big><em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#celery.backends.cache.Backend" title="Permalink to this definition">¶</a></dt>
+<dd><p>Backend using the Django cache framework to store task metadata.</p>
+<dl class="method">
+<dt id="celery.backends.cache.Backend.get_result">
+<tt class="descname">get_result</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.backends.cache.Backend.get_result" title="Permalink to this definition">¶</a></dt>
+<dd>Get the result of a task.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.cache.Backend.get_status">
+<tt class="descname">get_status</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.backends.cache.Backend.get_status" title="Permalink to this definition">¶</a></dt>
+<dd>Get the status of a task.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.cache.Backend.is_done">
+<tt class="descname">is_done</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.backends.cache.Backend.is_done" title="Permalink to this definition">¶</a></dt>
+<dd>Returns <tt class="xref docutils literal"><span class="pre">True</span></tt> if the task has been executed successfully.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.cache.Backend.store_result">
+<tt class="descname">store_result</tt><big>(</big><em>task_id</em>, <em>result</em>, <em>status</em><big>)</big><a class="headerlink" href="#celery.backends.cache.Backend.store_result" title="Permalink to this definition">¶</a></dt>
+<dd>Store task result and status.</dd></dl>
+
+</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.backends.database.html"
+                                  title="previous chapter">Backend: Database - celery.backends.database</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.backends.tyrant.html"
+                                  title="next chapter">Backend: Tokyo Tyrant - celery.backends.tyrant</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.backends.cache.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.tyrant.html" title="Backend: Tokyo Tyrant - celery.backends.tyrant"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.database.html" title="Backend: Database - celery.backends.database"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 145 - 0
reference/celery.backends.database.html

@@ -0,0 +1,145 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Backend: Database - celery.backends.database &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Backend: Cache - celery.backends.cache" href="celery.backends.cache.html" />
+    <link rel="prev" title="Backend: Base - celery.backends.base" href="celery.backends.base.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.cache.html" title="Backend: Cache - celery.backends.cache"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.base.html" title="Backend: Base - celery.backends.base"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.backends.database">
+<h1>Backend: Database - celery.backends.database<a class="headerlink" href="#module-celery.backends.database" title="Permalink to this headline">¶</a></h1>
+<p>celery.backends.database</p>
+<dl class="class">
+<dt id="celery.backends.database.Backend">
+<em class="property">
+class </em><tt class="descclassname">celery.backends.database.</tt><tt class="descname">Backend</tt><big>(</big><em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#celery.backends.database.Backend" title="Permalink to this definition">¶</a></dt>
+<dd><p>The database backends. Using Django models to store task metadata.</p>
+<dl class="method">
+<dt id="celery.backends.database.Backend.cleanup">
+<tt class="descname">cleanup</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.backends.database.Backend.cleanup" title="Permalink to this definition">¶</a></dt>
+<dd>Delete expired metadata.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.database.Backend.get_result">
+<tt class="descname">get_result</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.backends.database.Backend.get_result" title="Permalink to this definition">¶</a></dt>
+<dd>Get the result for a task.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.database.Backend.get_status">
+<tt class="descname">get_status</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.backends.database.Backend.get_status" title="Permalink to this definition">¶</a></dt>
+<dd>Get the status of a task.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.database.Backend.is_done">
+<tt class="descname">is_done</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.backends.database.Backend.is_done" title="Permalink to this definition">¶</a></dt>
+<dd>Returns <tt class="xref docutils literal"><span class="pre">True</span></tt> if task with <tt class="docutils literal"><span class="pre">task_id</span></tt> has been executed.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.database.Backend.store_result">
+<tt class="descname">store_result</tt><big>(</big><em>task_id</em>, <em>result</em>, <em>status</em><big>)</big><a class="headerlink" href="#celery.backends.database.Backend.store_result" title="Permalink to this definition">¶</a></dt>
+<dd>Mark task as done (executed).</dd></dl>
+
+</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.backends.base.html"
+                                  title="previous chapter">Backend: Base - celery.backends.base</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.backends.cache.html"
+                                  title="next chapter">Backend: Cache - celery.backends.cache</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.backends.database.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.cache.html" title="Backend: Cache - celery.backends.cache"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.base.html" title="Backend: Base - celery.backends.base"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 138 - 0
reference/celery.backends.html

@@ -0,0 +1,138 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Backends - celery.backends &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Backend: Base - celery.backends.base" href="celery.backends.base.html" />
+    <link rel="prev" title="Multiprocessing Worker - celery.worker" href="celery.worker.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.base.html" title="Backend: Base - celery.backends.base"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.worker.html" title="Multiprocessing Worker - celery.worker"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.backends">
+<h1>Backends - celery.backends<a class="headerlink" href="#module-celery.backends" title="Permalink to this headline">¶</a></h1>
+<p>celery.backends</p>
+<dl class="function">
+<dt id="celery.backends.get_backend_cls">
+<tt class="descclassname">celery.backends.</tt><tt class="descname">get_backend_cls</tt><big>(</big><em>backend</em><big>)</big><a class="headerlink" href="#celery.backends.get_backend_cls" title="Permalink to this definition">¶</a></dt>
+<dd><p>Get backend class by name.</p>
+<p>If the name does not include <tt class="docutils literal"><span class="pre">.</span></tt> (is not fully qualified),
+<tt class="docutils literal"><span class="pre">celery.backends.</span></tt> will be prepended to the name. e.g.
+<tt class="docutils literal"><span class="pre">database</span></tt> becomes <tt class="docutils literal"><span class="pre">celery.backends.database</span></tt>.</p>
+</dd></dl>
+
+<dl class="function">
+<dt id="celery.backends.get_default_backend_cls">
+<tt class="descclassname">celery.backends.</tt><tt class="descname">get_default_backend_cls</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.backends.get_default_backend_cls" title="Permalink to this definition">¶</a></dt>
+<dd>Get the backend class specified in <tt class="docutils literal"><span class="pre">settings.CELERY_BACKEND</span></tt>.</dd></dl>
+
+<dl class="class">
+<dt id="celery.backends.DefaultBackend">
+<em class="property">
+class </em><tt class="descclassname">celery.backends.</tt><tt class="descname">DefaultBackend</tt><a class="headerlink" href="#celery.backends.DefaultBackend" title="Permalink to this definition">¶</a></dt>
+<dd>The backend class specified in <tt class="docutils literal"><span class="pre">settings.CELERY_BACKEND</span></tt>.</dd></dl>
+
+<dl class="data">
+<dt id="celery.backends.default_backend">
+<tt class="descclassname">celery.backends.</tt><tt class="descname">default_backend</tt><a class="headerlink" href="#celery.backends.default_backend" title="Permalink to this definition">¶</a></dt>
+<dd>An instance of <a title="celery.backends.DefaultBackend" class="reference internal" href="#celery.backends.DefaultBackend"><tt class="xref docutils literal"><span class="pre">DefaultBackend</span></tt></a>.</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.worker.html"
+                                  title="previous chapter">Multiprocessing Worker - celery.worker</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.backends.base.html"
+                                  title="next chapter">Backend: Base - celery.backends.base</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.backends.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.base.html" title="Backend: Base - celery.backends.base"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.worker.html" title="Multiprocessing Worker - celery.worker"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 154 - 0
reference/celery.backends.tyrant.html

@@ -0,0 +1,154 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Backend: Tokyo Tyrant - celery.backends.tyrant &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Configuration - celery.conf" href="celery.conf.html" />
+    <link rel="prev" title="Backend: Cache - celery.backends.cache" href="celery.backends.cache.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.conf.html" title="Configuration - celery.conf"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.cache.html" title="Backend: Cache - celery.backends.cache"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.backends.tyrant">
+<h1>Backend: Tokyo Tyrant - celery.backends.tyrant<a class="headerlink" href="#module-celery.backends.tyrant" title="Permalink to this headline">¶</a></h1>
+<dl class="data">
+<dt id="celery.backends.tyrant.TT_HOST">
+<tt class="descclassname">celery.backends.tyrant.</tt><tt class="descname">TT_HOST</tt><a class="headerlink" href="#celery.backends.tyrant.TT_HOST" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The hostname for the Tokyo Tyrant server. Taken from Django settings.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="celery.backends.tyrant.TT_PORT">
+<tt class="descclassname">celery.backends.tyrant.</tt><tt class="descname">TT_PORT</tt><a class="headerlink" href="#celery.backends.tyrant.TT_PORT" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The port for the Tokyo Tyrant server. Taken from Django settings.</tt></dt>
+<dd></dd></dl>
+
+<p>celery.backends.tyrant</p>
+<dl class="class">
+<dt id="celery.backends.tyrant.Backend">
+<em class="property">
+class </em><tt class="descclassname">celery.backends.tyrant.</tt><tt class="descname">Backend</tt><big>(</big><em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#celery.backends.tyrant.Backend" title="Permalink to this definition">¶</a></dt>
+<dd><p>Tokyo Cabinet based task backend store.</p>
+<dl class="method">
+<dt id="celery.backends.tyrant.Backend.get_result">
+<tt class="descname">get_result</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.backends.tyrant.Backend.get_result" title="Permalink to this definition">¶</a></dt>
+<dd>Get the result of a task.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.tyrant.Backend.get_status">
+<tt class="descname">get_status</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.backends.tyrant.Backend.get_status" title="Permalink to this definition">¶</a></dt>
+<dd>Get the status for a task.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.tyrant.Backend.is_done">
+<tt class="descname">is_done</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.backends.tyrant.Backend.is_done" title="Permalink to this definition">¶</a></dt>
+<dd>Returns <tt class="xref docutils literal"><span class="pre">True</span></tt> if the task executed successfully.</dd></dl>
+
+<dl class="method">
+<dt id="celery.backends.tyrant.Backend.store_result">
+<tt class="descname">store_result</tt><big>(</big><em>task_id</em>, <em>result</em>, <em>status</em><big>)</big><a class="headerlink" href="#celery.backends.tyrant.Backend.store_result" title="Permalink to this definition">¶</a></dt>
+<dd>Store task result and status.</dd></dl>
+
+</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.backends.cache.html"
+                                  title="previous chapter">Backend: Cache - celery.backends.cache</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.conf.html"
+                                  title="next chapter">Configuration - celery.conf</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.backends.tyrant.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.conf.html" title="Configuration - celery.conf"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.cache.html" title="Backend: Cache - celery.backends.cache"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 102 - 0
reference/celery.bin.celeryd.html

@@ -0,0 +1,102 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Celery Worker Daemon - celery.bin.celeryd &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="prev" title="Timers - celery.timer" href="celery.timer.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.timer.html" title="Timers - celery.timer"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="celery-worker-daemon-celery-bin-celeryd">
+<h1>Celery Worker Daemon - celery.bin.celeryd<a class="headerlink" href="#celery-worker-daemon-celery-bin-celeryd" title="Permalink to this headline">¶</a></h1>
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.timer.html"
+                                  title="previous chapter">Timers - celery.timer</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.bin.celeryd.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.timer.html" title="Timers - celery.timer"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 202 - 0
reference/celery.conf.html

@@ -0,0 +1,202 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Configuration - celery.conf &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Datastructures - celery.datastructures" href="celery.datastructures.html" />
+    <link rel="prev" title="Backend: Tokyo Tyrant - celery.backends.tyrant" href="celery.backends.tyrant.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.datastructures.html" title="Datastructures - celery.datastructures"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.tyrant.html" title="Backend: Tokyo Tyrant - celery.backends.tyrant"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.conf">
+<h1>Configuration - celery.conf<a class="headerlink" href="#module-celery.conf" title="Permalink to this headline">¶</a></h1>
+<p>celery.conf</p>
+<dl class="data">
+<dt id="celery.conf.AMQP_EXCHANGE">
+<tt class="descclassname">celery.conf.</tt><tt class="descname">AMQP_EXCHANGE</tt><a class="headerlink" href="#celery.conf.AMQP_EXCHANGE" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The AMQP exchange.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="celery.conf.AMQP_ROUTING_KEY">
+<tt class="descclassname">celery.conf.</tt><tt class="descname">AMQP_ROUTING_KEY</tt><a class="headerlink" href="#celery.conf.AMQP_ROUTING_KEY" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The AMQP routing key.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="celery.conf.AMQP_CONSUMER_QUEUE">
+<tt class="descclassname">celery.conf.</tt><tt class="descname">AMQP_CONSUMER_QUEUE</tt><a class="headerlink" href="#celery.conf.AMQP_CONSUMER_QUEUE" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The name of the AMQP queue.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="celery.conf.DAEMON_CONCURRENCY">
+<tt class="descclassname">celery.conf.</tt><tt class="descname">DAEMON_CONCURRENCY</tt><a class="headerlink" href="#celery.conf.DAEMON_CONCURRENCY" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The number of worker processes, that should work simultaenously.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="celery.conf.DAEMON_PID_FILE">
+<tt class="descclassname">celery.conf.</tt><tt class="descname">DAEMON_PID_FILE</tt><a class="headerlink" href="#celery.conf.DAEMON_PID_FILE" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">Full path to the daemon pid file.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="celery.conf.EMPTY_MSG_EMIT_EVERY">
+<tt class="descclassname">celery.conf.</tt><tt class="descname">EMPTY_MSG_EMIT_EVERY</tt><a class="headerlink" href="#celery.conf.EMPTY_MSG_EMIT_EVERY" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">How often the celery daemon should write a log message saying there are no</tt></dt>
+<dt>
+<tt class="descname">messages in the queue. If this is ``None`` or ``0``, it will never print</tt></dt>
+<dt>
+<tt class="descname">this message.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="celery.conf.QUEUE_WAKEUP_AFTER">
+<tt class="descclassname">celery.conf.</tt><tt class="descname">QUEUE_WAKEUP_AFTER</tt><a class="headerlink" href="#celery.conf.QUEUE_WAKEUP_AFTER" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The time (in seconds) the celery daemon should sleep when there are no messages</tt></dt>
+<dt>
+<tt class="descname">left on the queue. After the time is slept, the worker wakes up and</tt></dt>
+<dt>
+<tt class="descname">checks the queue again.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="celery.conf.DAEMON_LOG_LEVEL">
+<tt class="descclassname">celery.conf.</tt><tt class="descname">DAEMON_LOG_LEVEL</tt><a class="headerlink" href="#celery.conf.DAEMON_LOG_LEVEL" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">Celery daemon log level, could be any of ``DEBUG``, ``INFO``, ``WARNING``,</tt></dt>
+<dt>
+<tt class="descname">``ERROR``, ``CRITICAL``, or ``FATAL``.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="celery.conf.DAEMON_LOG_FILE">
+<tt class="descclassname">celery.conf.</tt><tt class="descname">DAEMON_LOG_FILE</tt><a class="headerlink" href="#celery.conf.DAEMON_LOG_FILE" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The path to the deamon log file (if not set, ``stderr`` is used).</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="celery.conf.LOG_FORMAT">
+<tt class="descclassname">celery.conf.</tt><tt class="descname">LOG_FORMAT</tt><a class="headerlink" href="#celery.conf.LOG_FORMAT" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The format to use for log messages.</tt></dt>
+<dt>
+<tt class="descname">Default is ``[%(asctime)s: %(levelname)s/%(processName)s] %(message)s``</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="celery.conf.LOG_LEVELS">
+<tt class="descclassname">celery.conf.</tt><tt class="descname">LOG_LEVELS</tt><a class="headerlink" href="#celery.conf.LOG_LEVELS" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">Mapping of log level names to ``logging`` module constants.</tt></dt>
+<dd></dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.backends.tyrant.html"
+                                  title="previous chapter">Backend: Tokyo Tyrant - celery.backends.tyrant</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.datastructures.html"
+                                  title="next chapter">Datastructures - celery.datastructures</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.conf.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.datastructures.html" title="Datastructures - celery.datastructures"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.tyrant.html" title="Backend: Tokyo Tyrant - celery.backends.tyrant"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 112 - 0
reference/celery.datastructures.html

@@ -0,0 +1,112 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Datastructures - celery.datastructures &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Logging - celery.log" href="celery.log.html" />
+    <link rel="prev" title="Configuration - celery.conf" href="celery.conf.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.log.html" title="Logging - celery.log"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.conf.html" title="Configuration - celery.conf"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="datastructures-celery-datastructures">
+<h1>Datastructures - celery.datastructures<a class="headerlink" href="#datastructures-celery-datastructures" title="Permalink to this headline">¶</a></h1>
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.conf.html"
+                                  title="previous chapter">Configuration - celery.conf</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.log.html"
+                                  title="next chapter">Logging - celery.log</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.datastructures.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.log.html" title="Logging - celery.log"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.conf.html" title="Configuration - celery.conf"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 124 - 0
reference/celery.discovery.html

@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Task Discovery - celery.discovery &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Multiprocessing Worker - celery.worker" href="celery.worker.html" />
+    <link rel="prev" title="Task Registry - celery.registry" href="celery.registry.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.worker.html" title="Multiprocessing Worker - celery.worker"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.registry.html" title="Task Registry - celery.registry"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.discovery">
+<h1>Task Discovery - celery.discovery<a class="headerlink" href="#module-celery.discovery" title="Permalink to this headline">¶</a></h1>
+<p>celery.discovery</p>
+<dl class="function">
+<dt id="celery.discovery.autodiscover">
+<tt class="descclassname">celery.discovery.</tt><tt class="descname">autodiscover</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.discovery.autodiscover" title="Permalink to this definition">¶</a></dt>
+<dd>Include tasks for all applications in <tt class="xref docutils literal"><span class="pre">INSTALLED_APPS</span></tt>.</dd></dl>
+
+<dl class="function">
+<dt id="celery.discovery.find_related_module">
+<tt class="descclassname">celery.discovery.</tt><tt class="descname">find_related_module</tt><big>(</big><em>app</em>, <em>related_name</em><big>)</big><a class="headerlink" href="#celery.discovery.find_related_module" title="Permalink to this definition">¶</a></dt>
+<dd>Given an application name and a module name, tries to find that
+module in the application, and running handler&#8217; if it finds it.</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.registry.html"
+                                  title="previous chapter">Task Registry - celery.registry</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.worker.html"
+                                  title="next chapter">Multiprocessing Worker - celery.worker</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.discovery.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.worker.html" title="Multiprocessing Worker - celery.worker"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.registry.html" title="Task Registry - celery.registry"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 128 - 0
reference/celery.log.html

@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Logging - celery.log &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Django Model Managers - celery.managers" href="celery.managers.html" />
+    <link rel="prev" title="Datastructures - celery.datastructures" href="celery.datastructures.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.managers.html" title="Django Model Managers - celery.managers"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.datastructures.html" title="Datastructures - celery.datastructures"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.log">
+<h1>Logging - celery.log<a class="headerlink" href="#module-celery.log" title="Permalink to this headline">¶</a></h1>
+<p>celery.log</p>
+<dl class="function">
+<dt id="celery.log.emergency_error">
+<tt class="descclassname">celery.log.</tt><tt class="descname">emergency_error</tt><big>(</big><em>logfile</em>, <em>message</em><big>)</big><a class="headerlink" href="#celery.log.emergency_error" title="Permalink to this definition">¶</a></dt>
+<dd>Emergency error logging, for when there&#8217;s no standard file
+descriptors open because the process has been daemonized or for
+some other reason.</dd></dl>
+
+<dl class="function">
+<dt id="celery.log.setup_logger">
+<tt class="descclassname">celery.log.</tt><tt class="descname">setup_logger</tt><big>(</big><em>loglevel=20</em>, <em>logfile=None</em>, <em>format='</em><span class="optional">[</span>, <em>%(asctime)s: %(levelname)s/%(processName)s</em><span class="optional">]</span>, <em>%(message)s'</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#celery.log.setup_logger" title="Permalink to this definition">¶</a></dt>
+<dd><p>Setup the <tt class="docutils literal"><span class="pre">multiprocessing</span></tt> logger. If <tt class="docutils literal"><span class="pre">logfile</span></tt> is not specified,
+<tt class="docutils literal"><span class="pre">stderr</span></tt> is used.</p>
+<p>Returns logger object.</p>
+</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.datastructures.html"
+                                  title="previous chapter">Datastructures - celery.datastructures</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.managers.html"
+                                  title="next chapter">Django Model Managers - celery.managers</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.log.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.managers.html" title="Django Model Managers - celery.managers"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.datastructures.html" title="Datastructures - celery.datastructures"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 157 - 0
reference/celery.managers.html

@@ -0,0 +1,157 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Django Model Managers - celery.managers &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Django Models - celery.models" href="celery.models.html" />
+    <link rel="prev" title="Logging - celery.log" href="celery.log.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.models.html" title="Django Models - celery.models"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.log.html" title="Logging - celery.log"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.managers">
+<h1>Django Model Managers - celery.managers<a class="headerlink" href="#module-celery.managers" title="Permalink to this headline">¶</a></h1>
+<p>celery.managers</p>
+<dl class="class">
+<dt id="celery.managers.PeriodicTaskManager">
+<em class="property">
+class </em><tt class="descclassname">celery.managers.</tt><tt class="descname">PeriodicTaskManager</tt><a class="headerlink" href="#celery.managers.PeriodicTaskManager" title="Permalink to this definition">¶</a></dt>
+<dd><p>Manager for <tt class="docutils literal"><span class="pre">PeriodicTask</span></tt> models.</p>
+<dl class="method">
+<dt id="celery.managers.PeriodicTaskManager.get_waiting_tasks">
+<tt class="descname">get_waiting_tasks</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.managers.PeriodicTaskManager.get_waiting_tasks" title="Permalink to this definition">¶</a></dt>
+<dd>Get all waiting periodic tasks.</dd></dl>
+
+</dd></dl>
+
+<dl class="class">
+<dt id="celery.managers.TaskManager">
+<em class="property">
+class </em><tt class="descclassname">celery.managers.</tt><tt class="descname">TaskManager</tt><a class="headerlink" href="#celery.managers.TaskManager" title="Permalink to this definition">¶</a></dt>
+<dd><p>Manager for <tt class="docutils literal"><span class="pre">Task</span></tt> models.</p>
+<dl class="method">
+<dt id="celery.managers.TaskManager.delete_expired">
+<tt class="descname">delete_expired</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.managers.TaskManager.delete_expired" title="Permalink to this definition">¶</a></dt>
+<dd>Delete all expired task results.</dd></dl>
+
+<dl class="method">
+<dt id="celery.managers.TaskManager.get_all_expired">
+<tt class="descname">get_all_expired</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.managers.TaskManager.get_all_expired" title="Permalink to this definition">¶</a></dt>
+<dd>Get all expired task results.</dd></dl>
+
+<dl class="method">
+<dt id="celery.managers.TaskManager.get_task">
+<tt class="descname">get_task</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.managers.TaskManager.get_task" title="Permalink to this definition">¶</a></dt>
+<dd>Get task meta for task by <tt class="docutils literal"><span class="pre">task_id</span></tt>.</dd></dl>
+
+<dl class="method">
+<dt id="celery.managers.TaskManager.is_done">
+<tt class="descname">is_done</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.managers.TaskManager.is_done" title="Permalink to this definition">¶</a></dt>
+<dd>Returns <tt class="xref docutils literal"><span class="pre">True</span></tt> if the task was executed successfully.</dd></dl>
+
+<dl class="method">
+<dt id="celery.managers.TaskManager.store_result">
+<tt class="descname">store_result</tt><big>(</big><em>task_id</em>, <em>result</em>, <em>status</em><big>)</big><a class="headerlink" href="#celery.managers.TaskManager.store_result" title="Permalink to this definition">¶</a></dt>
+<dd>Store the result and status of a task.</dd></dl>
+
+</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.log.html"
+                                  title="previous chapter">Logging - celery.log</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.models.html"
+                                  title="next chapter">Django Models - celery.models</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.managers.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.models.html" title="Django Models - celery.models"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.log.html" title="Logging - celery.log"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 148 - 0
reference/celery.messaging.html

@@ -0,0 +1,148 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Messaging - celery.messaging &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Platform Specific - celery.platform" href="celery.platform.html" />
+    <link rel="prev" title="Django Models - celery.models" href="celery.models.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.platform.html" title="Platform Specific - celery.platform"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.models.html" title="Django Models - celery.models"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.messaging">
+<h1>Messaging - celery.messaging<a class="headerlink" href="#module-celery.messaging" title="Permalink to this headline">¶</a></h1>
+<p>celery.messaging</p>
+<dl class="class">
+<dt id="celery.messaging.NoProcessConsumer">
+<em class="property">
+class </em><tt class="descclassname">celery.messaging.</tt><tt class="descname">NoProcessConsumer</tt><big>(</big><em>connection</em>, <em>queue=None</em>, <em>exchange=None</em>, <em>routing_key=None</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#celery.messaging.NoProcessConsumer" title="Permalink to this definition">¶</a></dt>
+<dd>A consumer that raises an error if used with wait callbacks (i.e.
+it doesn&#8217;t support <tt class="docutils literal"><span class="pre">carrot.messaging.Consumer.wait</span></tt>).</dd></dl>
+
+<dl class="class">
+<dt id="celery.messaging.TaskConsumer">
+<em class="property">
+class </em><tt class="descclassname">celery.messaging.</tt><tt class="descname">TaskConsumer</tt><big>(</big><em>connection</em>, <em>queue=None</em>, <em>exchange=None</em>, <em>routing_key=None</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#celery.messaging.TaskConsumer" title="Permalink to this definition">¶</a></dt>
+<dd>The AMQP Task Consumer class.</dd></dl>
+
+<dl class="class">
+<dt id="celery.messaging.TaskPublisher">
+<em class="property">
+class </em><tt class="descclassname">celery.messaging.</tt><tt class="descname">TaskPublisher</tt><big>(</big><em>connection</em>, <em>exchange=None</em>, <em>routing_key=None</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#celery.messaging.TaskPublisher" title="Permalink to this definition">¶</a></dt>
+<dd><p>The AMQP Task Publisher class.</p>
+<dl class="method">
+<dt id="celery.messaging.TaskPublisher.delay_task">
+<tt class="descname">delay_task</tt><big>(</big><em>task_name</em>, <em>*task_args</em>, <em>**task_kwargs</em><big>)</big><a class="headerlink" href="#celery.messaging.TaskPublisher.delay_task" title="Permalink to this definition">¶</a></dt>
+<dd>Delay task for execution by the celery nodes.</dd></dl>
+
+<dl class="method">
+<dt id="celery.messaging.TaskPublisher.delay_task_in_set">
+<tt class="descname">delay_task_in_set</tt><big>(</big><em>task_name</em>, <em>taskset_id</em>, <em>task_args</em>, <em>task_kwargs</em><big>)</big><a class="headerlink" href="#celery.messaging.TaskPublisher.delay_task_in_set" title="Permalink to this definition">¶</a></dt>
+<dd>Delay a task which part of a task set.</dd></dl>
+
+<dl class="method">
+<dt id="celery.messaging.TaskPublisher.requeue_task">
+<tt class="descname">requeue_task</tt><big>(</big><em>task_name</em>, <em>task_id</em>, <em>task_args</em>, <em>task_kwargs</em>, <em>part_of_set=None</em><big>)</big><a class="headerlink" href="#celery.messaging.TaskPublisher.requeue_task" title="Permalink to this definition">¶</a></dt>
+<dd>Requeue a failed task.</dd></dl>
+
+</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.models.html"
+                                  title="previous chapter">Django Models - celery.models</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.platform.html"
+                                  title="next chapter">Platform Specific - celery.platform</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.messaging.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.platform.html" title="Platform Specific - celery.platform"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.models.html" title="Django Models - celery.models"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 242 - 0
reference/celery.models.html

@@ -0,0 +1,242 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Django Models - celery.models &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Messaging - celery.messaging" href="celery.messaging.html" />
+    <link rel="prev" title="Django Model Managers - celery.managers" href="celery.managers.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.messaging.html" title="Messaging - celery.messaging"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.managers.html" title="Django Model Managers - celery.managers"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="django-models-celery-models">
+<h1>Django Models - celery.models<a class="headerlink" href="#django-models-celery-models" title="Permalink to this headline">¶</a></h1>
+<dl class="data">
+<dt id="TASK_STATUS_PENDING">
+<tt class="descname">TASK_STATUS_PENDING</tt><a class="headerlink" href="#TASK_STATUS_PENDING" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The string status of a pending task.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="TASK_STATUS_RETRY">
+<tt class="descname">TASK_STATUS_RETRY</tt><a class="headerlink" href="#TASK_STATUS_RETRY" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The string status of a task which is to be retried.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="TASK_STATUS_FAILURE">
+<tt class="descname">TASK_STATUS_FAILURE</tt><a class="headerlink" href="#TASK_STATUS_FAILURE" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The string status of a failed task.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="TASK_STATUS_DONE">
+<tt class="descname">TASK_STATUS_DONE</tt><a class="headerlink" href="#TASK_STATUS_DONE" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The string status of a task that was successfully executed.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="TASK_STATUSES">
+<tt class="descname">TASK_STATUSES</tt><a class="headerlink" href="#TASK_STATUSES" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">List of possible task statuses.</tt></dt>
+<dd></dd></dl>
+
+<dl class="data">
+<dt id="TASK_STATUSES_CHOICES">
+<tt class="descname">TASK_STATUSES_CHOICES</tt><a class="headerlink" href="#TASK_STATUSES_CHOICES" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">Django choice tuple of possible task statuses, for usage in model/form</tt></dt>
+<dt>
+<tt class="descname">fields ``choices`` argument.</tt></dt>
+<dd></dd></dl>
+
+<dl class="class">
+<dt id="TaskMeta">
+<em class="property">
+class </em><tt class="descname">TaskMeta</tt><a class="headerlink" href="#TaskMeta" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">Model for storing the result and status of a task.</tt></dt>
+<dd><p><em>Note</em> Only used if you&#8217;re running the <tt class="docutils literal"><span class="pre">database</span></tt> backend.</p>
+<dl class="attribute">
+<dt id="TaskMeta.task_id">
+<tt class="descname">task_id</tt><a class="headerlink" href="#TaskMeta.task_id" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The unique task id.</tt></dt>
+<dd></dd></dl>
+
+<dl class="attribute">
+<dt id="TaskMeta.status">
+<tt class="descname">status</tt><a class="headerlink" href="#TaskMeta.status" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The current status for this task.</tt></dt>
+<dd></dd></dl>
+
+<dl class="attribute">
+<dt id="TaskMeta.result">
+<tt class="descname">result</tt><a class="headerlink" href="#TaskMeta.result" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The result after successful/failed execution. If the task failed,</tt></dt>
+<dt>
+<tt class="descname">this contains the execption it raised.</tt></dt>
+<dd></dd></dl>
+
+<dl class="attribute">
+<dt id="TaskMeta.date_done">
+<tt class="descname">date_done</tt><a class="headerlink" href="#TaskMeta.date_done" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The date this task changed status.</tt></dt>
+<dd></dd></dl>
+
+</dd></dl>
+
+<dl class="class">
+<dt id="PeriodicTaskMeta">
+<em class="property">
+class </em><tt class="descname">PeriodicTaskMeta</tt><a class="headerlink" href="#PeriodicTaskMeta" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">Metadata model for periodic tasks.</tt></dt>
+<dd><dl class="attribute">
+<dt id="PeriodicTaskMeta.name">
+<tt class="descname">name</tt><a class="headerlink" href="#PeriodicTaskMeta.name" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The name of this task, as registered in the task registry.</tt></dt>
+<dd></dd></dl>
+
+<dl class="attribute">
+<dt id="PeriodicTaskMeta.last_run_at">
+<tt class="descname">last_run_at</tt><a class="headerlink" href="#PeriodicTaskMeta.last_run_at" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The date this periodic task was last run. Used to find out</tt></dt>
+<dt>
+<tt class="descname">when it should be run next.</tt></dt>
+<dd></dd></dl>
+
+<dl class="attribute">
+<dt id="PeriodicTaskMeta.total_run_count">
+<tt class="descname">total_run_count</tt><a class="headerlink" href="#PeriodicTaskMeta.total_run_count" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The number of times this periodic task has been run.</tt></dt>
+<dd></dd></dl>
+
+<dl class="attribute">
+<dt id="PeriodicTaskMeta.task">
+<tt class="descname">task</tt><a class="headerlink" href="#PeriodicTaskMeta.task" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The class/function for this task.</tt></dt>
+<dd></dd></dl>
+
+<dl class="method">
+<dt id="PeriodicTaskMeta.delay">
+<tt class="descname">delay</tt><big>(</big><big>)</big><a class="headerlink" href="#PeriodicTaskMeta.delay" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">Delay the execution of a periodic task, and increment its total</tt></dt>
+<dt>
+<tt class="descname">run count.</tt></dt>
+<dd></dd></dl>
+
+</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.managers.html"
+                                  title="previous chapter">Django Model Managers - celery.managers</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.messaging.html"
+                                  title="next chapter">Messaging - celery.messaging</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.models.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.messaging.html" title="Messaging - celery.messaging"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.managers.html" title="Django Model Managers - celery.managers"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 158 - 0
reference/celery.platform.html

@@ -0,0 +1,158 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Platform Specific - celery.platform &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Timers - celery.timer" href="celery.timer.html" />
+    <link rel="prev" title="Messaging - celery.messaging" href="celery.messaging.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.timer.html" title="Timers - celery.timer"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.messaging.html" title="Messaging - celery.messaging"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.platform">
+<h1>Platform Specific - celery.platform<a class="headerlink" href="#module-celery.platform" title="Permalink to this headline">¶</a></h1>
+<p>celery.platform</p>
+<dl class="class">
+<dt id="celery.platform.PIDFile">
+<em class="property">
+class </em><tt class="descclassname">celery.platform.</tt><tt class="descname">PIDFile</tt><big>(</big><em>pidfile</em><big>)</big><a class="headerlink" href="#celery.platform.PIDFile" title="Permalink to this definition">¶</a></dt>
+<dd><p>Manages a pid file.</p>
+<dl class="method">
+<dt id="celery.platform.PIDFile.check">
+<tt class="descname">check</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.platform.PIDFile.check" title="Permalink to this definition">¶</a></dt>
+<dd><p>Check the status of the pidfile.</p>
+<p>If the pidfile exists, and the process is not running, it will
+remove the stale pidfile and continue as normal. If the process
+<em>is</em> running, it will exit the program with an error message.</p>
+</dd></dl>
+
+<dl class="method">
+<dt id="celery.platform.PIDFile.get_pid">
+<tt class="descname">get_pid</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.platform.PIDFile.get_pid" title="Permalink to this definition">¶</a></dt>
+<dd>Get the process id stored in the pidfile.</dd></dl>
+
+<dl class="method">
+<dt id="celery.platform.PIDFile.remove">
+<tt class="descname">remove</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.platform.PIDFile.remove" title="Permalink to this definition">¶</a></dt>
+<dd>Remove the pidfile.</dd></dl>
+
+<dl class="method">
+<dt id="celery.platform.PIDFile.write">
+<tt class="descname">write</tt><big>(</big><em>pid=None</em><big>)</big><a class="headerlink" href="#celery.platform.PIDFile.write" title="Permalink to this definition">¶</a></dt>
+<dd><p>Write a pidfile.</p>
+<p>If <tt class="docutils literal"><span class="pre">pid</span></tt> is not specified the pid of the current process
+will be used.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="function">
+<dt id="celery.platform.daemonize">
+<tt class="descclassname">celery.platform.</tt><tt class="descname">daemonize</tt><big>(</big><em>pidfile</em><big>)</big><a class="headerlink" href="#celery.platform.daemonize" title="Permalink to this definition">¶</a></dt>
+<dd>Detach a process from the controlling terminal and run it in the
+background as a daemon.</dd></dl>
+
+<dl class="function">
+<dt id="celery.platform.remove_pidfile">
+<tt class="descclassname">celery.platform.</tt><tt class="descname">remove_pidfile</tt><big>(</big><em>pidfile</em><big>)</big><a class="headerlink" href="#celery.platform.remove_pidfile" title="Permalink to this definition">¶</a></dt>
+<dd>Remove the pidfile.</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.messaging.html"
+                                  title="previous chapter">Messaging - celery.messaging</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.timer.html"
+                                  title="next chapter">Timers - celery.timer</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.platform.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.timer.html" title="Timers - celery.timer"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.messaging.html" title="Messaging - celery.messaging"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 196 - 0
reference/celery.registry.html

@@ -0,0 +1,196 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Task Registry - celery.registry &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Task Discovery - celery.discovery" href="celery.discovery.html" />
+    <link rel="prev" title="Task Result - celery.result" href="celery.result.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.discovery.html" title="Task Discovery - celery.discovery"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.result.html" title="Task Result - celery.result"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.registry">
+<h1>Task Registry - celery.registry<a class="headerlink" href="#module-celery.registry" title="Permalink to this headline">¶</a></h1>
+<p>celery.registry</p>
+<dl class="exception">
+<dt id="celery.registry.AlreadyRegistered">
+<em class="property">
+exception </em><tt class="descclassname">celery.registry.</tt><tt class="descname">AlreadyRegistered</tt><a class="headerlink" href="#celery.registry.AlreadyRegistered" title="Permalink to this definition">¶</a></dt>
+<dd>The task is already registered.</dd></dl>
+
+<dl class="exception">
+<dt id="celery.registry.NotRegistered">
+<em class="property">
+exception </em><tt class="descclassname">celery.registry.</tt><tt class="descname">NotRegistered</tt><a class="headerlink" href="#celery.registry.NotRegistered" title="Permalink to this definition">¶</a></dt>
+<dd>The task is not registered.</dd></dl>
+
+<dl class="class">
+<dt id="celery.registry.TaskRegistry">
+<em class="property">
+class </em><tt class="descclassname">celery.registry.</tt><tt class="descname">TaskRegistry</tt><a class="headerlink" href="#celery.registry.TaskRegistry" title="Permalink to this definition">¶</a></dt>
+<dd><p>Site registry for tasks.</p>
+<dl class="exception">
+<dt id="celery.registry.TaskRegistry.AlreadyRegistered">
+<em class="property">
+exception </em><tt class="descname">AlreadyRegistered</tt><a class="headerlink" href="#celery.registry.TaskRegistry.AlreadyRegistered" title="Permalink to this definition">¶</a></dt>
+<dd>The task is already registered.</dd></dl>
+
+<dl class="exception">
+<dt id="celery.registry.TaskRegistry.NotRegistered">
+<em class="property">
+exception </em><tt class="descclassname">TaskRegistry.</tt><tt class="descname">NotRegistered</tt><a class="headerlink" href="#celery.registry.TaskRegistry.NotRegistered" title="Permalink to this definition">¶</a></dt>
+<dd>The task is not registered.</dd></dl>
+
+<dl class="method">
+<dt id="celery.registry.TaskRegistry.autodiscover">
+<tt class="descclassname">TaskRegistry.</tt><tt class="descname">autodiscover</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.registry.TaskRegistry.autodiscover" title="Permalink to this definition">¶</a></dt>
+<dd>Autodiscover tasks using <tt class="docutils literal"><span class="pre">celery.discovery.autodiscover</span></tt>.</dd></dl>
+
+<dl class="method">
+<dt id="celery.registry.TaskRegistry.filter_types">
+<tt class="descclassname">TaskRegistry.</tt><tt class="descname">filter_types</tt><big>(</big><em>type</em><big>)</big><a class="headerlink" href="#celery.registry.TaskRegistry.filter_types" title="Permalink to this definition">¶</a></dt>
+<dd>Return all tasks of a specific type.</dd></dl>
+
+<dl class="method">
+<dt id="celery.registry.TaskRegistry.get_all">
+<tt class="descclassname">TaskRegistry.</tt><tt class="descname">get_all</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.registry.TaskRegistry.get_all" title="Permalink to this definition">¶</a></dt>
+<dd>Get all task types.</dd></dl>
+
+<dl class="method">
+<dt id="celery.registry.TaskRegistry.get_all_periodic">
+<tt class="descclassname">TaskRegistry.</tt><tt class="descname">get_all_periodic</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.registry.TaskRegistry.get_all_periodic" title="Permalink to this definition">¶</a></dt>
+<dd>Get all periodic task types.</dd></dl>
+
+<dl class="method">
+<dt id="celery.registry.TaskRegistry.get_all_regular">
+<tt class="descclassname">TaskRegistry.</tt><tt class="descname">get_all_regular</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.registry.TaskRegistry.get_all_regular" title="Permalink to this definition">¶</a></dt>
+<dd>Get all regular task types.</dd></dl>
+
+<dl class="method">
+<dt id="celery.registry.TaskRegistry.get_task">
+<tt class="descclassname">TaskRegistry.</tt><tt class="descname">get_task</tt><big>(</big><em>task_name</em><big>)</big><a class="headerlink" href="#celery.registry.TaskRegistry.get_task" title="Permalink to this definition">¶</a></dt>
+<dd>Get task by name.</dd></dl>
+
+<dl class="method">
+<dt id="celery.registry.TaskRegistry.register">
+<tt class="descclassname">TaskRegistry.</tt><tt class="descname">register</tt><big>(</big><em>task</em>, <em>task_name=None</em><big>)</big><a class="headerlink" href="#celery.registry.TaskRegistry.register" title="Permalink to this definition">¶</a></dt>
+<dd><p>Register a task in the task registry.</p>
+<p>Task can either be a regular function, or a class inheriting
+from <a title="celery.task.Task" class="reference external" href="celery.task.html#celery.task.Task"><tt class="xref docutils literal"><span class="pre">celery.task.Task</span></tt></a>.</p>
+<p>If the task is a regular function, the <tt class="docutils literal"><span class="pre">task_name</span></tt> argument is
+required.</p>
+</dd></dl>
+
+<dl class="method">
+<dt id="celery.registry.TaskRegistry.unregister">
+<tt class="descclassname">TaskRegistry.</tt><tt class="descname">unregister</tt><big>(</big><em>task_name</em><big>)</big><a class="headerlink" href="#celery.registry.TaskRegistry.unregister" title="Permalink to this definition">¶</a></dt>
+<dd>Unregister task by name.</dd></dl>
+
+</dd></dl>
+
+<dl class="data">
+<dt id="celery.registry.tasks">
+<tt class="descclassname">celery.registry.</tt><tt class="descname">tasks</tt><a class="headerlink" href="#celery.registry.tasks" title="Permalink to this definition">¶</a></dt>
+<dt>
+<tt class="descname">The global task registry.</tt></dt>
+<dd></dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.result.html"
+                                  title="previous chapter">Task Result - celery.result</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.discovery.html"
+                                  title="next chapter">Task Discovery - celery.discovery</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.registry.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.discovery.html" title="Task Discovery - celery.discovery"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.result.html" title="Task Result - celery.result"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 168 - 0
reference/celery.result.html

@@ -0,0 +1,168 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Task Result - celery.result &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Task Registry - celery.registry" href="celery.registry.html" />
+    <link rel="prev" title="Tasks - celery.task" href="celery.task.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.registry.html" title="Task Registry - celery.registry"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.task.html" title="Tasks - celery.task"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.result">
+<h1>Task Result - celery.result<a class="headerlink" href="#module-celery.result" title="Permalink to this headline">¶</a></h1>
+<p>celery.result</p>
+<dl class="class">
+<dt id="celery.result.AsyncResult">
+<em class="property">
+class </em><tt class="descclassname">celery.result.</tt><tt class="descname">AsyncResult</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.result.AsyncResult" title="Permalink to this definition">¶</a></dt>
+<dd>Pending task result using the default backend.</dd></dl>
+
+<dl class="class">
+<dt id="celery.result.BaseAsyncResult">
+<em class="property">
+class </em><tt class="descclassname">celery.result.</tt><tt class="descname">BaseAsyncResult</tt><big>(</big><em>task_id</em>, <em>backend</em><big>)</big><a class="headerlink" href="#celery.result.BaseAsyncResult" title="Permalink to this definition">¶</a></dt>
+<dd><p>Base class for pending result, takes <tt class="docutils literal"><span class="pre">backend</span></tt> argument.</p>
+<dl class="method">
+<dt id="celery.result.BaseAsyncResult.get">
+<tt class="descname">get</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.result.BaseAsyncResult.get" title="Permalink to this definition">¶</a></dt>
+<dd>Alias to <tt class="docutils literal"><span class="pre">wait</span></tt>.</dd></dl>
+
+<dl class="method">
+<dt id="celery.result.BaseAsyncResult.is_done">
+<tt class="descname">is_done</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.result.BaseAsyncResult.is_done" title="Permalink to this definition">¶</a></dt>
+<dd>Returns <tt class="xref docutils literal"><span class="pre">True</span></tt> if the task executed successfully.</dd></dl>
+
+<dl class="method">
+<dt id="celery.result.BaseAsyncResult.ready">
+<tt class="descname">ready</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.result.BaseAsyncResult.ready" title="Permalink to this definition">¶</a></dt>
+<dd>Returns <tt class="xref docutils literal"><span class="pre">True</span></tt> if the task executed successfully, or raised
+an exception. If the task is still pending, or is waiting for retry
+then <tt class="xref docutils literal"><span class="pre">False</span></tt> is returned.</dd></dl>
+
+<dl class="attribute">
+<dt id="celery.result.BaseAsyncResult.result">
+<tt class="descname">result</tt><a class="headerlink" href="#celery.result.BaseAsyncResult.result" title="Permalink to this definition">¶</a></dt>
+<dd>The tasks resulting value.</dd></dl>
+
+<dl class="attribute">
+<dt id="celery.result.BaseAsyncResult.status">
+<tt class="descname">status</tt><a class="headerlink" href="#celery.result.BaseAsyncResult.status" title="Permalink to this definition">¶</a></dt>
+<dd>The current status of the task.</dd></dl>
+
+<dl class="method">
+<dt id="celery.result.BaseAsyncResult.successful">
+<tt class="descname">successful</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.result.BaseAsyncResult.successful" title="Permalink to this definition">¶</a></dt>
+<dd>Alias to <tt class="docutils literal"><span class="pre">is_done</span></tt>.</dd></dl>
+
+<dl class="method">
+<dt id="celery.result.BaseAsyncResult.wait">
+<tt class="descname">wait</tt><big>(</big><em>timeout=None</em><big>)</big><a class="headerlink" href="#celery.result.BaseAsyncResult.wait" title="Permalink to this definition">¶</a></dt>
+<dd><p>Return the result when it arrives.</p>
+<p>If timeout is not <tt class="xref docutils literal"><span class="pre">None</span></tt> and the result does not arrive within
+<tt class="docutils literal"><span class="pre">timeout</span></tt> seconds then <tt class="docutils literal"><span class="pre">celery.backends.base.TimeoutError</span></tt> is
+raised. If the remote call raised an exception then that exception
+will be reraised by get().</p>
+</dd></dl>
+
+</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.task.html"
+                                  title="previous chapter">Tasks - celery.task</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.registry.html"
+                                  title="next chapter">Task Registry - celery.registry</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.result.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.registry.html" title="Task Registry - celery.registry"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.task.html" title="Tasks - celery.task"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 386 - 0
reference/celery.task.html

@@ -0,0 +1,386 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Tasks - celery.task &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Task Result - celery.result" href="celery.result.html" />
+    <link rel="prev" title="Welcome to Celery’s documentation!" href="../index.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.result.html" title="Task Result - celery.result"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="../index.html" title="Welcome to Celery’s documentation!"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.task">
+<h1>Tasks - celery.task<a class="headerlink" href="#module-celery.task" title="Permalink to this headline">¶</a></h1>
+<dl class="class">
+<dt id="celery.task.AsynchronousMapTask">
+<em class="property">
+class </em><tt class="descclassname">celery.task.</tt><tt class="descname">AsynchronousMapTask</tt><a class="headerlink" href="#celery.task.AsynchronousMapTask" title="Permalink to this definition">¶</a></dt>
+<dd>Task used internally by <tt class="docutils literal"><span class="pre">dmap_async</span></tt>.</dd></dl>
+
+<dl class="class">
+<dt id="celery.task.DeleteExpiredTaskMetaTask">
+<em class="property">
+class </em><tt class="descclassname">celery.task.</tt><tt class="descname">DeleteExpiredTaskMetaTask</tt><a class="headerlink" href="#celery.task.DeleteExpiredTaskMetaTask" title="Permalink to this definition">¶</a></dt>
+<dd><p>A periodic task that deletes expired task metadata every day.</p>
+<p>This runs the current backend&#8217;s cleanup() method.</p>
+</dd></dl>
+
+<dl class="class">
+<dt id="celery.task.ExecuteRemoteTask">
+<em class="property">
+class </em><tt class="descclassname">celery.task.</tt><tt class="descname">ExecuteRemoteTask</tt><a class="headerlink" href="#celery.task.ExecuteRemoteTask" title="Permalink to this definition">¶</a></dt>
+<dd><p>Execute arbitrary function/object.</p>
+<p>The object must be pickleable, so you can&#8217;t use lambdas or functions
+defined in the REPL.</p>
+<dl class="method">
+<dt id="celery.task.ExecuteRemoteTask.run">
+<tt class="descname">run</tt><big>(</big><em>ser_callable</em>, <em>fargs</em>, <em>fkwargs</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#celery.task.ExecuteRemoteTask.run" title="Permalink to this definition">¶</a></dt>
+<dd>Execute the pickled <tt class="docutils literal"><span class="pre">ser_callable</span></tt>, with <tt class="docutils literal"><span class="pre">fargs</span></tt> as positional
+arguments and <tt class="docutils literal"><span class="pre">fkwargs</span></tt> as keyword arguments.</dd></dl>
+
+</dd></dl>
+
+<dl class="class">
+<dt id="celery.task.PeriodicTask">
+<em class="property">
+class </em><tt class="descclassname">celery.task.</tt><tt class="descname">PeriodicTask</tt><a class="headerlink" href="#celery.task.PeriodicTask" title="Permalink to this definition">¶</a></dt>
+<dd><p>A periodic task is a task that behaves like a cron job.</p>
+<p>The <tt class="docutils literal"><span class="pre">run_every</span></tt> attribute defines how often the task is run (its
+interval), it can be either a <tt class="docutils literal"><span class="pre">datetime.timedelta</span></tt> object or a integer
+specifying the time in seconds.</p>
+<p>You have to register the periodic task in the task registry.</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="kn">from</span> <span class="nn">celery.task</span> <span class="kn">import</span> <span class="n">tasks</span><span class="p">,</span> <span class="n">PeriodicTask</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="kn">from</span> <span class="nn">datetime</span> <span class="kn">import</span> <span class="n">timedelta</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="k">class</span> <span class="nc">MyPeriodicTask</span><span class="p">(</span><span class="n">PeriodicTask</span><span class="p">):</span>
+<span class="gp">... </span>    <span class="n">name</span> <span class="o">=</span> <span class="s">&quot;my_periodic_task&quot;</span>
+<span class="gp">... </span>    <span class="n">run_every</span> <span class="o">=</span> <span class="n">timedelta</span><span class="p">(</span><span class="n">seconds</span><span class="o">=</span><span class="mf">30</span><span class="p">)</span>
+<span class="gp">...</span>
+<span class="gp">... </span>    <span class="k">def</span> <span class="nf">run</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
+<span class="gp">... </span>        <span class="n">logger</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_logger</span><span class="p">(</span><span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
+<span class="gp">... </span>        <span class="n">logger</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s">&quot;Running MyPeriodicTask&quot;</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">tasks</span><span class="o">.</span><span class="n">register</span><span class="p">(</span><span class="n">MyPeriodicTask</span><span class="p">)</span>
+</pre></div>
+</div>
+</dd></dl>
+
+<dl class="class">
+<dt id="celery.task.Task">
+<em class="property">
+class </em><tt class="descclassname">celery.task.</tt><tt class="descname">Task</tt><a class="headerlink" href="#celery.task.Task" title="Permalink to this definition">¶</a></dt>
+<dd><p>A task that can be delayed for execution by the <tt class="docutils literal"><span class="pre">celery</span></tt> daemon.</p>
+<p>All subclasses of <tt class="docutils literal"><span class="pre">Task</span></tt> has to define the <tt class="docutils literal"><span class="pre">name</span></tt> attribute, which is
+the name of the task that can be passed to <tt class="docutils literal"><span class="pre">celery.task.delay_task</span></tt>,
+it also has to define the <tt class="docutils literal"><span class="pre">run</span></tt> method, which is the actual method the
+<tt class="docutils literal"><span class="pre">celery</span></tt> daemon executes.</p>
+<p>This is a simple task just logging a message,</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="kn">from</span> <span class="nn">celery.task</span> <span class="kn">import</span> <span class="n">tasks</span><span class="p">,</span> <span class="n">Task</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="k">class</span> <span class="nc">MyTask</span><span class="p">(</span><span class="n">Task</span><span class="p">):</span>
+<span class="gp">... </span>    <span class="n">name</span> <span class="o">=</span> <span class="s">&quot;mytask&quot;</span>
+<span class="gp">...</span>
+<span class="gp">... </span>    <span class="k">def</span> <span class="nf">run</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">some_arg</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
+<span class="gp">... </span>        <span class="n">logger</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_logger</span><span class="p">(</span><span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
+<span class="gp">... </span>        <span class="n">logger</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s">&quot;Running MyTask with arg some_arg=</span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span>
+<span class="gp">... </span>                    <span class="n">some_arg</span><span class="p">))</span>
+<span class="gp">... </span>        <span class="k">return</span> <span class="mf">42</span>
+<span class="gp">... </span><span class="n">tasks</span><span class="o">.</span><span class="n">register</span><span class="p">(</span><span class="n">MyTask</span><span class="p">)</span>
+</pre></div>
+</div>
+<p>You can delay the task using the classmethod <tt class="docutils literal"><span class="pre">delay</span></tt>...</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">result</span> <span class="o">=</span> <span class="n">MyTask</span><span class="o">.</span><span class="n">delay</span><span class="p">(</span><span class="n">some_arg</span><span class="o">=</span><span class="s">&quot;foo&quot;</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">result</span><span class="o">.</span><span class="n">status</span> <span class="c"># after some time</span>
+<span class="go">&#39;DONE&#39;</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">result</span><span class="o">.</span><span class="n">result</span>
+<span class="go">42</span>
+</pre></div>
+</div>
+<p>...or using the <tt class="docutils literal"><span class="pre">celery.task.delay_task</span></tt> function, by passing the
+name of the task.</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="kn">from</span> <span class="nn">celery.task</span> <span class="kn">import</span> <span class="n">delay_task</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">delay_task</span><span class="p">(</span><span class="n">MyTask</span><span class="o">.</span><span class="n">name</span><span class="p">,</span> <span class="n">some_arg</span><span class="o">=</span><span class="s">&quot;foo&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+<dl class="classmethod">
+<dt id="celery.task.Task.delay">
+<em class="property">
+classmethod </em><tt class="descname">delay</tt><big>(</big><em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#celery.task.Task.delay" title="Permalink to this definition">¶</a></dt>
+<dd>Delay this task for execution by the <tt class="docutils literal"><span class="pre">celery</span></tt> daemon(s).</dd></dl>
+
+<dl class="method">
+<dt id="celery.task.Task.get_consumer">
+<tt class="descname">get_consumer</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.task.Task.get_consumer" title="Permalink to this definition">¶</a></dt>
+<dd>Get a celery task message consumer.</dd></dl>
+
+<dl class="method">
+<dt id="celery.task.Task.get_logger">
+<tt class="descname">get_logger</tt><big>(</big><em>**kwargs</em><big>)</big><a class="headerlink" href="#celery.task.Task.get_logger" title="Permalink to this definition">¶</a></dt>
+<dd>Get a process-aware logger object.</dd></dl>
+
+<dl class="method">
+<dt id="celery.task.Task.get_publisher">
+<tt class="descname">get_publisher</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.task.Task.get_publisher" title="Permalink to this definition">¶</a></dt>
+<dd>Get a celery task message publisher.</dd></dl>
+
+<dl class="method">
+<dt id="celery.task.Task.run">
+<tt class="descname">run</tt><big>(</big><em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#celery.task.Task.run" title="Permalink to this definition">¶</a></dt>
+<dd>The actual task. All subclasses of <a title="celery.task.Task" class="reference internal" href="#celery.task.Task"><tt class="xref docutils literal"><span class="pre">Task</span></tt></a> must define
+the run method, if not a <tt class="docutils literal"><span class="pre">NotImplementedError</span></tt> exception is raised.</dd></dl>
+
+</dd></dl>
+
+<dl class="class">
+<dt id="celery.task.TaskSet">
+<em class="property">
+class </em><tt class="descclassname">celery.task.</tt><tt class="descname">TaskSet</tt><big>(</big><em>task</em>, <em>args</em><big>)</big><a class="headerlink" href="#celery.task.TaskSet" title="Permalink to this definition">¶</a></dt>
+<dd><p>A task containing several subtasks, making it possible
+to track how many, or when all of the tasks are completed.</p>
+<blockquote>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="kn">from</span> <span class="nn">djangofeeds.tasks</span> <span class="kn">import</span> <span class="n">RefreshFeedTask</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">taskset</span> <span class="o">=</span> <span class="n">TaskSet</span><span class="p">(</span><span class="n">RefreshFeedTask</span><span class="p">,</span> <span class="n">args</span><span class="o">=</span><span class="p">[</span>
+<span class="gp">... </span>                <span class="p">{</span><span class="s">&quot;feed_url&quot;</span><span class="p">:</span> <span class="s">&quot;http://cnn.com/rss&quot;</span><span class="p">},</span>
+<span class="gp">... </span>                <span class="p">{</span><span class="s">&quot;feed_url&quot;</span><span class="p">:</span> <span class="s">&quot;http://bbc.com/rss&quot;</span><span class="p">},</span>
+<span class="gp">... </span>                <span class="p">{</span><span class="s">&quot;feed_url&quot;</span><span class="p">:</span> <span class="s">&quot;http://xkcd.com/rss&quot;</span><span class="p">}])</span>
+</pre></div>
+</div>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">taskset_id</span><span class="p">,</span> <span class="n">subtask_ids</span> <span class="o">=</span> <span class="n">taskset</span><span class="o">.</span><span class="n">run</span><span class="p">()</span>
+</pre></div>
+</div>
+</blockquote>
+<dl class="method">
+<dt id="celery.task.TaskSet.iterate">
+<tt class="descname">iterate</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.task.TaskSet.iterate" title="Permalink to this definition">¶</a></dt>
+<dd><p>Iterate over the results returned after calling <tt class="docutils literal"><span class="pre">run()</span></tt>.</p>
+<p>If any of the tasks raises an exception, the exception will
+be reraised by <tt class="docutils literal"><span class="pre">iterate</span></tt>.</p>
+</dd></dl>
+
+<dl class="method">
+<dt id="celery.task.TaskSet.join">
+<tt class="descname">join</tt><big>(</big><em>timeout=None</em><big>)</big><a class="headerlink" href="#celery.task.TaskSet.join" title="Permalink to this definition">¶</a></dt>
+<dd><p>Gather the results for all of the tasks in the taskset,
+and return a list with them ordered by the order of which they
+were called.</p>
+<p>If any of the tasks raises an exception, the exception
+will be reraised by <tt class="docutils literal"><span class="pre">join</span></tt>.</p>
+<p>If <tt class="docutils literal"><span class="pre">timeout</span></tt> is not <tt class="xref docutils literal"><span class="pre">None</span></tt> and the operation takes
+longer than <tt class="docutils literal"><span class="pre">timeout</span></tt> seconds, it will raise
+the <a title="celery.timer.TimeoutError" class="reference external" href="celery.timer.html#celery.timer.TimeoutError"><tt class="xref docutils literal"><span class="pre">celery.timer.TimeoutError</span></tt></a> exception.</p>
+</dd></dl>
+
+<dl class="classmethod">
+<dt id="celery.task.TaskSet.map">
+<em class="property">
+classmethod </em><tt class="descname">map</tt><big>(</big><em>func</em>, <em>args</em>, <em>timeout=None</em><big>)</big><a class="headerlink" href="#celery.task.TaskSet.map" title="Permalink to this definition">¶</a></dt>
+<dd>Distribute processing of the arguments and collect the results.</dd></dl>
+
+<dl class="classmethod">
+<dt id="celery.task.TaskSet.map_async">
+<em class="property">
+classmethod </em><tt class="descname">map_async</tt><big>(</big><em>func</em>, <em>args</em>, <em>timeout=None</em><big>)</big><a class="headerlink" href="#celery.task.TaskSet.map_async" title="Permalink to this definition">¶</a></dt>
+<dd><p>Distribute processing of the arguments and collect the results
+asynchronously.</p>
+<p>Returns <a title="celery.result.AsyncResult" class="reference external" href="celery.result.html#celery.result.AsyncResult"><tt class="xref docutils literal"><span class="pre">celery.result.AsyncResult</span></tt></a> instance.</p>
+</dd></dl>
+
+<dl class="classmethod">
+<dt id="celery.task.TaskSet.remote_execute">
+<em class="property">
+classmethod </em><tt class="descname">remote_execute</tt><big>(</big><em>func</em>, <em>args</em><big>)</big><a class="headerlink" href="#celery.task.TaskSet.remote_execute" title="Permalink to this definition">¶</a></dt>
+<dd>Apply <tt class="docutils literal"><span class="pre">args</span></tt> to function by distributing the args to the
+celery server(s).</dd></dl>
+
+<dl class="method">
+<dt id="celery.task.TaskSet.run">
+<tt class="descname">run</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.task.TaskSet.run" title="Permalink to this definition">¶</a></dt>
+<dd><p>Run all tasks in the taskset.</p>
+<p>Returns a tuple with the taskset id, and a list of subtask id&#8217;s.</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">ts</span> <span class="o">=</span> <span class="n">RefreshFeeds</span><span class="p">([</span>
+<span class="gp">... </span>        <span class="p">[</span><span class="s">&quot;http://foo.com/rss&quot;</span><span class="p">,</span> <span class="p">{}],</span>
+<span class="gp">... </span>        <span class="p">[</span><span class="s">&quot;http://bar.com/rss&quot;</span><span class="p">,</span> <span class="p">{}],</span>
+<span class="gp">... </span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">taskset_id</span><span class="p">,</span> <span class="n">subtask_ids</span> <span class="o">=</span> <span class="n">ts</span><span class="o">.</span><span class="n">run</span><span class="p">()</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">taskset_id</span>
+<span class="go">&quot;d2c9b261-8eff-4bfb-8459-1e1b72063514&quot;</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">subtask_ids</span>
+<span class="go">[&quot;b4996460-d959-49c8-aeb9-39c530dcde25&quot;,</span>
+<span class="go">&quot;598d2d18-ab86-45ca-8b4f-0779f5d6a3cb&quot;]</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">time</span><span class="o">.</span><span class="n">sleep</span><span class="p">(</span><span class="mf">10</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">is_done</span><span class="p">(</span><span class="n">taskset_id</span><span class="p">)</span>
+<span class="go">True</span>
+</pre></div>
+</div>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="function">
+<dt id="celery.task.delay_task">
+<tt class="descclassname">celery.task.</tt><tt class="descname">delay_task</tt><big>(</big><em>task_name</em>, <em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#celery.task.delay_task" title="Permalink to this definition">¶</a></dt>
+<dd><p>Delay a task for execution by the <tt class="docutils literal"><span class="pre">celery</span></tt> daemon.</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">delay_task</span><span class="p">(</span><span class="s">&quot;update_record&quot;</span><span class="p">,</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;George Constanza&quot;</span><span class="p">,</span> <span class="n">age</span><span class="o">=</span><span class="mf">32</span><span class="p">)</span>
+</pre></div>
+</div>
+</dd></dl>
+
+<dl class="function">
+<dt id="celery.task.discard_all">
+<tt class="descclassname">celery.task.</tt><tt class="descname">discard_all</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.task.discard_all" title="Permalink to this definition">¶</a></dt>
+<dd><p>Discard all waiting tasks.</p>
+<p>This will ignore all tasks waiting for execution, and they will
+be deleted from the messaging server.</p>
+<p>Returns the number of tasks discarded.</p>
+</dd></dl>
+
+<dl class="function">
+<dt id="celery.task.dmap">
+<tt class="descclassname">celery.task.</tt><tt class="descname">dmap</tt><big>(</big><em>func</em>, <em>args</em>, <em>timeout=None</em><big>)</big><a class="headerlink" href="#celery.task.dmap" title="Permalink to this definition">¶</a></dt>
+<dd><p>Distribute processing of the arguments and collect the results.</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="kn">from</span> <span class="nn">celery.task</span> <span class="kn">import</span> <span class="nb">map</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="kn">import</span> <span class="nn">operator</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">dmap</span><span class="p">(</span><span class="n">operator</span><span class="o">.</span><span class="n">add</span><span class="p">,</span> <span class="p">[[</span><span class="mf">2</span><span class="p">,</span> <span class="mf">2</span><span class="p">],</span> <span class="p">[</span><span class="mf">4</span><span class="p">,</span> <span class="mf">4</span><span class="p">],</span> <span class="p">[</span><span class="mf">8</span><span class="p">,</span> <span class="mf">8</span><span class="p">]])</span>
+<span class="go">[4, 8, 16]</span>
+</pre></div>
+</div>
+</dd></dl>
+
+<dl class="function">
+<dt id="celery.task.dmap_async">
+<tt class="descclassname">celery.task.</tt><tt class="descname">dmap_async</tt><big>(</big><em>func</em>, <em>args</em>, <em>timeout=None</em><big>)</big><a class="headerlink" href="#celery.task.dmap_async" title="Permalink to this definition">¶</a></dt>
+<dd><p>Distribute processing of the arguments and collect the results
+asynchronously.</p>
+<p>Returns a <a title="celery.result.AsyncResult" class="reference external" href="celery.result.html#celery.result.AsyncResult"><tt class="xref docutils literal"><span class="pre">celery.result.AsyncResult</span></tt></a> object.</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="kn">from</span> <span class="nn">celery.task</span> <span class="kn">import</span> <span class="n">dmap_async</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="kn">import</span> <span class="nn">operator</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">presult</span> <span class="o">=</span> <span class="n">dmap_async</span><span class="p">(</span><span class="n">operator</span><span class="o">.</span><span class="n">add</span><span class="p">,</span> <span class="p">[[</span><span class="mf">2</span><span class="p">,</span> <span class="mf">2</span><span class="p">],</span> <span class="p">[</span><span class="mf">4</span><span class="p">,</span> <span class="mf">4</span><span class="p">],</span> <span class="p">[</span><span class="mf">8</span><span class="p">,</span> <span class="mf">8</span><span class="p">]])</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">presult</span>
+<span class="go">&lt;AsyncResult: 373550e8-b9a0-4666-bc61-ace01fa4f91d&gt;</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">presult</span><span class="o">.</span><span class="n">status</span>
+<span class="go">&#39;DONE&#39;</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">presult</span><span class="o">.</span><span class="n">result</span>
+<span class="go">[4, 8, 16]</span>
+</pre></div>
+</div>
+</dd></dl>
+
+<dl class="function">
+<dt id="celery.task.execute_remote">
+<tt class="descclassname">celery.task.</tt><tt class="descname">execute_remote</tt><big>(</big><em>func</em>, <em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#celery.task.execute_remote" title="Permalink to this definition">¶</a></dt>
+<dd><p>Execute arbitrary function/object remotely.</p>
+<p>The object must be picklable, so you can&#8217;t use lambdas or functions
+defined in the REPL (the objects must have an associated module).</p>
+</dd></dl>
+
+<dl class="function">
+<dt id="celery.task.is_done">
+<tt class="descclassname">celery.task.</tt><tt class="descname">is_done</tt><big>(</big><em>task_id</em><big>)</big><a class="headerlink" href="#celery.task.is_done" title="Permalink to this definition">¶</a></dt>
+<dd>Returns <tt class="xref docutils literal"><span class="pre">True</span></tt> if task with <tt class="docutils literal"><span class="pre">task_id</span></tt> has been executed.</dd></dl>
+
+<dl class="function">
+<dt id="celery.task.mark_as_done">
+<tt class="descclassname">celery.task.</tt><tt class="descname">mark_as_done</tt><big>(</big><em>task_id</em>, <em>result</em><big>)</big><a class="headerlink" href="#celery.task.mark_as_done" title="Permalink to this definition">¶</a></dt>
+<dd>Mark task as done (executed).</dd></dl>
+
+<dl class="function">
+<dt id="celery.task.mark_as_failure">
+<tt class="descclassname">celery.task.</tt><tt class="descname">mark_as_failure</tt><big>(</big><em>task_id</em>, <em>exc</em><big>)</big><a class="headerlink" href="#celery.task.mark_as_failure" title="Permalink to this definition">¶</a></dt>
+<dd>Mark task as done (executed).</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="../index.html"
+                                  title="previous chapter">Welcome to Celery&#8217;s documentation!</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.result.html"
+                                  title="next chapter">Task Result - celery.result</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.task.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.result.html" title="Task Result - celery.result"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="../index.html" title="Welcome to Celery’s documentation!"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 150 - 0
reference/celery.timer.html

@@ -0,0 +1,150 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Timers - celery.timer &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Celery Worker Daemon - celery.bin.celeryd" href="celery.bin.celeryd.html" />
+    <link rel="prev" title="Platform Specific - celery.platform" href="celery.platform.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.bin.celeryd.html" title="Celery Worker Daemon - celery.bin.celeryd"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.platform.html" title="Platform Specific - celery.platform"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.timer">
+<h1>Timers - celery.timer<a class="headerlink" href="#module-celery.timer" title="Permalink to this headline">¶</a></h1>
+<p>celery.timer</p>
+<dl class="class">
+<dt id="celery.timer.EventTimer">
+<em class="property">
+class </em><tt class="descclassname">celery.timer.</tt><tt class="descname">EventTimer</tt><big>(</big><em>event</em>, <em>interval=None</em><big>)</big><a class="headerlink" href="#celery.timer.EventTimer" title="Permalink to this definition">¶</a></dt>
+<dd><p>Do something at an interval.</p>
+<dl class="method">
+<dt id="celery.timer.EventTimer.tick">
+<tt class="descname">tick</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.timer.EventTimer.tick" title="Permalink to this definition">¶</a></dt>
+<dd><p>Run a event timer clock tick.</p>
+<p>When the interval has run, the event will be triggered.
+If interval is not set, the event will never be triggered.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="exception">
+<dt id="celery.timer.TimeoutError">
+<em class="property">
+exception </em><tt class="descclassname">celery.timer.</tt><tt class="descname">TimeoutError</tt><a class="headerlink" href="#celery.timer.TimeoutError" title="Permalink to this definition">¶</a></dt>
+<dd>The event has timed out.</dd></dl>
+
+<dl class="class">
+<dt id="celery.timer.TimeoutTimer">
+<em class="property">
+class </em><tt class="descclassname">celery.timer.</tt><tt class="descname">TimeoutTimer</tt><big>(</big><em>timeout</em><big>)</big><a class="headerlink" href="#celery.timer.TimeoutTimer" title="Permalink to this definition">¶</a></dt>
+<dd><p>A timer that raises <tt class="docutils literal"><span class="pre">TimeoutError</span></tt> when the time has run out.</p>
+<dl class="method">
+<dt id="celery.timer.TimeoutTimer.tick">
+<tt class="descname">tick</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.timer.TimeoutTimer.tick" title="Permalink to this definition">¶</a></dt>
+<dd><p>Run a timeout timer clock tick.</p>
+<p>When <tt class="docutils literal"><span class="pre">timeout</span></tt> seconds has passed, it will raise a
+<a title="celery.timer.TimeoutTimer" class="reference internal" href="#celery.timer.TimeoutTimer"><tt class="xref docutils literal"><span class="pre">TimeoutTimer</span></tt></a> exception.
+If <tt class="docutils literal"><span class="pre">timeout</span></tt> is not set, it will never time out.</p>
+</dd></dl>
+
+</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.platform.html"
+                                  title="previous chapter">Platform Specific - celery.platform</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.bin.celeryd.html"
+                                  title="next chapter">Celery Worker Daemon - celery.bin.celeryd</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.timer.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.bin.celeryd.html" title="Celery Worker Daemon - celery.bin.celeryd"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.platform.html" title="Platform Specific - celery.platform"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 189 - 0
reference/celery.worker.html

@@ -0,0 +1,189 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Multiprocessing Worker - celery.worker &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="../static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../static/jquery.js"></script>
+    <script type="text/javascript" src="../static/doctools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="../index.html" />
+    <link rel="next" title="Backends - celery.backends" href="celery.backends.html" />
+    <link rel="prev" title="Task Discovery - celery.discovery" href="celery.discovery.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.html" title="Backends - celery.backends"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="celery.discovery.html" title="Task Discovery - celery.discovery"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-celery.worker">
+<h1>Multiprocessing Worker - celery.worker<a class="headerlink" href="#module-celery.worker" title="Permalink to this headline">¶</a></h1>
+<p>celery.worker</p>
+<dl class="exception">
+<dt id="celery.worker.EmptyQueue">
+<em class="property">
+exception </em><tt class="descclassname">celery.worker.</tt><tt class="descname">EmptyQueue</tt><a class="headerlink" href="#celery.worker.EmptyQueue" title="Permalink to this definition">¶</a></dt>
+<dd>The message queue is currently empty.</dd></dl>
+
+<dl class="class">
+<dt id="celery.worker.TaskDaemon">
+<em class="property">
+class </em><tt class="descclassname">celery.worker.</tt><tt class="descname">TaskDaemon</tt><big>(</big><em>concurrency=None</em>, <em>logfile=None</em>, <em>loglevel=None</em>, <em>queue_wakeup_after=None</em><big>)</big><a class="headerlink" href="#celery.worker.TaskDaemon" title="Permalink to this definition">¶</a></dt>
+<dd><p>Executes tasks waiting in the task queue.</p>
+<p><tt class="docutils literal"><span class="pre">concurrency</span></tt> is the number of simultaneous processes.</p>
+<dl class="method">
+<dt id="celery.worker.TaskDaemon.run">
+<tt class="descname">run</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.worker.TaskDaemon.run" title="Permalink to this definition">¶</a></dt>
+<dd>The worker server&#8217;s main loop.</dd></dl>
+
+<dl class="method">
+<dt id="celery.worker.TaskDaemon.run_periodic_tasks">
+<tt class="descname">run_periodic_tasks</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.worker.TaskDaemon.run_periodic_tasks" title="Permalink to this definition">¶</a></dt>
+<dd><p>Schedule all waiting periodic tasks for execution.</p>
+<p>Returns list of <tt class="xref docutils literal"><span class="pre">celery.models.PeriodicTaskMeta</span></tt> objects.</p>
+</dd></dl>
+
+<dl class="method">
+<dt id="celery.worker.TaskDaemon.schedule_retry_tasks">
+<tt class="descname">schedule_retry_tasks</tt><big>(</big><big>)</big><a class="headerlink" href="#celery.worker.TaskDaemon.schedule_retry_tasks" title="Permalink to this definition">¶</a></dt>
+<dd>Reschedule all requeued tasks waiting for retry.</dd></dl>
+
+</dd></dl>
+
+<dl class="class">
+<dt id="celery.worker.TaskWrapper">
+<em class="property">
+class </em><tt class="descclassname">celery.worker.</tt><tt class="descname">TaskWrapper</tt><big>(</big><em>task_name</em>, <em>task_id</em>, <em>task_func</em>, <em>args</em>, <em>kwargs</em><big>)</big><a class="headerlink" href="#celery.worker.TaskWrapper" title="Permalink to this definition">¶</a></dt>
+<dd><p>Class defining a task to be run.</p>
+<dl class="method">
+<dt id="celery.worker.TaskWrapper.execute">
+<tt class="descname">execute</tt><big>(</big><em>loglevel</em>, <em>logfile</em><big>)</big><a class="headerlink" href="#celery.worker.TaskWrapper.execute" title="Permalink to this definition">¶</a></dt>
+<dd>Execute the task in a <tt class="docutils literal"><span class="pre">jail()</span></tt> and store its result and status
+in the task meta backend.</dd></dl>
+
+<dl class="method">
+<dt id="celery.worker.TaskWrapper.execute_using_pool">
+<tt class="descname">execute_using_pool</tt><big>(</big><em>pool</em>, <em>loglevel</em>, <em>logfile</em><big>)</big><a class="headerlink" href="#celery.worker.TaskWrapper.execute_using_pool" title="Permalink to this definition">¶</a></dt>
+<dd>Like <tt class="docutils literal"><span class="pre">execute</span></tt>, but using the <tt class="docutils literal"><span class="pre">multiprocessing</span></tt> pool.</dd></dl>
+
+<dl class="method">
+<dt id="celery.worker.TaskWrapper.extend_kwargs_with_logging">
+<tt class="descname">extend_kwargs_with_logging</tt><big>(</big><em>loglevel</em>, <em>logfile</em><big>)</big><a class="headerlink" href="#celery.worker.TaskWrapper.extend_kwargs_with_logging" title="Permalink to this definition">¶</a></dt>
+<dd><p>Extend the tasks keyword arguments with standard task arguments.</p>
+<p>These are <tt class="docutils literal"><span class="pre">logfile</span></tt>, <tt class="docutils literal"><span class="pre">loglevel</span></tt>, <tt class="docutils literal"><span class="pre">task_id</span></tt> and <tt class="docutils literal"><span class="pre">task_name</span></tt>.</p>
+</dd></dl>
+
+<dl class="classmethod">
+<dt id="celery.worker.TaskWrapper.from_message">
+<em class="property">
+classmethod </em><tt class="descname">from_message</tt><big>(</big><em>message</em><big>)</big><a class="headerlink" href="#celery.worker.TaskWrapper.from_message" title="Permalink to this definition">¶</a></dt>
+<dd>Create a TaskWrapper from a message returned by
+<a title="celery.messaging.TaskConsumer" class="reference external" href="celery.messaging.html#celery.messaging.TaskConsumer"><tt class="xref docutils literal"><span class="pre">celery.messaging.TaskConsumer</span></tt></a>.</dd></dl>
+
+</dd></dl>
+
+<dl class="exception">
+<dt id="celery.worker.UnknownTask">
+<em class="property">
+exception </em><tt class="descclassname">celery.worker.</tt><tt class="descname">UnknownTask</tt><a class="headerlink" href="#celery.worker.UnknownTask" title="Permalink to this definition">¶</a></dt>
+<dd>Got an unknown task in the queue. The message is requeued and
+ignored.</dd></dl>
+
+<dl class="function">
+<dt id="celery.worker.jail">
+<tt class="descclassname">celery.worker.</tt><tt class="descname">jail</tt><big>(</big><em>task_id</em>, <em>callable_</em>, <em>args</em>, <em>kwargs</em><big>)</big><a class="headerlink" href="#celery.worker.jail" title="Permalink to this definition">¶</a></dt>
+<dd>Wraps the task in a jail which saves the status and result
+of the task execution to the task meta backend.</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+            <h4>Previous topic</h4>
+            <p class="topless"><a href="celery.discovery.html"
+                                  title="previous chapter">Task Discovery - celery.discovery</a></p>
+            <h4>Next topic</h4>
+            <p class="topless"><a href="celery.backends.html"
+                                  title="next chapter">Backends - celery.backends</a></p>
+            <h3>This Page</h3>
+            <ul class="this-page-menu">
+              <li><a href="../sources/reference/celery.worker.txt"
+                     rel="nofollow">Show Source</a></li>
+            </ul>
+          <div id="searchbox" style="display: none">
+            <h3>Quick search</h3>
+              <form class="search" action="../search.html" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="Go" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              Enter search terms or a module, class or function name.
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="celery.backends.html" title="Backends - celery.backends"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="celery.discovery.html" title="Task Discovery - celery.discovery"
+             >previous</a> |</li>
+        <li><a href="../index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  </body>
+</html>

+ 97 - 0
search.html

@@ -0,0 +1,97 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Search &mdash; Celery v0.1.12 documentation</title>
+    <link rel="stylesheet" href="static/default.css" type="text/css" />
+    <link rel="stylesheet" href="static/pygments.css" type="text/css" />
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '',
+        VERSION:     '0.1.12',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="static/jquery.js"></script>
+    <script type="text/javascript" src="static/doctools.js"></script>
+    <script type="text/javascript" src="static/searchtools.js"></script>
+    <link rel="top" title="Celery v0.1.12 documentation" href="index.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="modindex.html" title="Global Module Index"
+             accesskey="M">modules</a> |</li>
+        <li><a href="index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <h1 id="search-documentation">Search</h1>
+  <div id="fallback" class="admonition warning">
+  <script type="text/javascript">$('#fallback').hide();</script>
+  <p>
+    Please activate JavaScript to enable the search
+    functionality.
+  </p>
+  </div>
+  <p>
+    From here you can search these documents. Enter your search
+    words into the box below and click "search". Note that the search
+    function will automatically search for all of the words. Pages
+    containing fewer words won't appear in the result list.
+  </p>
+  <form action="" method="get">
+    <input type="text" name="q" value="" />
+    <input type="submit" value="search" />
+    <span id="search-progress" style="padding-left: 10px"></span>
+  </form>
+  
+  <div id="search-results">
+  
+  </div>
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="modindex.html" title="Global Module Index"
+             >modules</a> |</li>
+        <li><a href="index.html">Celery v0.1.12 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+  
+    <div class="footer">
+      &copy; Copyright 2009, Ask Solem.
+      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+    </div>
+  <script type="text/javascript" src="searchindex.js"></script>
+
+  </body>
+</html>

File diff suppressed because it is too large
+ 0 - 0
searchindex.js


+ 40 - 0
sources/index.txt

@@ -0,0 +1,40 @@
+.. Celery documentation master file, created by sphinx-quickstart on Mon May 18 21:37:44 2009.
+   You can adapt this file completely to your liking, but it should at least
+   contain the root `toctree` directive.
+
+Welcome to Celery's documentation!
+==================================
+
+Contents:
+
+.. toctree::
+    :maxdepth: 2
+   
+    reference/celery.task
+    reference/celery.result
+    reference/celery.registry
+    reference/celery.discovery
+    reference/celery.worker
+    reference/celery.backends
+    reference/celery.backends.base
+    reference/celery.backends.database
+    reference/celery.backends.cache
+    reference/celery.backends.tyrant
+    reference/celery.conf
+    reference/celery.datastructures
+    reference/celery.log
+    reference/celery.managers
+    reference/celery.models
+    reference/celery.messaging
+    reference/celery.platform
+    reference/celery.timer
+    reference/celery.bin.celeryd
+
+
+Indices and tables
+==================
+
+* :ref:`genindex`
+* :ref:`modindex`
+* :ref:`search`
+

+ 10 - 0
sources/reference/celery.backends.base.txt

@@ -0,0 +1,10 @@
+===================================
+Backend: Base - celery.backends.base
+===================================
+
+.. currentmodule:: celery.backends.base
+
+.. automodule:: celery.backends.base
+    :members:
+
+

+ 8 - 0
sources/reference/celery.backends.cache.txt

@@ -0,0 +1,8 @@
+===================================
+Backend: Cache - celery.backends.cache
+===================================
+
+.. currentmodule:: celery.backends.cache
+
+.. automodule:: celery.backends.cache
+    :members:

+ 8 - 0
sources/reference/celery.backends.database.txt

@@ -0,0 +1,8 @@
+=============================================
+Backend: Database - celery.backends.database
+=============================================
+
+.. currentmodule:: celery.backends.database
+
+.. automodule:: celery.backends.database
+    :members:

+ 21 - 0
sources/reference/celery.backends.txt

@@ -0,0 +1,21 @@
+===========================
+Backends - celery.backends
+===========================
+
+.. currentmodule:: celery.backends
+
+.. automodule:: celery.backends
+    :members:
+
+.. function:: get_default_backend_cls()
+
+    Get the backend class specified in ``settings.CELERY_BACKEND``.
+
+.. class:: DefaultBackend
+
+    The backend class specified in ``settings.CELERY_BACKEND``.
+
+.. data:: default_backend
+
+    An instance of :class:`DefaultBackend`.
+    

+ 14 - 0
sources/reference/celery.backends.tyrant.txt

@@ -0,0 +1,14 @@
+===============================================
+Backend: Tokyo Tyrant - celery.backends.tyrant
+===============================================
+
+.. currentmodule:: celery.backends.tyrant
+
+.. data:: TT_HOST
+    The hostname for the Tokyo Tyrant server. Taken from Django settings.
+
+.. data:: TT_PORT
+    The port for the Tokyo Tyrant server. Taken from Django settings.
+
+.. automodule:: celery.backends.tyrant
+    :members:

+ 8 - 0
sources/reference/celery.bin.celeryd.txt

@@ -0,0 +1,8 @@
+==========================================
+Celery Worker Daemon - celery.bin.celeryd
+==========================================
+
+.. currentmodule:: celery.bin.celeryd
+
+.. automodule:: celery.bin.celeryd
+    :members:

+ 47 - 0
sources/reference/celery.conf.txt

@@ -0,0 +1,47 @@
+============================
+Configuration - celery.conf
+============================
+
+.. currentmodule:: celery.conf
+
+.. automodule:: celery.conf
+    :members:
+
+.. data:: AMQP_EXCHANGE
+    The AMQP exchange.
+
+.. data:: AMQP_ROUTING_KEY
+    The AMQP routing key.
+
+.. data:: AMQP_CONSUMER_QUEUE
+    The name of the AMQP queue.
+
+.. data:: DAEMON_CONCURRENCY
+    The number of worker processes, that should work simultaenously.
+
+.. data:: DAEMON_PID_FILE
+    Full path to the daemon pid file.
+
+.. data:: EMPTY_MSG_EMIT_EVERY
+    How often the celery daemon should write a log message saying there are no
+    messages in the queue. If this is ``None`` or ``0``, it will never print
+    this message.
+
+.. data:: QUEUE_WAKEUP_AFTER
+    The time (in seconds) the celery daemon should sleep when there are no messages
+    left on the queue. After the time is slept, the worker wakes up and
+    checks the queue again.
+
+.. data:: DAEMON_LOG_LEVEL
+    Celery daemon log level, could be any of ``DEBUG``, ``INFO``, ``WARNING``,
+    ``ERROR``, ``CRITICAL``, or ``FATAL``.
+
+.. data:: DAEMON_LOG_FILE
+    The path to the deamon log file (if not set, ``stderr`` is used).
+
+.. data:: LOG_FORMAT
+    The format to use for log messages.
+    Default is ``[%(asctime)s: %(levelname)s/%(processName)s] %(message)s``
+
+.. data:: LOG_LEVELS
+    Mapping of log level names to ``logging`` module constants.

+ 8 - 0
sources/reference/celery.datastructures.txt

@@ -0,0 +1,8 @@
+=======================================
+Datastructures - celery.datastructures
+=======================================
+
+.. currentmodule:: celery.datastructures
+
+.. automodule:: celery.datastructures
+    ::members::

+ 8 - 0
sources/reference/celery.discovery.txt

@@ -0,0 +1,8 @@
+==================================
+Task Discovery - celery.discovery
+==================================
+
+.. currentmodule:: celery.discovery
+
+.. automodule:: celery.discovery
+    :members:

+ 8 - 0
sources/reference/celery.log.txt

@@ -0,0 +1,8 @@
+==========================
+Logging - celery.log
+==========================
+
+.. currentmodule:: celery.log
+
+.. automodule:: celery.log
+    :members:

+ 8 - 0
sources/reference/celery.managers.txt

@@ -0,0 +1,8 @@
+========================================
+Django Model Managers - celery.managers
+========================================
+
+.. currentmodule:: celery.managers
+
+.. automodule:: celery.managers
+    :members:

+ 8 - 0
sources/reference/celery.messaging.txt

@@ -0,0 +1,8 @@
+==============================
+Messaging - celery.messaging
+==============================
+
+.. currentmodule:: celery.messaging
+
+.. automodule:: celery.messaging
+    :members:

+ 60 - 0
sources/reference/celery.models.txt

@@ -0,0 +1,60 @@
+===============================
+Django Models - celery.models
+===============================
+
+.. data:: TASK_STATUS_PENDING
+    The string status of a pending task.
+
+.. data:: TASK_STATUS_RETRY
+    The string status of a task which is to be retried.
+
+.. data:: TASK_STATUS_FAILURE
+    The string status of a failed task.
+
+.. data:: TASK_STATUS_DONE
+    The string status of a task that was successfully executed.
+
+.. data:: TASK_STATUSES
+    List of possible task statuses.
+
+.. data:: TASK_STATUSES_CHOICES
+    Django choice tuple of possible task statuses, for usage in model/form
+    fields ``choices`` argument.
+
+.. class:: TaskMeta
+    Model for storing the result and status of a task.
+    
+    *Note* Only used if you're running the ``database`` backend.
+
+    .. attribute:: task_id
+        The unique task id.
+
+    .. attribute:: status
+        The current status for this task.
+
+    .. attribute:: result
+        The result after successful/failed execution. If the task failed,
+        this contains the execption it raised.
+
+    .. attribute:: date_done
+        The date this task changed status.
+
+.. class:: PeriodicTaskMeta
+    Metadata model for periodic tasks.
+
+    .. attribute:: name
+        The name of this task, as registered in the task registry.
+
+    .. attribute:: last_run_at
+        The date this periodic task was last run. Used to find out
+        when it should be run next.
+
+    .. attribute:: total_run_count
+        The number of times this periodic task has been run.
+
+    .. attribute:: task
+        The class/function for this task.
+
+    .. method:: delay()
+        Delay the execution of a periodic task, and increment its total
+        run count.

+ 10 - 0
sources/reference/celery.platform.txt

@@ -0,0 +1,10 @@
+====================================
+Platform Specific - celery.platform
+====================================
+
+.. currentmodule:: celery.platform
+
+.. automodule:: celery.platform
+    :members:
+
+

+ 11 - 0
sources/reference/celery.registry.txt

@@ -0,0 +1,11 @@
+================================
+Task Registry - celery.registry
+================================
+
+.. currentmodule:: celery.registry
+
+.. automodule:: celery.registry
+    :members:
+
+.. data:: tasks
+    The global task registry.

+ 8 - 0
sources/reference/celery.result.txt

@@ -0,0 +1,8 @@
+=============================
+Task Result - celery.result
+=============================
+
+.. currentmodule:: celery.result
+
+.. automodule:: celery.result
+    :members:

+ 8 - 0
sources/reference/celery.task.txt

@@ -0,0 +1,8 @@
+=================================
+Tasks - celery.task
+=================================
+
+.. currentmodule:: celery.task
+
+.. automodule:: celery.task
+    :members:

+ 8 - 0
sources/reference/celery.timer.txt

@@ -0,0 +1,8 @@
+======================
+Timers - celery.timer
+======================
+
+.. currentmodule:: celery.timer
+
+.. automodule:: celery.timer
+    :members:

+ 8 - 0
sources/reference/celery.worker.txt

@@ -0,0 +1,8 @@
+========================================
+Multiprocessing Worker - celery.worker
+========================================
+
+.. currentmodule:: celery.worker
+
+.. automodule:: celery.worker
+    :members:

+ 414 - 0
static/basic.css

@@ -0,0 +1,414 @@
+/**
+ * Sphinx stylesheet -- basic theme
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ */
+
+/* -- main layout ----------------------------------------------------------- */
+
+div.documentwrapper {
+    float: left;
+    width: 100%;
+}
+
+div.bodywrapper {
+    margin: 0 0 0 230px;
+}
+
+div.clearer {
+    clear: both;
+}
+
+/* -- relbar ---------------------------------------------------------------- */
+
+div.related {
+    width: 100%;
+    font-size: 90%;
+}
+
+div.related h3 {
+    display: none;
+}
+
+div.related ul {
+    margin: 0;
+    padding: 0 0 0 10px;
+    list-style: none;
+}
+
+div.related li {
+    display: inline;
+}
+
+div.related li.right {
+    float: right;
+    margin-right: 5px;
+}
+
+/* -- sidebar --------------------------------------------------------------- */
+
+div.sphinxsidebarwrapper {
+    padding: 10px 5px 0 10px;
+}
+
+div.sphinxsidebar {
+    float: left;
+    width: 230px;
+    margin-left: -100%;
+    font-size: 90%;
+}
+
+div.sphinxsidebar ul {
+    list-style: none;
+}
+
+div.sphinxsidebar ul ul,
+div.sphinxsidebar ul.want-points {
+    margin-left: 20px;
+    list-style: square;
+}
+
+div.sphinxsidebar ul ul {
+    margin-top: 0;
+    margin-bottom: 0;
+}
+
+div.sphinxsidebar form {
+    margin-top: 10px;
+}
+
+div.sphinxsidebar input {
+    border: 1px solid #98dbcc;
+    font-family: sans-serif;
+    font-size: 1em;
+}
+
+img {
+    border: 0;
+}
+
+/* -- search page ----------------------------------------------------------- */
+
+ul.search {
+    margin: 10px 0 0 20px;
+    padding: 0;
+}
+
+ul.search li {
+    padding: 5px 0 5px 20px;
+    background-image: url(file.png);
+    background-repeat: no-repeat;
+    background-position: 0 7px;
+}
+
+ul.search li a {
+    font-weight: bold;
+}
+
+ul.search li div.context {
+    color: #888;
+    margin: 2px 0 0 30px;
+    text-align: left;
+}
+
+ul.keywordmatches li.goodmatch a {
+    font-weight: bold;
+}
+
+/* -- index page ------------------------------------------------------------ */
+
+table.contentstable {
+    width: 90%;
+}
+
+table.contentstable p.biglink {
+    line-height: 150%;
+}
+
+a.biglink {
+    font-size: 1.3em;
+}
+
+span.linkdescr {
+    font-style: italic;
+    padding-top: 5px;
+    font-size: 90%;
+}
+
+/* -- general index --------------------------------------------------------- */
+
+table.indextable td {
+    text-align: left;
+    vertical-align: top;
+}
+
+table.indextable dl, table.indextable dd {
+    margin-top: 0;
+    margin-bottom: 0;
+}
+
+table.indextable tr.pcap {
+    height: 10px;
+}
+
+table.indextable tr.cap {
+    margin-top: 10px;
+    background-color: #f2f2f2;
+}
+
+img.toggler {
+    margin-right: 3px;
+    margin-top: 3px;
+    cursor: pointer;
+}
+
+/* -- general body styles --------------------------------------------------- */
+
+a.headerlink {
+    visibility: hidden;
+}
+
+h1:hover > a.headerlink,
+h2:hover > a.headerlink,
+h3:hover > a.headerlink,
+h4:hover > a.headerlink,
+h5:hover > a.headerlink,
+h6:hover > a.headerlink,
+dt:hover > a.headerlink {
+    visibility: visible;
+}
+
+div.body p.caption {
+    text-align: inherit;
+}
+
+div.body td {
+    text-align: left;
+}
+
+.field-list ul {
+    padding-left: 1em;
+}
+
+.first {
+    margin-top: 0 !important;
+}
+
+p.rubric {
+    margin-top: 30px;
+    font-weight: bold;
+}
+
+/* -- sidebars -------------------------------------------------------------- */
+
+div.sidebar {
+    margin: 0 0 0.5em 1em;
+    border: 1px solid #ddb;
+    padding: 7px 7px 0 7px;
+    background-color: #ffe;
+    width: 40%;
+    float: right;
+}
+
+p.sidebar-title {
+    font-weight: bold;
+}
+
+/* -- topics ---------------------------------------------------------------- */
+
+div.topic {
+    border: 1px solid #ccc;
+    padding: 7px 7px 0 7px;
+    margin: 10px 0 10px 0;
+}
+
+p.topic-title {
+    font-size: 1.1em;
+    font-weight: bold;
+    margin-top: 10px;
+}
+
+/* -- admonitions ----------------------------------------------------------- */
+
+div.admonition {
+    margin-top: 10px;
+    margin-bottom: 10px;
+    padding: 7px;
+}
+
+div.admonition dt {
+    font-weight: bold;
+}
+
+div.admonition dl {
+    margin-bottom: 0;
+}
+
+p.admonition-title {
+    margin: 0px 10px 5px 0px;
+    font-weight: bold;
+}
+
+div.body p.centered {
+    text-align: center;
+    margin-top: 25px;
+}
+
+/* -- tables ---------------------------------------------------------------- */
+
+table.docutils {
+    border: 0;
+    border-collapse: collapse;
+}
+
+table.docutils td, table.docutils th {
+    padding: 1px 8px 1px 0;
+    border-top: 0;
+    border-left: 0;
+    border-right: 0;
+    border-bottom: 1px solid #aaa;
+}
+
+table.field-list td, table.field-list th {
+    border: 0 !important;
+}
+
+table.footnote td, table.footnote th {
+    border: 0 !important;
+}
+
+th {
+    text-align: left;
+    padding-right: 5px;
+}
+
+/* -- other body styles ----------------------------------------------------- */
+
+dl {
+    margin-bottom: 15px;
+}
+
+dd p {
+    margin-top: 0px;
+}
+
+dd ul, dd table {
+    margin-bottom: 10px;
+}
+
+dd {
+    margin-top: 3px;
+    margin-bottom: 10px;
+    margin-left: 30px;
+}
+
+dt:target, .highlight {
+    background-color: #fbe54e;
+}
+
+dl.glossary dt {
+    font-weight: bold;
+    font-size: 1.1em;
+}
+
+.field-list ul {
+    margin: 0;
+    padding-left: 1em;
+}
+
+.field-list p {
+    margin: 0;
+}
+
+.refcount {
+    color: #060;
+}
+
+.optional {
+    font-size: 1.3em;
+}
+
+.versionmodified {
+    font-style: italic;
+}
+
+.system-message {
+    background-color: #fda;
+    padding: 5px;
+    border: 3px solid red;
+}
+
+.footnote:target  {
+    background-color: #ffa
+}
+
+/* -- code displays --------------------------------------------------------- */
+
+pre {
+    overflow: auto;
+}
+
+td.linenos pre {
+    padding: 5px 0px;
+    border: 0;
+    background-color: transparent;
+    color: #aaa;
+}
+
+table.highlighttable {
+    margin-left: 0.5em;
+}
+
+table.highlighttable td {
+    padding: 0 0.5em 0 0.5em;
+}
+
+tt.descname {
+    background-color: transparent;
+    font-weight: bold;
+    font-size: 1.2em;
+}
+
+tt.descclassname {
+    background-color: transparent;
+}
+
+tt.xref, a tt {
+    background-color: transparent;
+    font-weight: bold;
+}
+
+h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt {
+    background-color: transparent;
+}
+
+/* -- math display ---------------------------------------------------------- */
+
+img.math {
+    vertical-align: middle;
+}
+
+div.math p {
+    text-align: center;
+}
+
+span.eqno {
+    float: right;
+}
+
+/* -- printout stylesheet --------------------------------------------------- */
+
+@media print {
+    div.document,
+    div.documentwrapper,
+    div.bodywrapper {
+        margin: 0;
+        width: 100%;
+    }
+
+    div.sphinxsidebar,
+    div.related,
+    div.footer,
+    #top-link {
+        display: none;
+    }
+}

+ 201 - 0
static/default.css

@@ -0,0 +1,201 @@
+/**
+ * Sphinx stylesheet -- default theme
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ */
+
+@import url("basic.css");
+
+/* -- page layout ----------------------------------------------------------- */
+
+body {
+    font-family: sans-serif;
+    font-size: 100%;
+    background-color: #11303d;
+    color: #000;
+    margin: 0;
+    padding: 0;
+}
+
+div.document {
+    background-color: #1c4e63;
+}
+
+div.body {
+    background-color: #ffffff;
+    color: #000000;
+    padding: 0 20px 30px 20px;
+}
+
+div.footer {
+    color: #ffffff;
+    width: 100%;
+    padding: 9px 0 9px 0;
+    text-align: center;
+    font-size: 75%;
+}
+
+div.footer a {
+    color: #ffffff;
+    text-decoration: underline;
+}
+
+div.related {
+    background-color: #133f52;
+    line-height: 30px;
+    color: #ffffff;
+}
+
+div.related a {
+    color: #ffffff;
+}
+
+div.sphinxsidebar {
+}
+
+div.sphinxsidebar h3 {
+    font-family: 'Trebuchet MS', sans-serif;
+    color: #ffffff;
+    font-size: 1.4em;
+    font-weight: normal;
+    margin: 0;
+    padding: 0;
+}
+
+div.sphinxsidebar h3 a {
+    color: #ffffff;
+}
+
+div.sphinxsidebar h4 {
+    font-family: 'Trebuchet MS', sans-serif;
+    color: #ffffff;
+    font-size: 1.3em;
+    font-weight: normal;
+    margin: 5px 0 0 0;
+    padding: 0;
+}
+
+div.sphinxsidebar p {
+    color: #ffffff;
+}
+
+div.sphinxsidebar p.topless {
+    margin: 5px 10px 10px 10px;
+}
+
+div.sphinxsidebar ul {
+    margin: 10px;
+    padding: 0;
+    color: #ffffff;
+}
+
+div.sphinxsidebar a {
+    color: #98dbcc;
+}
+
+div.sphinxsidebar input {
+    border: 1px solid #98dbcc;
+    font-family: sans-serif;
+    font-size: 1em;
+}
+
+/* -- body styles ----------------------------------------------------------- */
+
+a {
+    color: #355f7c;
+    text-decoration: none;
+}
+
+a:hover {
+    text-decoration: underline;
+}
+
+div.body p, div.body dd, div.body li {
+    text-align: justify;
+    line-height: 130%;
+}
+
+div.body h1,
+div.body h2,
+div.body h3,
+div.body h4,
+div.body h5,
+div.body h6 {
+    font-family: 'Trebuchet MS', sans-serif;
+    background-color: #f2f2f2;
+    font-weight: normal;
+    color: #20435c;
+    border-bottom: 1px solid #ccc;
+    margin: 20px -20px 10px -20px;
+    padding: 3px 0 3px 10px;
+}
+
+div.body h1 { margin-top: 0; font-size: 200%; }
+div.body h2 { font-size: 160%; }
+div.body h3 { font-size: 140%; }
+div.body h4 { font-size: 120%; }
+div.body h5 { font-size: 110%; }
+div.body h6 { font-size: 100%; }
+
+a.headerlink {
+    color: #c60f0f;
+    font-size: 0.8em;
+    padding: 0 4px 0 4px;
+    text-decoration: none;
+}
+
+a.headerlink:hover {
+    background-color: #c60f0f;
+    color: white;
+}
+
+div.body p, div.body dd, div.body li {
+    text-align: justify;
+    line-height: 130%;
+}
+
+div.admonition p.admonition-title + p {
+    display: inline;
+}
+
+div.note {
+    background-color: #eee;
+    border: 1px solid #ccc;
+}
+
+div.seealso {
+    background-color: #ffc;
+    border: 1px solid #ff6;
+}
+
+div.topic {
+    background-color: #eee;
+}
+
+div.warning {
+    background-color: #ffe4e4;
+    border: 1px solid #f66;
+}
+
+p.admonition-title {
+    display: inline;
+}
+
+p.admonition-title:after {
+    content: ":";
+}
+
+pre {
+    padding: 5px;
+    background-color: #eeffcc;
+    color: #333333;
+    line-height: 120%;
+    border: 1px solid #ac9;
+    border-left: none;
+    border-right: none;
+}
+
+tt {
+    background-color: #ecf0f3;
+    padding: 0 1px 0 1px;
+    font-size: 0.95em;
+}

+ 232 - 0
static/doctools.js

@@ -0,0 +1,232 @@
+/// XXX: make it cross browser
+
+/**
+ * make the code below compatible with browsers without
+ * an installed firebug like debugger
+ */
+if (!window.console || !console.firebug) {
+  var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
+      "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
+  window.console = {};
+  for (var i = 0; i < names.length; ++i)
+    window.console[names[i]] = function() {}
+}
+
+/**
+ * small helper function to urldecode strings
+ */
+jQuery.urldecode = function(x) {
+  return decodeURIComponent(x).replace(/\+/g, ' ');
+}
+
+/**
+ * small helper function to urlencode strings
+ */
+jQuery.urlencode = encodeURIComponent;
+
+/**
+ * This function returns the parsed url parameters of the
+ * current request. Multiple values per key are supported,
+ * it will always return arrays of strings for the value parts.
+ */
+jQuery.getQueryParameters = function(s) {
+  if (typeof s == 'undefined')
+    s = document.location.search;
+  var parts = s.substr(s.indexOf('?') + 1).split('&');
+  var result = {};
+  for (var i = 0; i < parts.length; i++) {
+    var tmp = parts[i].split('=', 2);
+    var key = jQuery.urldecode(tmp[0]);
+    var value = jQuery.urldecode(tmp[1]);
+    if (key in result)
+      result[key].push(value);
+    else
+      result[key] = [value];
+  }
+  return result;
+}
+
+/**
+ * small function to check if an array contains
+ * a given item.
+ */
+jQuery.contains = function(arr, item) {
+  for (var i = 0; i < arr.length; i++) {
+    if (arr[i] == item)
+      return true;
+  }
+  return false;
+}
+
+/**
+ * highlight a given string on a jquery object by wrapping it in
+ * span elements with the given class name.
+ */
+jQuery.fn.highlightText = function(text, className) {
+  function highlight(node) {
+    if (node.nodeType == 3) {
+      var val = node.nodeValue;
+      var pos = val.toLowerCase().indexOf(text);
+      if (pos >= 0 && !jQuery.className.has(node.parentNode, className)) {
+        var span = document.createElement("span");
+        span.className = className;
+        span.appendChild(document.createTextNode(val.substr(pos, text.length)));
+        node.parentNode.insertBefore(span, node.parentNode.insertBefore(
+          document.createTextNode(val.substr(pos + text.length)),
+          node.nextSibling));
+        node.nodeValue = val.substr(0, pos);
+      }
+    }
+    else if (!jQuery(node).is("button, select, textarea")) {
+      jQuery.each(node.childNodes, function() {
+        highlight(this)
+      });
+    }
+  }
+  return this.each(function() {
+    highlight(this);
+  });
+}
+
+/**
+ * Small JavaScript module for the documentation.
+ */
+var Documentation = {
+
+  init : function() {
+    this.fixFirefoxAnchorBug();
+    this.highlightSearchWords();
+    this.initModIndex();
+  },
+
+  /**
+   * i18n support
+   */
+  TRANSLATIONS : {},
+  PLURAL_EXPR : function(n) { return n == 1 ? 0 : 1; },
+  LOCALE : 'unknown',
+
+  // gettext and ngettext don't access this so that the functions
+  // can savely bound to a different name (_ = Documentation.gettext)
+  gettext : function(string) {
+    var translated = Documentation.TRANSLATIONS[string];
+    if (typeof translated == 'undefined')
+      return string;
+    return (typeof translated == 'string') ? translated : translated[0];
+  },
+
+  ngettext : function(singular, plural, n) {
+    var translated = Documentation.TRANSLATIONS[singular];
+    if (typeof translated == 'undefined')
+      return (n == 1) ? singular : plural;
+    return translated[Documentation.PLURALEXPR(n)];
+  },
+
+  addTranslations : function(catalog) {
+    for (var key in catalog.messages)
+      this.TRANSLATIONS[key] = catalog.messages[key];
+    this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')');
+    this.LOCALE = catalog.locale;
+  },
+
+  /**
+   * add context elements like header anchor links
+   */
+  addContextElements : function() {
+    $('div[id] > :header:first').each(function() {
+      $('<a class="headerlink">\u00B6</a>').
+      attr('href', '#' + this.id).
+      attr('title', _('Permalink to this headline')).
+      appendTo(this);
+    });
+    $('dt[id]').each(function() {
+      $('<a class="headerlink">\u00B6</a>').
+      attr('href', '#' + this.id).
+      attr('title', _('Permalink to this definition')).
+      appendTo(this);
+    });
+  },
+
+  /**
+   * workaround a firefox stupidity
+   */
+  fixFirefoxAnchorBug : function() {
+    if (document.location.hash && $.browser.mozilla)
+      window.setTimeout(function() {
+        document.location.href += '';
+      }, 10);
+  },
+
+  /**
+   * highlight the search words provided in the url in the text
+   */
+  highlightSearchWords : function() {
+    var params = $.getQueryParameters();
+    var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : [];
+    if (terms.length) {
+      var body = $('div.body');
+      window.setTimeout(function() {
+        $.each(terms, function() {
+          body.highlightText(this.toLowerCase(), 'highlight');
+        });
+      }, 10);
+      $('<li class="highlight-link"><a href="javascript:Documentation.' +
+        'hideSearchWords()">' + _('Hide Search Matches') + '</a></li>')
+          .appendTo($('.sidebar .this-page-menu'));
+    }
+  },
+
+  /**
+   * init the modindex toggle buttons
+   */
+  initModIndex : function() {
+    var togglers = $('img.toggler').click(function() {
+      var src = $(this).attr('src');
+      var idnum = $(this).attr('id').substr(7);
+      console.log($('tr.cg-' + idnum).toggle());
+      if (src.substr(-9) == 'minus.png')
+        $(this).attr('src', src.substr(0, src.length-9) + 'plus.png');
+      else
+        $(this).attr('src', src.substr(0, src.length-8) + 'minus.png');
+    }).css('display', '');
+    if (DOCUMENTATION_OPTIONS.COLLAPSE_MODINDEX) {
+        togglers.click();
+    }
+  },
+
+  /**
+   * helper function to hide the search marks again
+   */
+  hideSearchWords : function() {
+    $('.sidebar .this-page-menu li.highlight-link').fadeOut(300);
+    $('span.highlight').removeClass('highlight');
+  },
+
+  /**
+   * make the url absolute
+   */
+  makeURL : function(relativeURL) {
+    return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL;
+  },
+
+  /**
+   * get the current relative url
+   */
+  getCurrentURL : function() {
+    var path = document.location.pathname;
+    var parts = path.split(/\//);
+    $.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() {
+      if (this == '..')
+        parts.pop();
+    });
+    var url = parts.join('/');
+    return path.substring(url.lastIndexOf('/') + 1, path.length - 1);
+  }
+};
+
+// quick alias for translations
+_ = Documentation.gettext;
+
+$(document).ready(function() {
+  Documentation.init();
+});

二進制
static/file.png


File diff suppressed because it is too large
+ 11 - 0
static/jquery.js


二進制
static/minus.png


二進制
static/plus.png


+ 59 - 0
static/pygments.css

@@ -0,0 +1,59 @@
+.hll { background-color: #ffffcc }
+.c { color: #999988; font-style: italic } /* Comment */
+.err { color: #a61717; background-color: #e3d2d2 } /* Error */
+.k { font-weight: bold } /* Keyword */
+.o { font-weight: bold } /* Operator */
+.cm { color: #999988; font-style: italic } /* Comment.Multiline */
+.cp { color: #999999; font-weight: bold } /* Comment.Preproc */
+.c1 { color: #999988; font-style: italic } /* Comment.Single */
+.cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
+.gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
+.ge { font-style: italic } /* Generic.Emph */
+.gr { color: #aa0000 } /* Generic.Error */
+.gh { color: #999999 } /* Generic.Heading */
+.gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
+.go { color: #888888 } /* Generic.Output */
+.gp { color: #555555 } /* Generic.Prompt */
+.gs { font-weight: bold } /* Generic.Strong */
+.gu { color: #aaaaaa } /* Generic.Subheading */
+.gt { color: #aa0000 } /* Generic.Traceback */
+.kc { font-weight: bold } /* Keyword.Constant */
+.kd { font-weight: bold } /* Keyword.Declaration */
+.kn { font-weight: bold } /* Keyword.Namespace */
+.kp { font-weight: bold } /* Keyword.Pseudo */
+.kr { font-weight: bold } /* Keyword.Reserved */
+.kt { color: #445588; font-weight: bold } /* Keyword.Type */
+.m { color: #009999 } /* Literal.Number */
+.s { color: #bb8844 } /* Literal.String */
+.na { color: #008080 } /* Name.Attribute */
+.nb { color: #999999 } /* Name.Builtin */
+.nc { color: #445588; font-weight: bold } /* Name.Class */
+.no { color: #008080 } /* Name.Constant */
+.ni { color: #800080 } /* Name.Entity */
+.ne { color: #990000; font-weight: bold } /* Name.Exception */
+.nf { color: #990000; font-weight: bold } /* Name.Function */
+.nn { color: #555555 } /* Name.Namespace */
+.nt { color: #000080 } /* Name.Tag */
+.nv { color: #008080 } /* Name.Variable */
+.ow { font-weight: bold } /* Operator.Word */
+.w { color: #bbbbbb } /* Text.Whitespace */
+.mf { color: #009999 } /* Literal.Number.Float */
+.mh { color: #009999 } /* Literal.Number.Hex */
+.mi { color: #009999 } /* Literal.Number.Integer */
+.mo { color: #009999 } /* Literal.Number.Oct */
+.sb { color: #bb8844 } /* Literal.String.Backtick */
+.sc { color: #bb8844 } /* Literal.String.Char */
+.sd { color: #bb8844 } /* Literal.String.Doc */
+.s2 { color: #bb8844 } /* Literal.String.Double */
+.se { color: #bb8844 } /* Literal.String.Escape */
+.sh { color: #bb8844 } /* Literal.String.Heredoc */
+.si { color: #bb8844 } /* Literal.String.Interpol */
+.sx { color: #bb8844 } /* Literal.String.Other */
+.sr { color: #808000 } /* Literal.String.Regex */
+.s1 { color: #bb8844 } /* Literal.String.Single */
+.ss { color: #bb8844 } /* Literal.String.Symbol */
+.bp { color: #999999 } /* Name.Builtin.Pseudo */
+.vc { color: #008080 } /* Name.Variable.Class */
+.vg { color: #008080 } /* Name.Variable.Global */
+.vi { color: #008080 } /* Name.Variable.Instance */
+.il { color: #009999 } /* Literal.Number.Integer.Long */

+ 467 - 0
static/searchtools.js

@@ -0,0 +1,467 @@
+/**
+ * helper function to return a node containing the
+ * search summary for a given text. keywords is a list
+ * of stemmed words, hlwords is the list of normal, unstemmed
+ * words. the first one is used to find the occurance, the
+ * latter for highlighting it.
+ */
+
+jQuery.makeSearchSummary = function(text, keywords, hlwords) {
+  var textLower = text.toLowerCase();
+  var start = 0;
+  $.each(keywords, function() {
+    var i = textLower.indexOf(this.toLowerCase());
+    if (i > -1)
+      start = i;
+  });
+  start = Math.max(start - 120, 0);
+  var excerpt = ((start > 0) ? '...' : '') +
+  $.trim(text.substr(start, 240)) +
+  ((start + 240 - text.length) ? '...' : '');
+  var rv = $('<div class="context"></div>').text(excerpt);
+  $.each(hlwords, function() {
+    rv = rv.highlightText(this, 'highlight');
+  });
+  return rv;
+}
+
+/**
+ * Porter Stemmer
+ */
+var PorterStemmer = function() {
+
+  var step2list = {
+    ational: 'ate',
+    tional: 'tion',
+    enci: 'ence',
+    anci: 'ance',
+    izer: 'ize',
+    bli: 'ble',
+    alli: 'al',
+    entli: 'ent',
+    eli: 'e',
+    ousli: 'ous',
+    ization: 'ize',
+    ation: 'ate',
+    ator: 'ate',
+    alism: 'al',
+    iveness: 'ive',
+    fulness: 'ful',
+    ousness: 'ous',
+    aliti: 'al',
+    iviti: 'ive',
+    biliti: 'ble',
+    logi: 'log'
+  };
+
+  var step3list = {
+    icate: 'ic',
+    ative: '',
+    alize: 'al',
+    iciti: 'ic',
+    ical: 'ic',
+    ful: '',
+    ness: ''
+  };
+
+  var c = "[^aeiou]";          // consonant
+  var v = "[aeiouy]";          // vowel
+  var C = c + "[^aeiouy]*";    // consonant sequence
+  var V = v + "[aeiou]*";      // vowel sequence
+
+  var mgr0 = "^(" + C + ")?" + V + C;                      // [C]VC... is m>0
+  var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$";    // [C]VC[V] is m=1
+  var mgr1 = "^(" + C + ")?" + V + C + V + C;              // [C]VCVC... is m>1
+  var s_v   = "^(" + C + ")?" + v;                         // vowel in stem
+
+  this.stemWord = function (w) {
+    var stem;
+    var suffix;
+    var firstch;
+    var origword = w;
+
+    if (w.length < 3)
+      return w;
+
+    var re;
+    var re2;
+    var re3;
+    var re4;
+
+    firstch = w.substr(0,1);
+    if (firstch == "y")
+      w = firstch.toUpperCase() + w.substr(1);
+
+    // Step 1a
+    re = /^(.+?)(ss|i)es$/;
+    re2 = /^(.+?)([^s])s$/;
+
+    if (re.test(w))
+      w = w.replace(re,"$1$2");
+    else if (re2.test(w))
+      w = w.replace(re2,"$1$2");
+
+    // Step 1b
+    re = /^(.+?)eed$/;
+    re2 = /^(.+?)(ed|ing)$/;
+    if (re.test(w)) {
+      var fp = re.exec(w);
+      re = new RegExp(mgr0);
+      if (re.test(fp[1])) {
+        re = /.$/;
+        w = w.replace(re,"");
+      }
+    }
+    else if (re2.test(w)) {
+      var fp = re2.exec(w);
+      stem = fp[1];
+      re2 = new RegExp(s_v);
+      if (re2.test(stem)) {
+        w = stem;
+        re2 = /(at|bl|iz)$/;
+        re3 = new RegExp("([^aeiouylsz])\\1$");
+        re4 = new RegExp("^" + C + v + "[^aeiouwxy]$");
+        if (re2.test(w))
+          w = w + "e";
+        else if (re3.test(w)) {
+          re = /.$/;
+          w = w.replace(re,"");
+        }
+        else if (re4.test(w))
+          w = w + "e";
+      }
+    }
+
+    // Step 1c
+    re = /^(.+?)y$/;
+    if (re.test(w)) {
+      var fp = re.exec(w);
+      stem = fp[1];
+      re = new RegExp(s_v);
+      if (re.test(stem))
+        w = stem + "i";
+    }
+
+    // Step 2
+    re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/;
+    if (re.test(w)) {
+      var fp = re.exec(w);
+      stem = fp[1];
+      suffix = fp[2];
+      re = new RegExp(mgr0);
+      if (re.test(stem))
+        w = stem + step2list[suffix];
+    }
+
+    // Step 3
+    re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/;
+    if (re.test(w)) {
+      var fp = re.exec(w);
+      stem = fp[1];
+      suffix = fp[2];
+      re = new RegExp(mgr0);
+      if (re.test(stem))
+        w = stem + step3list[suffix];
+    }
+
+    // Step 4
+    re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/;
+    re2 = /^(.+?)(s|t)(ion)$/;
+    if (re.test(w)) {
+      var fp = re.exec(w);
+      stem = fp[1];
+      re = new RegExp(mgr1);
+      if (re.test(stem))
+        w = stem;
+    }
+    else if (re2.test(w)) {
+      var fp = re2.exec(w);
+      stem = fp[1] + fp[2];
+      re2 = new RegExp(mgr1);
+      if (re2.test(stem))
+        w = stem;
+    }
+
+    // Step 5
+    re = /^(.+?)e$/;
+    if (re.test(w)) {
+      var fp = re.exec(w);
+      stem = fp[1];
+      re = new RegExp(mgr1);
+      re2 = new RegExp(meq1);
+      re3 = new RegExp("^" + C + v + "[^aeiouwxy]$");
+      if (re.test(stem) || (re2.test(stem) && !(re3.test(stem))))
+        w = stem;
+    }
+    re = /ll$/;
+    re2 = new RegExp(mgr1);
+    if (re.test(w) && re2.test(w)) {
+      re = /.$/;
+      w = w.replace(re,"");
+    }
+
+    // and turn initial Y back to y
+    if (firstch == "y")
+      w = firstch.toLowerCase() + w.substr(1);
+    return w;
+  }
+}
+
+
+/**
+ * Search Module
+ */
+var Search = {
+
+  _index : null,
+  _queued_query : null,
+  _pulse_status : -1,
+
+  init : function() {
+      var params = $.getQueryParameters();
+      if (params.q) {
+          var query = params.q[0];
+          $('input[name="q"]')[0].value = query;
+          this.performSearch(query);
+      }
+  },
+
+  /**
+   * Sets the index
+   */
+  setIndex : function(index) {
+    var q;
+    this._index = index;
+    if ((q = this._queued_query) !== null) {
+      this._queued_query = null;
+      Search.query(q);
+    }
+  },
+
+  hasIndex : function() {
+      return this._index !== null;
+  },
+
+  deferQuery : function(query) {
+      this._queued_query = query;
+  },
+
+  stopPulse : function() {
+      this._pulse_status = 0;
+  },
+
+  startPulse : function() {
+    if (this._pulse_status >= 0)
+        return;
+    function pulse() {
+      Search._pulse_status = (Search._pulse_status + 1) % 4;
+      var dotString = '';
+      for (var i = 0; i < Search._pulse_status; i++)
+        dotString += '.';
+      Search.dots.text(dotString);
+      if (Search._pulse_status > -1)
+        window.setTimeout(pulse, 500);
+    };
+    pulse();
+  },
+
+  /**
+   * perform a search for something
+   */
+  performSearch : function(query) {
+    // create the required interface elements
+    this.out = $('#search-results');
+    this.title = $('<h2>' + _('Searching') + '</h2>').appendTo(this.out);
+    this.dots = $('<span></span>').appendTo(this.title);
+    this.status = $('<p style="display: none"></p>').appendTo(this.out);
+    this.output = $('<ul class="search"/>').appendTo(this.out);
+
+    $('#search-progress').text(_('Preparing search...'));
+    this.startPulse();
+
+    // index already loaded, the browser was quick!
+    if (this.hasIndex())
+      this.query(query);
+    else
+      this.deferQuery(query);
+  },
+
+  query : function(query) {
+    // stem the searchterms and add them to the
+    // correct list
+    var stemmer = new PorterStemmer();
+    var searchterms = [];
+    var excluded = [];
+    var hlterms = [];
+    var tmp = query.split(/\s+/);
+    var object = (tmp.length == 1) ? tmp[0].toLowerCase() : null;
+    for (var i = 0; i < tmp.length; i++) {
+      // stem the word
+      var word = stemmer.stemWord(tmp[i]).toLowerCase();
+      // select the correct list
+      if (word[0] == '-') {
+        var toAppend = excluded;
+        word = word.substr(1);
+      }
+      else {
+        var toAppend = searchterms;
+        hlterms.push(tmp[i].toLowerCase());
+      }
+      // only add if not already in the list
+      if (!$.contains(toAppend, word))
+        toAppend.push(word);
+    };
+    var highlightstring = '?highlight=' + $.urlencode(hlterms.join(" "));
+
+    console.debug('SEARCH: searching for:');
+    console.info('required: ', searchterms);
+    console.info('excluded: ', excluded);
+
+    // prepare search
+    var filenames = this._index.filenames;
+    var titles = this._index.titles;
+    var terms = this._index.terms;
+    var descrefs = this._index.descrefs;
+    var modules = this._index.modules;
+    var desctypes = this._index.desctypes;
+    var fileMap = {};
+    var files = null;
+    var objectResults = [];
+    var regularResults = [];
+    $('#search-progress').empty();
+
+    // lookup as object
+    if (object != null) {
+      for (var module in modules) {
+        if (module.indexOf(object) > -1) {
+          fn = modules[module];
+          descr = _('module, in ') + titles[fn];
+          objectResults.push([filenames[fn], module, '#module-'+module, descr]);
+        }
+      }
+      for (var prefix in descrefs) {
+        for (var name in descrefs[prefix]) {
+          if (name.toLowerCase().indexOf(object) > -1) {
+            match = descrefs[prefix][name];
+            fullname = (prefix ? prefix + '.' : '') + name;
+            descr = desctypes[match[1]] + _(', in ') + titles[match[0]];
+            objectResults.push([filenames[match[0]], fullname, '#'+fullname, descr]);
+          }
+        }
+      }
+    }
+
+    // sort results descending
+    objectResults.sort(function(a, b) {
+      return (a[1] > b[1]) ? -1 : ((a[1] < b[1]) ? 1 : 0);
+    });
+
+
+    // perform the search on the required terms
+    for (var i = 0; i < searchterms.length; i++) {
+      var word = searchterms[i];
+      // no match but word was a required one
+      if ((files = terms[word]) == null)
+        break;
+      if (files.length == undefined) {
+        files = [files];
+      }
+      // create the mapping
+      for (var j = 0; j < files.length; j++) {
+        var file = files[j];
+        if (file in fileMap)
+          fileMap[file].push(word);
+        else
+          fileMap[file] = [word];
+      }
+    }
+
+    // now check if the files don't contain excluded terms
+    for (var file in fileMap) {
+      var valid = true;
+
+      // check if all requirements are matched
+      if (fileMap[file].length != searchterms.length)
+        continue;
+
+      // ensure that none of the excluded terms is in the
+      // search result.
+      for (var i = 0; i < excluded.length; i++) {
+        if (terms[excluded[i]] == file ||
+            $.contains(terms[excluded[i]] || [], file)) {
+          valid = false;
+          break;
+        }
+      }
+
+      // if we have still a valid result we can add it
+      // to the result list
+      if (valid)
+        regularResults.push([filenames[file], titles[file], '', null]);
+    }
+
+    // delete unused variables in order to not waste
+    // memory until list is retrieved completely
+    delete filenames, titles, terms;
+
+    // now sort the regular results descending by title
+    regularResults.sort(function(a, b) {
+      var left = a[1].toLowerCase();
+      var right = b[1].toLowerCase();
+      return (left > right) ? -1 : ((left < right) ? 1 : 0);
+    });
+
+    // combine both
+    var results = regularResults.concat(objectResults);
+
+    // print the results
+    var resultCount = results.length;
+    function displayNextItem() {
+      // results left, load the summary and display it
+      if (results.length) {
+        var item = results.pop();
+        var listItem = $('<li style="display:none"></li>');
+        listItem.append($('<a/>').attr(
+          'href',
+          item[0] + DOCUMENTATION_OPTIONS.FILE_SUFFIX +
+          highlightstring + item[2]).html(item[1]));
+        if (item[3]) {
+          listItem.append($('<span> (' + item[3] + ')</span>'));
+          Search.output.append(listItem);
+          listItem.slideDown(5, function() {
+            displayNextItem();
+          });
+        } else if (DOCUMENTATION_OPTIONS.HAS_SOURCE) {
+          $.get('_sources/' + item[0] + '.txt', function(data) {
+            listItem.append($.makeSearchSummary(data, searchterms, hlterms));
+            Search.output.append(listItem);
+            listItem.slideDown(5, function() {
+              displayNextItem();
+            });
+          });
+        } else {
+          // no source available, just display title
+          Search.output.append(listItem);
+          listItem.slideDown(5, function() {
+            displayNextItem();
+          });
+        }
+      }
+      // search finished, update title and status message
+      else {
+        Search.stopPulse();
+        Search.title.text(_('Search Results'));
+        if (!resultCount)
+          Search.status.text(_('Your search did not match any documents. Please make sure that all words are spelled correctly and that you\'ve selected enough categories.'));
+        else
+            Search.status.text(_('Search finished, found %s page(s) matching the search query.').replace('%s', resultCount));
+        Search.status.fadeIn(500);
+      }
+    }
+    displayNextItem();
+  }
+}
+
+$(document).ready(function() {
+  Search.init();
+});

Some files were not shown because too many files changed in this diff