예제 #1
0
  @Test
  public void shouldBeAbleToOverrideTheExceptionHandlerForAEventProcessor() throws Exception {
    final RuntimeException testException = new RuntimeException();
    final ExceptionThrowingEventHandler eventHandler =
        new ExceptionThrowingEventHandler(testException);
    disruptor.handleEventsWith(eventHandler);

    AtomicReference<Throwable> reference = new AtomicReference<Throwable>();
    StubExceptionHandler exceptionHandler = new StubExceptionHandler(reference);
    disruptor.handleExceptionsFor(eventHandler).with(exceptionHandler);

    publishEvent();

    waitFor(reference);
  }