(self, message)
| 86 | |
| 87 | @functools.wraps(f) |
| 88 | def lock_and_handle(self, message): |
| 89 | try: |
| 90 | with self.session: |
| 91 | return f(self, message) |
| 92 | except ComponentNotAvailable as exc: |
| 93 | raise message.cant_handle("{0}", exc, silent=True) |
| 94 | except messaging.MessageHandlingError as exc: |
| 95 | if exc.cause is message: |
| 96 | raise |
| 97 | else: |
| 98 | exc.propagate(message) |
| 99 | except messaging.JsonIOError as exc: |
| 100 | raise message.cant_handle( |
| 101 | "{0} disconnected unexpectedly", exc.stream.name, silent=True |
| 102 | ) |
| 103 | |
| 104 | return lock_and_handle |
| 105 |
nothing calls this directly
no test coverage detected