com.aelitis.net.udp.uc.impl
Class PRUDPPacketHandlerImpl
java.lang.Object
  
com.aelitis.net.udp.uc.impl.PRUDPPacketHandlerImpl
- All Implemented Interfaces: 
 - PRUDPPacketHandler
 
public class PRUDPPacketHandlerImpl
- extends java.lang.Object
- implements PRUDPPacketHandler
  
 
 
 
 
| 
Method Summary | 
 void | 
addPrimordialHandler(PRUDPPrimordialHandler handler)
 
            | 
protected  void | 
calcBind()
 
            | 
protected  void | 
checkTargetAddress(java.net.InetSocketAddress address)
 
            | 
protected  void | 
checkTimeouts()
 
            | 
 void | 
closeSession()
 
            | 
 void | 
destroy()
 
            | 
 java.net.InetAddress | 
getBindIP()
 
            | 
 int | 
getPort()
 
            | 
 long | 
getReceiveQueueLength()
 
            | 
 PRUDPRequestHandler | 
getRequestHandler()
 
            | 
 long | 
getSendQueueLength()
 
            | 
 PRUDPPacketHandlerStats | 
getStats()
 
            | 
 boolean | 
hasPrimordialHandler()
 
            | 
 PRUDPPacketHandler | 
openSession(java.net.InetSocketAddress target)
 
            | 
 void | 
primordialSend(byte[] buffer,
               java.net.InetSocketAddress target)
 
            | 
protected  void | 
process(java.net.DatagramPacket dg_packet,
        long receive_time)
 
            | 
protected  void | 
receiveLoop(AESemaphore init_sem)
 
            | 
 void | 
removePrimordialHandler(PRUDPPrimordialHandler handler)
 
            | 
 void | 
send(PRUDPPacket request_packet,
     java.net.InetSocketAddress destination_address)
 
          Send only | 
 PRUDPPacket | 
sendAndReceive(java.net.PasswordAuthentication auth,
               PRUDPPacket request_packet,
               java.net.InetSocketAddress destination_address)
 
          Synchronous send and receive | 
 PRUDPPacket | 
sendAndReceive(java.net.PasswordAuthentication auth,
               PRUDPPacket request_packet,
               java.net.InetSocketAddress destination_address,
               long timeout)
 
            | 
 PRUDPPacket | 
sendAndReceive(java.net.PasswordAuthentication auth,
               PRUDPPacket request_packet,
               java.net.InetSocketAddress destination_address,
               long timeout,
               int priority)
 
            | 
 PRUDPPacketHandlerRequestImpl | 
sendAndReceive(java.net.PasswordAuthentication auth,
               PRUDPPacket request_packet,
               java.net.InetSocketAddress destination_address,
               PRUDPPacketReceiver receiver,
               long timeout,
               int priority)
 
            | 
 PRUDPPacket | 
sendAndReceive(PRUDPPacket request_packet,
               java.net.InetSocketAddress destination_address)
 
            | 
 void | 
sendAndReceive(PRUDPPacket request_packet,
               java.net.InetSocketAddress destination_address,
               PRUDPPacketReceiver receiver,
               long timeout,
               int priority)
 
          Asynchronous send and receive | 
protected  void | 
setDefaultBindAddress(java.net.InetAddress address)
 
            | 
 void | 
setDelays(int _send_delay,
          int _receive_delay,
          int _queued_request_timeout)
 
            | 
 void | 
setExplicitBindAddress(java.net.InetAddress address)
 
            | 
 void | 
setRequestHandler(PRUDPRequestHandler _request_handler)
 
            | 
 
| Methods inherited from class java.lang.Object | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
PRUDPPacketHandlerImpl
protected PRUDPPacketHandlerImpl(int _port,
                                 java.net.InetAddress _bind_ip,
                                 PRUDPPacketHandlerImpl.PacketTransformer _packet_transformer)
hasPrimordialHandler
public boolean hasPrimordialHandler()
- Specified by:
 hasPrimordialHandler in interface PRUDPPacketHandler
 
 
addPrimordialHandler
public void addPrimordialHandler(PRUDPPrimordialHandler handler)
- Specified by:
 addPrimordialHandler in interface PRUDPPacketHandler
 
 
removePrimordialHandler
public void removePrimordialHandler(PRUDPPrimordialHandler handler)
- Specified by:
 removePrimordialHandler in interface PRUDPPacketHandler
 
 
setRequestHandler
public void setRequestHandler(PRUDPRequestHandler _request_handler)
- Specified by:
 setRequestHandler in interface PRUDPPacketHandler
 
 
getRequestHandler
public PRUDPRequestHandler getRequestHandler()
- Specified by:
 getRequestHandler in interface PRUDPPacketHandler
 
 
getPort
public int getPort()
- Specified by:
 getPort in interface PRUDPPacketHandler
 
 
getBindIP
public java.net.InetAddress getBindIP()
- Specified by:
 getBindIP in interface PRUDPPacketHandler
 
 
setDefaultBindAddress
protected void setDefaultBindAddress(java.net.InetAddress address)
 
 
setExplicitBindAddress
public void setExplicitBindAddress(java.net.InetAddress address)
- Specified by:
 setExplicitBindAddress in interface PRUDPPacketHandler
 
 
calcBind
protected void calcBind()
 
 
receiveLoop
protected void receiveLoop(AESemaphore init_sem)
 
 
checkTimeouts
protected void checkTimeouts()
 
 
process
protected void process(java.net.DatagramPacket dg_packet,
                       long receive_time)
 
 
sendAndReceive
public PRUDPPacket sendAndReceive(PRUDPPacket request_packet,
                                  java.net.InetSocketAddress destination_address)
                           throws PRUDPPacketHandlerException
 
- Throws:
 PRUDPPacketHandlerException
 
sendAndReceive
public PRUDPPacket sendAndReceive(java.net.PasswordAuthentication auth,
                                  PRUDPPacket request_packet,
                                  java.net.InetSocketAddress destination_address)
                           throws PRUDPPacketHandlerException
- Description copied from interface: 
PRUDPPacketHandler 
- Synchronous send and receive
- Specified by:
 sendAndReceive in interface PRUDPPacketHandler
 
- Returns:
 - 
 - Throws:
 PRUDPPacketHandlerException
 
 
sendAndReceive
public PRUDPPacket sendAndReceive(java.net.PasswordAuthentication auth,
                                  PRUDPPacket request_packet,
                                  java.net.InetSocketAddress destination_address,
                                  long timeout)
                           throws PRUDPPacketHandlerException
- Specified by:
 sendAndReceive in interface PRUDPPacketHandler
 
- Throws:
 PRUDPPacketHandlerException
 
sendAndReceive
public PRUDPPacket sendAndReceive(java.net.PasswordAuthentication auth,
                                  PRUDPPacket request_packet,
                                  java.net.InetSocketAddress destination_address,
                                  long timeout,
                                  int priority)
                           throws PRUDPPacketHandlerException
- Specified by:
 sendAndReceive in interface PRUDPPacketHandler
 
- Throws:
 PRUDPPacketHandlerException
 
sendAndReceive
public void sendAndReceive(PRUDPPacket request_packet,
                           java.net.InetSocketAddress destination_address,
                           PRUDPPacketReceiver receiver,
                           long timeout,
                           int priority)
                    throws PRUDPPacketHandlerException
- Description copied from interface: 
PRUDPPacketHandler 
- Asynchronous send and receive
- Specified by:
 sendAndReceive in interface PRUDPPacketHandler
 
- Throws:
 PRUDPPacketHandlerException
 
 
sendAndReceive
public PRUDPPacketHandlerRequestImpl sendAndReceive(java.net.PasswordAuthentication auth,
                                                    PRUDPPacket request_packet,
                                                    java.net.InetSocketAddress destination_address,
                                                    PRUDPPacketReceiver receiver,
                                                    long timeout,
                                                    int priority)
                                             throws PRUDPPacketHandlerException
 
- Throws:
 PRUDPPacketHandlerException
 
send
public void send(PRUDPPacket request_packet,
                 java.net.InetSocketAddress destination_address)
          throws PRUDPPacketHandlerException
- Description copied from interface: 
PRUDPPacketHandler 
- Send only
- Specified by:
 send in interface PRUDPPacketHandler
 
- Throws:
 PRUDPPacketHandlerException
 
 
checkTargetAddress
protected void checkTargetAddress(java.net.InetSocketAddress address)
                           throws PRUDPPacketHandlerException
 
- Throws:
 PRUDPPacketHandlerException
 
setDelays
public void setDelays(int _send_delay,
                      int _receive_delay,
                      int _queued_request_timeout)
- Specified by:
 setDelays in interface PRUDPPacketHandler
 
 
getSendQueueLength
public long getSendQueueLength()
 
 
getReceiveQueueLength
public long getReceiveQueueLength()
 
 
primordialSend
public void primordialSend(byte[] buffer,
                           java.net.InetSocketAddress target)
                    throws PRUDPPacketHandlerException
- Specified by:
 primordialSend in interface PRUDPPacketHandler
 
- Throws:
 PRUDPPacketHandlerException
 
getStats
public PRUDPPacketHandlerStats getStats()
- Specified by:
 getStats in interface PRUDPPacketHandler
 
 
destroy
public void destroy()
- Specified by:
 destroy in interface PRUDPPacketHandler
 
 
openSession
public PRUDPPacketHandler openSession(java.net.InetSocketAddress target)
                               throws PRUDPPacketHandlerException
- Specified by:
 openSession in interface PRUDPPacketHandler
 
- Throws:
 PRUDPPacketHandlerException
 
closeSession
public void closeSession()
                  throws PRUDPPacketHandlerException
- Specified by:
 closeSession in interface PRUDPPacketHandler
 
- Throws:
 PRUDPPacketHandlerException