Changeset 25884
- Timestamp:
- 12/05/08 02:17:02 (4 years ago)
- Location:
- lang/java/IRCKit/trunk/src/com/mac/tarchan/irc/client
- Files:
-
- 1 added
- 2 modified
- 1 moved
-
IRCClient.java (modified) (3 diffs)
-
IRCConsole.java (modified) (4 diffs)
-
IRCMessageAdapter.java (added)
-
IRCMessageListener.java (moved) (moved from lang/java/IRCKit/trunk/src/com/mac/tarchan/irc/client/IRCMessageHandler.java) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lang/java/IRCKit/trunk/src/com/mac/tarchan/irc/client/IRCClient.java
r25815 r25884 19 19 { 20 20 /** メッセージハンドラ */ 21 protected ArrayList<IRCMessage Handler> handlers = new ArrayList<IRCMessageHandler>();21 protected ArrayList<IRCMessageListener> handlers = new ArrayList<IRCMessageListener>(); 22 22 23 23 /** … … 48 48 * @param handler メッセージハンドラ 49 49 */ 50 public void registerHandler(IRCMessage Handler handler)50 public void registerHandler(IRCMessageListener handler) 51 51 { 52 52 handlers.add(handler); … … 129 129 public void reply(IRCMessage msg) 130 130 { 131 for (IRCMessage Handler handle : handlers)131 for (IRCMessageListener handle : handlers) 132 132 { 133 133 handle.reply(msg); -
lang/java/IRCKit/trunk/src/com/mac/tarchan/irc/client/IRCConsole.java
r25815 r25884 16 16 import java.io.IOException; 17 17 import java.net.MalformedURLException; 18 import java.util.Date; 18 19 import java.util.Formatter; 19 20 import java.util.Properties; … … 144 145 145 146 /** 147 * CommandPublisher 148 */ 149 class CommandPublisher implements Runnable 150 { 151 /** コマンド */ 152 protected String str; 153 154 /** 155 * @param command コマンド 156 */ 157 public CommandPublisher(String command) 158 { 159 this.str = command; 160 } 161 162 /** 163 * 164 */ 165 public void run() 166 { 167 // IRC ネットワークに送信 168 if (str.startsWith("/")) 169 { 170 // コマンド 171 irc.put("tokyo", str.substring(1)); 172 } 173 else 174 { 175 // メッセージ送信 176 String groupName = "tokyo"; 177 String channelName = "#javabreak"; 178 String message = str; 179 irc.privmsg(groupName, channelName, message); 180 } 181 } 182 } 183 184 /** 146 185 * コマンドを送信します。 147 186 * … … 153 192 appendLine(command); 154 193 155 // IRC ネットワークに送信156 if (command.startsWith("/"))157 {158 // コマンド159 irc.put("tokyo", command.substring(1));160 }161 else162 {163 // メッセージ送信164 }165 194 } 166 195 … … 179 208 irc = new IRCClient(); 180 209 irc.setUseSystemProxies(true); 181 irc.registerHandler(new IRCMessage Handler()210 irc.registerHandler(new IRCMessageAdapter() 182 211 { 183 public void reply(IRCMessage msg) 212 /** エンコーディング */ 213 String encoding = "ISO-2022-JP"; 214 215 // @Override 216 // public void reply(IRCMessage reply) 217 // { 218 // super.reply(reply); 219 // appendLine(reply.getMessage(encoding)); 220 // } 221 222 /** 223 * @see com.mac.tarchan.irc.client.IRCMessageAdapter#welcome(com.mac.tarchan.irc.client.IRCMessage) 224 */ 225 @Override 226 public void welcome(IRCMessage reply) 184 227 { 185 // TODO メッセージを表示 186 String encoding = "ISO-2022-JP"; 187 String nick = msg.getNick(); 188 String text = msg.getTrailing(encoding); 189 formatter.format("(%s) %s" + NL, nick, text); 190 flush(); 228 appendLine(reply.getTrailing(encoding)); 191 229 } 192 230 193 public void error(Exception e) 231 /** 232 * @see com.mac.tarchan.irc.client.IRCMessageAdapter#ping(com.mac.tarchan.irc.client.IRCMessage) 233 */ 234 @Override 235 public void ping(IRCMessage reply) 194 236 { 195 // エラーを表示 196 e.printStackTrace(); 237 appendLine("PONG " + reply.getTrailing(encoding)); 238 } 239 240 /** 241 * @see com.mac.tarchan.irc.client.IRCMessageAdapter#privmsg(com.mac.tarchan.irc.client.IRCMessage) 242 */ 243 @Override 244 public void privmsg(IRCMessage reply) 245 { 246 // メッセージを表示 247 Date date = new Date(reply.getWhen()); 248 String nick = reply.getNick(); 249 String text = reply.getTrailing(encoding); 250 String str = String.format("%tR (%s) %s", date, nick, text); 251 appendLine(str); 197 252 } 198 253 }); -
lang/java/IRCKit/trunk/src/com/mac/tarchan/irc/client/IRCMessageListener.java
r25795 r25884 1 1 /* 2 * IRCMessage Handler.java2 * IRCMessageListener.java 3 3 * IRCKit 4 4 * … … 9 9 10 10 /** 11 * IRCMessage Handler11 * IRCMessageListener 12 12 * 13 13 * @author tarchan 14 14 */ 15 public interface IRCMessage Handler15 public interface IRCMessageListener 16 16 { 17 17 /** 18 * メッセージを処理します。18 * リプライメッセージを受け取ります。 19 19 * 20 * @param msgメッセージ20 * @param reply リプライメッセージ 21 21 */ 22 public void reply(IRCMessage msg); 23 24 /** 25 * 例外を処理します。 26 * 27 * @param e 例外 28 */ 29 public void error(Exception e); 22 public void reply(IRCMessage reply); 30 23 }
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)