1 package com.ubermq.jms.server.proc; 2 3 import java.nio.*; 4 import java.util.*; 5 import com.ubermq.kernel.*; 6 import com.ubermq.kernel.overflow.*; 7 8 12 public class EchoMessageProcessor implements com.ubermq.kernel.IMessageProcessor 13 { 14 private static final org.apache.log4j.Logger log = org.apache.log4j.Logger.getLogger(EchoMessageProcessor.class); 15 private LinkedList allConnections; 16 17 public EchoMessageProcessor() 18 { 19 allConnections = new LinkedList(); 20 } 21 22 public void accept(IConnectionInfo ci) 23 { 24 log.info("accepted " + ci); 25 allConnections.add(ci); 26 } 27 28 public void remove(IConnectionInfo ci) 29 { 30 allConnections.remove(ci); 31 } 32 33 public void process(IConnectionInfo sender, IDatagram d) 34 { 35 IConnectionInfo conn; 38 for(Iterator i = allConnections.iterator();i.hasNext();) 39 { 40 conn = (IConnectionInfo)i.next(); 41 if (!conn.equals(sender)) 42 { 43 log.info("outputting " + d + " to " + conn); 44 try 45 { 46 conn.output(d, new DropIncoming()); 47 } 48 catch (java.io.IOException e) 49 { 50 log.error("", e); 51 } 52 } 53 } 54 } 55 } 56 | Popular Tags |