code: boolean handleCommonMethods(Object delegate, Method method, Object[] args) throws Throwable {
      if ("abort".equals(method.getName()) || "close".equals(method.getName())) {
        try {
          Reflection.invoke(delegate, method, args);
          return true;
        } finally {
          closed = true;
          afterClosure();
          interruptWaiters();
        }
      } else if ("addShutdownListener".equals(method.getName()) && args[0] != null)
        shutdownListeners.add((ShutdownListener) args[0]);
      else if ("removeShutdownListener".equals(method.getName()) && args[0] != null)
        shutdownListeners.remove((ShutdownListener) args[0]);
      return false;
    }
docs: Handles common method invocations.