code: @Override
      public boolean invoke(Manager manager, Object event) {
          try {
              Object[] arguments = resolveArguments(manager, event);
              if (containsNull(arguments)) {
                  return false;
              }
              if (!method.isAccessible()) {
                  method.setAccessible(true);
              }
              method.invoke(target, arguments);
              return true;
          } catch (Exception e) {
              if (e instanceof InvocationTargetException) {
                  Throwable cause = ((InvocationTargetException) e).getTargetException();
                  // Exception already wrapped by another Observer down the chain.
                  if (cause instanceof InvocationException) {
                      throw (InvocationException) cause;
                  }
                  throw new InvocationException(cause);
              }
              throw new InvocationException(e);
          }
      }
docs: /* (non-Javadoc)
  @see org.jboss.arquillian.api.ObserverMethod#invoke(java.lang.Object)