1 package rero.ircfw.data; 2 3 8 9 import rero.ircfw.*; 10 import rero.ircfw.interfaces.*; 11 12 import java.util.*; 13 14 public class ChannelUserWatch extends DataEventAction implements FrameworkConstants 15 { 16 public boolean isEvent(HashMap data) 17 { 18 String event = (String )data.get($EVENT$); 19 20 return (event.equals("QUIT") || event.equals("JOIN") || event.equals("PART") || 21 event.equals("NICK") || event.equals("KICK") || event.equals("PRIVMSG")) ; 22 } 23 24 public void process(HashMap data) 25 { 26 String event = (String )data.get($EVENT$); 27 String nick = (String )data.get($NICK$); 28 String channel = (String )data.get($TARGET$); 29 30 if (event.equals("JOIN")) 31 { 32 dataList.JoinNick(nick, channel); 33 } 34 else if (event.equals("PART")) 35 { 36 dataList.PartNick(nick, dataList.getChannel(channel)); 37 } 38 else if (event.equals("QUIT")) 39 { 40 StringBuffer blah = new StringBuffer (); 41 42 Iterator iter = dataList.getUser(nick).getChannels().iterator(); 43 while (iter.hasNext()) 44 { 45 blah.append(((Channel)iter.next()).getName()); 46 47 if (iter.hasNext()) 48 blah.append(","); 49 } 50 51 data.put("$channels", blah.toString()); 52 53 dataList.QuitNick(nick); 54 } 55 else if (event.equals("NICK") && data.containsKey($PARMS$)) 56 { 57 dataList.ChangeNick(nick, (String )data.get($PARMS$)); 58 } 59 else if (event.equals("KICK")) 60 { 61 String d = (String )data.get($PARMS$); 62 d = d.substring(0, d.indexOf(' ')); 63 dataList.PartNick(d, dataList.getChannel(channel)); 64 } 65 else if (event.equals("PRIVMSG")) 66 { 67 } 71 } 72 } 73 74 104 | Popular Tags |