@Override
  public boolean execute(String line) {
    lastException = null;
    ClientHook hook = ClientCommandHookFactory.get().getHook(beeLine, line);

    try {
      Object ob = beeLine.getCommands().getClass().getMethod(getName(),
          new Class[] {String.class})
          .invoke(beeLine.getCommands(), new Object[] {line});

      boolean result = (ob != null && ob instanceof Boolean && ((Boolean) ob).booleanValue());

      if (hook != null && result) {
        hook.postHook(beeLine);
      }

      return result;
    } catch (Throwable e) {
      lastException = e;
      return beeLine.error(e);
    }
  }
@param beeLine
@param cmds      'cmds' is an array of alternative names for the same command. And that the
                 first one is always chosen for display purposes and to lookup help
                 documentation from BeeLine.properties file.
@param completer
beeline/src/java/org/apache/hive/beeline/ReflectiveCommandHandler.java