code: public Object beforeInvoke(Object object, String methodName, Object[] arguments) {
          if (!calls.containsKey(methodName)) calls.put(methodName, new LinkedList());
          ((List) calls.get(methodName)).add(System.currentTimeMillis());
  
          return null;
      }
docs: This code is executed before the method is called.
  @param object        receiver object for the method call
  @param methodName    name of the method to call
  @param arguments     arguments to the method call
  @return null
  relays this result.