Committed by
Gerrit Code Review
Protect the RouteManagers threads from exceptions thrown by listeners
Change-Id: Ia260dcdcb83070939b96e4c7fb8d20baa0ae78a5
Showing
1 changed file
with
5 additions
and
2 deletions
... | @@ -279,12 +279,15 @@ public class RouteManager implements ListenerService<RouteEvent, RouteListener>, | ... | @@ -279,12 +279,15 @@ public class RouteManager implements ListenerService<RouteEvent, RouteListener>, |
279 | } | 279 | } |
280 | 280 | ||
281 | private void poll() { | 281 | private void poll() { |
282 | - try { | ||
283 | while (true) { | 282 | while (true) { |
283 | + try { | ||
284 | listener.event(queue.take()); | 284 | listener.event(queue.take()); |
285 | - } | ||
286 | } catch (InterruptedException e) { | 285 | } catch (InterruptedException e) { |
287 | log.info("Route listener event thread shutting down: {}", e.getMessage()); | 286 | log.info("Route listener event thread shutting down: {}", e.getMessage()); |
287 | + break; | ||
288 | + } catch (Exception e) { | ||
289 | + log.warn("Exception during route event handler", e); | ||
290 | + } | ||
288 | } | 291 | } |
289 | } | 292 | } |
290 | 293 | ... | ... |
-
Please register or login to post a comment