From 62d9b66dffb0000122cd611a9d991da008f9a527 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 28 Sep 2010 15:45:00 -0700 Subject: Made YammerImport more robust against errors; can now pause/resume/reset the import state from the admin interface. --- plugins/YammerImport/lib/yammerqueuehandler.php | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) (limited to 'plugins/YammerImport/lib/yammerqueuehandler.php') 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; } } -- cgit v1.2.3-54-g00ecf