1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 package net.sf.magicproject.network;
23
24 import java.io.BufferedReader;
25 import java.io.IOException;
26 import java.io.InputStream;
27 import java.io.InputStreamReader;
28
29 import net.sf.magicproject.ui.MagicUIComponents;
30 import net.sf.magicproject.ui.i18n.LanguageManager;
31
32
33 /***
34 * This chat is a thread looking for a chat data in the bigpipe Display
35 * discussion is : $user - $message When a null length message is sent, that
36 * would say "disconnection" since user can't send a null length message. So if
37 * user want to send a null length message nothing is sent. When disconnection
38 * is dectected, a message like " **disconnection **" is printed into the
39 * history text area.
40 *
41 * @author <a href="mailto:fabdouglas@users.sourceforge.net">Fabrice Daugan </a>
42 * @since 0.3
43 */
44 public class MChat {
45
46 /***
47 * send a specified message to opponent
48 *
49 * @param message
50 * is the specified message to send
51 */
52 public void sendMessage(String message) {
53 MBigPipe.instance.sendChatMessage(message);
54 MagicUIComponents.chatHistoryText.append(0, message);
55 }
56
57 /***
58 * To read a message from the specified input stream
59 *
60 * @param in
61 * the input stream
62 * @throws IOException
63 */
64 public void newMessage(InputStream in) throws IOException {
65 try {
66 MagicUIComponents.chatHistoryText.append(1, new BufferedReader(
67 new InputStreamReader(in)).readLine());
68 } catch (IOException e) {
69 System.out.println(" **disconnection ** in chat");
70 MagicUIComponents.chatHistoryText.append(1, LanguageManager
71 .getString("disconnected"));
72 throw e;
73 }
74 }
75 }