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 AbstractMessageCommand extends AbstractCommand
33 {
34
35
36
37 public AbstractMessageCommand()
38 {
39 putValue(CMD, "message");
40 putValue(ALIASES, new String[] { "msg" });
41 putValue(PARAMETER, "nick message");
42 putValue(SHORT_HELP, XNap.tr("Sends a private message."));
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 nick = t.nextToken();
60 String message = t.nextToken("");
61
62 send(console, nick, message);
63 }
64
65 public abstract void send(Console console, String nick, String message);
66
67 }