コード例 #1
0
ファイル: reliability.py プロジェクト: pombreda/gofer
 def _fn(thing, *args, **kwargs):
     repair = lambda: None
     while not Thread.aborted():
         try:
             repair()
             return fn(thing, *args, **kwargs)
         except _NotFound, e:
             raise NotFound(*e.args)
         except LinkError:
             sleep(DELAY)
             repair = thing.repair
コード例 #2
0
ファイル: reliability.py プロジェクト: pombreda/gofer
 def _fn(messenger, *args, **kwargs):
     repair = lambda: None
     while not Thread.aborted():
         try:
             repair()
             return fn(messenger, *args, **kwargs)
         except ChannelError, e:
             if e.code != 404:
                 sleep(DELAY)
                 repair = messenger.repair
             else:
                 raise NotFound(*e.args)
         except CONNECTION_EXCEPTIONS:
             sleep(DELAY)
             repair = messenger.repair
コード例 #3
0
ファイル: reliability.py プロジェクト: pombreda/gofer
 def _fn(messenger, *args, **kwargs):
     repair = lambda: None
     while not Thread.aborted():
         try:
             repair()
             return fn(messenger, *args, **kwargs)
         except LinkDetached, le:
             if le.condition != NOT_FOUND:
                 sleep(DELAY)
                 repair = messenger.repair
             else:
                 raise NotFound(*le.args)
         except ConnectionException:
             sleep(DELAY)
             repair = messenger.repair
コード例 #4
0
ファイル: reliability.py プロジェクト: swipswaps/gofer
 def _fn(thing, *args, **kwargs):
     repair = lambda: None
     while not Thread.aborted():
         try:
             repair()
             return fn(thing, *args, **kwargs)
         except _NotFound as e:
             raise NotFound(*e.args)
         except LinkError as le:
             log.warning(str(le))
             repair = thing.repair
             sleep(DELAY)
         except ConnectionError as pe:
             log.warning(str(pe))
             repair = thing.repair
             sleep(DELAY)
コード例 #5
0
ファイル: reliability.py プロジェクト: swipswaps/gofer
 def _fn(messenger, *args, **kwargs):
     repair = lambda: None
     while not Thread.aborted():
         try:
             repair()
             return fn(messenger, *args, **kwargs)
         except ChannelError as le:
             if le.reply_code not in (NO_ROUTE, NOT_FOUND):
                 log.warning(str(le))
                 repair = messenger.repair
                 sleep(DELAY)
             else:
                 raise NotFound(*le.args)
         except CONNECTION_EXCEPTIONS as pe:
             log.warning(str(pe))
             repair = messenger.repair
             sleep(DELAY)
コード例 #6
0
 def _fn(messenger, *args, **kwargs):
     repair = lambda: None
     while not Thread.aborted():
         try:
             repair()
             return fn(messenger, *args, **kwargs)
         except ChannelError, le:
             if le.code != 404:
                 log.error(utf8(le))
                 repair = messenger.repair
                 sleep(DELAY)
             else:
                 raise NotFound(*le.args)
         except CONNECTION_EXCEPTIONS, pe:
             log.error(utf8(pe))
             repair = messenger.repair
             sleep(DELAY)
コード例 #7
0
 def _fn(messenger, *args, **kwargs):
     repair = lambda: None
     while not Thread.aborted():
         try:
             repair()
             return fn(messenger, *args, **kwargs)
         except LinkDetached as le:
             if le.condition != NOT_FOUND:
                 log.warning(str(le))
                 repair = messenger.repair
                 sleep(DELAY)
             else:
                 raise NotFound(*le.args)
         except ConnectionException as pe:
             log.warning(str(pe))
             repair = messenger.repair
             sleep(DELAY)
コード例 #8
0
 def test_not_found(self):
     not_found = NotFound(1, 2, 3)
     self.assertTrue(isinstance(not_found, Exception))
     self.assertEqual(not_found.args, (1, 2, 3))