private void putEvent(Object event) { trace("Put event " + this + ": " + Thread.currentThread()); if (event instanceof SuspendedEvent) { try { handler.onSuspend((SuspendedEvent) event); } catch (Throwable e) { newEvent.add(e); return; } } newEvent.add(event); }
private void putEvent(Object event) { trace("Put event " + this + ": " + Thread.currentThread()); if (event instanceof SuspendedEvent) { try { if (handler == null) { throw new AssertionError("Expected done but got event " + event); } handler.onSuspend((SuspendedEvent) event); } catch (Throwable e) { newEvent.add(e); return; } } newEvent.add(event); }
currentSuspendedEventMap.put(currentThread, suspendedEvent); try { callback.onSuspend(suspendedEvent); } finally { currentSuspendedEventMap.remove(currentThread);
callback.onSuspend(suspendedEvent); } finally { currentSuspendedEventMap.remove(currentThread);