diff options
author | Brion Vibber <brion@pobox.com> | 2010-09-28 15:45:00 -0700 |
---|---|---|
committer | Brion Vibber <brion@pobox.com> | 2010-09-28 15:59:29 -0700 |
commit | 62d9b66dffb0000122cd611a9d991da008f9a527 (patch) | |
tree | 39911f2ab88c83edd916d9167d5b8aa1222db222 /plugins/YammerImport/lib/yammerqueuehandler.php | |
parent | c62e4d08008faf7fdfb67f0e5eda3db6d8d1ceef (diff) |
Made YammerImport more robust against errors; can now pause/resume/reset the import state from the admin interface.
Diffstat (limited to 'plugins/YammerImport/lib/yammerqueuehandler.php')
-rw-r--r-- | plugins/YammerImport/lib/yammerqueuehandler.php | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/plugins/YammerImport/lib/yammerqueuehandler.php b/plugins/YammerImport/lib/yammerqueuehandler.php index acc807311..0c4e8aec1 100644 --- a/plugins/YammerImport/lib/yammerqueuehandler.php +++ b/plugins/YammerImport/lib/yammerqueuehandler.php @@ -38,21 +38,24 @@ class YammerQueueHandler extends QueueHandler { $runner = YammerRunner::init(); if ($runner->hasWork()) { - if ($runner->iterate()) { - if ($runner->hasWork()) { - // More to do? Shove us back on the queue... - $runner->startBackgroundImport(); + try { + if ($runner->iterate()) { + if ($runner->hasWork()) { + // More to do? Shove us back on the queue... + $runner->startBackgroundImport(); + } + } + } catch (Exception $e) { + try { + $runner->recordError($e->getMessage()); + } catch (Exception $f) { + common_log(LOG_ERR, "Error while recording error in Yammer background import: " . $e->getMessage() . " " . $f->getMessage()); } - return true; - } else { - // Something failed? - // @fixme should we be trying again here, or should we give warning? - return false; } } else { // We're done! common_log(LOG_INFO, "Yammer import has no work to do at this time; discarding."); - return true; } + return true; } } |