01: /*
02: * HelpCommandExecutor.java
03: *
04: * Copyright (C) 2007 Ferran Busquets
05: *
06: * This program is free software: you can redistribute it and/or modify
07: * it under the terms of the GNU General Public License as published by
08: * the Free Software Foundation, either version 3 of the License, or
09: * any later version.
10: *
11: * This program is distributed in the hope that it will be useful,
12: * but WITHOUT ANY WARRANTY; without even the implied warranty of
13: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14: * GNU General Public License for more details.
15: *
16: * You should have received a copy of the GNU General Public License
17: * along with this program. If not, see <http://www.gnu.org/licenses/>.
18: *
19: */
20: package org.naturalcli.commands;
21:
22: import java.util.Set;
23:
24: import org.naturalcli.Command;
25: import org.naturalcli.ParseResult;
26: import org.naturalcli.ICommandExecutor;
27:
28: /**
29: * Executor for <code>HTMLHelpCommand</code>
30: *
31: * @see HTMLHelpCommandExecutor
32: * @author Ferran Busquets
33: */
34: public class HTMLHelpCommandExecutor implements ICommandExecutor {
35:
36: /** Sets of commands */
37: private Set<Command> commands;
38:
39: /**
40: * Constructor.
41: * @param commands the set of commands for the help
42: */
43: public HTMLHelpCommandExecutor(Set<Command> commands) {
44: this .commands = commands;
45: }
46:
47: /* (non-Javadoc)
48: * @see org.naturalcli.ICommandExecutor#execute(java.lang.Object[])
49: */
50: @Override
51: public void execute(ParseResult parseResult) {
52: for (Command c : commands) {
53: if (c.isHidden())
54: continue;
55: String syn = c.getSyntax().getDefinition().replaceAll("<",
56: "<").replaceAll(">", ">");
57: System.out.println("<b>" + syn + "</b><br>");
58: System.out.println("<p> " + c.getHelp()
59: + "<br>");
60: System.out.println("<p>");
61: }
62: }
63:
64: }
|