class DirectEventDeliverer extends EventDeliverer<T> {

  @Override
  protected void deliverTo(final T subscriber, final Method method, final Object[] args) {
    // The response will be null as the method is void so we can just ignore the result.
    final SafeFuture<Object> result = executeMethod(subscriber, method, args);
    if (result != null) {
      result.finish(
          () -> {}, error -> exceptionHandler.handleException(error, subscriber, method, args));
    }
  }

    DirectEventDeliverer(
      final ChannelExceptionHandler exceptionHandler, final MetricsSystem metricsSystem);

}