From 1d4f1f6bf6bd8313cbb51dbf61d675408171d1b8 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Tue, 6 May 2008 11:17:29 -0400 Subject: add standard directories Added some of the standard directories darcs-hash:20080506151729-84dde-563da8505e06a7302041c93ab157ced31165876c.gz --- _darcs/pristine/classes/Queue_item.php | 55 ++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 _darcs/pristine/classes/Queue_item.php (limited to '_darcs/pristine/classes/Queue_item.php') diff --git a/_darcs/pristine/classes/Queue_item.php b/_darcs/pristine/classes/Queue_item.php new file mode 100644 index 000000000..8ba3281de --- /dev/null +++ b/_darcs/pristine/classes/Queue_item.php @@ -0,0 +1,55 @@ +transport = $transport; + $qi->orderBy('created'); + $qi->whereAdd('claimed is NULL'); + + $qi->limit(1); + + $cnt = $qi->find(TRUE); + + if ($cnt) { + # XXX: potential race condition + # can we force it to only update if claimed is still NULL + # (or old)? + common_log(LOG_INFO, 'claiming queue item = ' . $qi->notice_id . ' for transport ' . $transport); + $orig = clone($qi); + $qi->claimed = common_sql_now(); + $result = $qi->update($orig); + if ($result) { + common_log(LOG_INFO, 'claim succeeded.'); + return $qi; + } else { + common_log(LOG_INFO, 'claim failed.'); + } + } + $qi = NULL; + return NULL; + } +} -- cgit v1.2.3-54-g00ecf