2013-11-08 1 views
0

В чем разница между этими двумя методами:В чем разница между packetFilter и accept?

processPacket:

PacketListener pListener = new PacketListener() { 
     @Override 
     public void processPacket(Packet packet) { 
      if(packet instanceof Presence) { 
       //.. 
      } 
     } 
    }; 

и принимаем:

PacketFilter pFilter = new PacketFilter() { 
     @Override 
     public boolean accept(Packet packet) { 
      return true; 
     } 
    }; 

Разве они не способны делать то же самое?

примечание:

con.addPacketListener(pListener, pFilter); 
+0

В какой пакет? Это одна из нескольких версий JPcap? и если да, то какой? – EJP

ответ

1

Это кажется очевидным. PacketFilter фильтрует пакеты для обработки по PacketListener.

+0

Поскольку я отправляю пакет другому пользователю, 'accept' не перехватывает пакет – saplingPro

+0

Так что это фильтр для входящих пакетов. Вы можете отфильтровать собственные исходящие пакеты? – EJP

+0

Для исходящих пакетов вы используете PacketInterceptor. – Robin