1 17 package org.apache.servicemix.components.jabber; 18 19 import javax.jbi.JBIException; 20 import javax.jbi.messaging.MessageExchange; 21 import javax.jbi.messaging.MessagingException; 22 import javax.jbi.messaging.NormalizedMessage; 23 24 import org.jivesoftware.smack.filter.PacketFilter; 25 import org.jivesoftware.smack.filter.PacketTypeFilter; 26 import org.jivesoftware.smack.packet.Message; 27 28 33 public class JabberReceiver extends JabberComponentSupport { 34 35 private PacketFilter filter; 36 37 public void afterPropertiesSet() throws Exception { 38 super.afterPropertiesSet(); 39 40 if (filter == null) { 41 filter = new PacketTypeFilter(Message.class); 42 } 43 } 44 45 public void start() throws JBIException { 46 super.start(); 47 getConnection().addPacketListener(this, filter); 48 } 49 50 public PacketFilter getFilter() { 53 return filter; 54 } 55 56 public void setFilter(PacketFilter filter) { 57 this.filter = filter; 58 } 59 60 protected void process(MessageExchange exchange, NormalizedMessage message) throws Exception { 63 throw new MessagingException("This component is not meant to receive inbound messages but received: " + message); 64 } 65 } 66 | Popular Tags |