The method NotifyMsgHandlers forwards notifications to all available MsgHandlers. This is incorrect since notifications should only be sent to interested MsgHandlers. A Possible solution to this could be:
protected void NotifyMsgHandlers(String id, byte[] data, Object from){
for(int i=0; i<EvHandlers.size();i++){
MsgListener a = EvHandlers.get(i);
try{
if(a.ElementIdenetifier.equalsIgnoreCase(id))
a.ElementListener.Deliver(a.ElementIdenetifier,
data,data.length,from);
}
catch(Exception e){
}
}
}