package org.basex.core.cmd; import static org.basex.core.Commands.*; import static org.basex.core.Text.*; import java.io.IOException; import org.basex.core.Command; /** * Evaluates the 'help' command and returns help on the database commands. * * @author BaseX Team 2005-12, BSD License * @author Christian Gruen */ public final class Help extends Command { /** * Default constructor. * @param arg optional argument */ public Help(final String arg) { this(arg, null); } /** * Default constructor. * @param arg optional argument * @param format optional format (e.g., Wiki) */ public Help(final String arg, final String format) { super(STANDARD, arg, format); } @Override protected boolean run() throws IOException { final String key = args[0]; final boolean wiki = args[1] != null; if(key != null) { final Cmd cmd = getOption(key, Cmd.class); if(cmd == null) return error(UNKNOWN_CMD_X, this); out.print(cmd.help(true, wiki)); } else { out.println(TRY_SPECIFIC_X); for(final Cmd c : Cmd.values()) out.print(c.help(false, wiki)); } return true; } }