01 package net.sf.jbaobab.tutorial;
02 
03 import net.sf.jbaobab.io.ChannelCore;
04 import net.sf.jbaobab.io.PacketHandler;
05 
06 import org.apache.log4j.Logger;
07 
08 /**
09  <p>
10  * A {@link net.sf.jbaobab.io.PacketHandler} that repeats incoming
11  {@link java.lang.String} packet.
12  </p>
13  
14  @see StartUp
15  @author Oakyoon Cha
16  */
17 public class EchoHandler
18         implements PacketHandler<String> {
19     private final Logger logger = Logger.getLogger(this.getClass());
20 
21     public void connected(ChannelCore<String> core) {
22         logger.info(core.track() " <> connected");
23         core.schedulePacket("Welcome to Echo Server");
24         core.schedulePacket("Powered by " + getClass().getCanonicalName());
25     }
26 
27     public void disconnected(ChannelCore<String> core) {
28         logger.info(core.track() " <> disconnected");
29     }
30 
31     public void packetReceived(ChannelCore<String> core, String string) {
32         logger.info(core.track() " >> {" + string + '}');
33         core.schedulePacket(string);
34         logger.info(core.track() " << {" + string + '}');
35     }
36 
37 }
Java2html