1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.xnap.chat.command;
21
22 import java.util.StringTokenizer;
23
24 import org.xnap.XNap;
25 import org.xnap.cmdl.AbstractCommand;
26 import org.xnap.cmdl.Console;
27 import org.xnap.cmdl.SyntaxException;
28
29 /***
30 * This class provides the default join action.
31 */
32 public abstract class AbstractBanCommand extends AbstractCommand
33 {
34
35
36
37 public AbstractBanCommand()
38 {
39 putValue(CMD, "ban");
40
41 putValue(PARAMETER, "channel nick [reason]");
42 putValue(SHORT_HELP, XNap.tr("Bans nick."));
43 }
44
45
46
47 public void execute(String command, Console console)
48 throws SyntaxException
49 {
50 StringTokenizer t = new StringTokenizer(command);
51
52
53 t.nextToken();
54
55 if (t.countTokens() < 2) {
56 throw new SyntaxException();
57 }
58
59 String channelName = t.nextToken();
60 String nick = t.nextToken();
61 String reason = t.hasMoreTokens() ? t.nextToken("") : null;
62
63 send(console, channelName, nick, reason);
64 }
65
66 public abstract void send(Console console, String channelName, String nick,
67 String reason);
68
69 }