Directory Queue

Provides a simple queueing system that resides within a directory on disk.

Install with setuptools:
$ easy_install -f http://www.psychofx.com/directory_queue/ DirectoryQueue

Or download DirectoryQueue-1.4.2.egg

Also see source, wiki, tickets.

Example:

  >>> from directory_queue.directory_queue import DirectoryQueue
  >>> from directory_queue.generic_queue_item import GenericQueueItem
  >>> import os
  >>> 
  >>> qdir = '/tmp/queue'
  >>> os.mkdir(qdir)
  >>> dq = DirectoryQueue(qdir, GenericQueueItem)
  >>> 
  >>> item1 = dq.newQueueItem('item1')
  >>> file(item1.dataFileName(), 'w').write('some data')
  >>> item1.writeMetadata({'what': 'anything', 'foo': 'bar'})
  >>> dq.itemReady(item1)
  >>> 
  >>> ready_item1 = dq.getNext()
  >>> md = ready_item1.readMetadata()
  >>> md
  {'what': 'anything', 'foo': 'bar'}
  >>> data = file(ready_item1.dataFileName(), 'r').read()
  >>> data
  'some data'
  >>> dq.itemDone(ready_item1)

© Chris Miles