Browse Source

Sphinx generated documentation for the GitHub page.

Ask Solem 16 năm trước cách đây
mục cha
commit
99e51ec0c1
54 tập tin đã thay đổi với 5882 bổ sung72 xóa
  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. BIN
      static/file.png
  50. 11 0
      static/jquery.js
  51. BIN
      static/minus.png
  52. BIN
      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>

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 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();
+});

BIN
static/file.png


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 11 - 0
static/jquery.js


BIN
static/minus.png


BIN
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();
+});

Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác