Package com.biglybt.net.udp.uc.impl
Class PRUDPPacketHandlerImpl
java.lang.Object
com.biglybt.net.udp.uc.impl.PRUDPPacketHandlerImpl
- All Implemented Interfaces:
PRUDPPacketHandler
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static interface
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate boolean
private static List<PRUDPPacketHandlerImpl>
private final PRUDPPacketHandlerSupport
Fields inherited from interface com.biglybt.net.udp.uc.PRUDPPacketHandler
PRIORITY_HIGH, PRIORITY_IMMEDIATE, PRIORITY_LOW, PRIORITY_MEDIUM
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
PRUDPPacketHandlerImpl
(int port, InetAddress bind_ip, PRUDPPacketHandlerImpl.PacketTransformer packet_transformer) private
PRUDPPacketHandlerImpl
(int port, InetAddress bind_ip, PRUDPPacketHandlerImpl.PacketTransformer packet_transformer, PRUDPPacketHandlerStatsImpl stats, CopyOnWriteList<PRUDPPrimordialHandler> primordial_handlers, PRUDPRequestHandler request_handler) -
Method Summary
Modifier and TypeMethodDescriptionvoid
void
protected static PRUDPPacketHandlerImpl
createPacketHandler
(int port, InetAddress bind_ip, PRUDPPacketHandlerImpl.PacketTransformer packet_transformer) protected static PRUDPPacketHandlerImpl
createPacketHandler
(int port, InetAddress bind_ip, PRUDPPacketHandlerImpl.PacketTransformer packet_transformer, PRUDPPacketHandlerStatsImpl stats, CopyOnWriteList<PRUDPPrimordialHandler> primordial_handlers, PRUDPRequestHandler request_handler) void
destroy()
int
getPort()
protected long
protected long
getStats()
boolean
openSession
(InetSocketAddress target) void
primordialSend
(byte[] data, InetSocketAddress target) void
void
send
(PRUDPPacket request_packet, InetSocketAddress destination_address) Send onlyvoid
sendAndReceive
(PRUDPPacket request_packet, InetSocketAddress destination_address, PRUDPPacketReceiver receiver, long timeout, int priority) Asynchronous send and receivesendAndReceive
(PasswordAuthentication auth, PRUDPPacket request_packet, InetSocketAddress destination_address) Synchronous send and receivesendAndReceive
(PasswordAuthentication auth, PRUDPPacket request_packet, InetSocketAddress destination_address, long timeout_millis) sendAndReceive
(PasswordAuthentication auth, PRUDPPacket request_packet, InetSocketAddress destination_address, long timeout_millis, int priority) protected PRUDPPacketHandlerRequestImpl
sendAndReceive
(PasswordAuthentication auth, PRUDPPacket request_packet, InetSocketAddress destination_address, PRUDPPacketReceiver receiver, long timeout, int priority) void
setDelays
(int send_delay, int receive_delay, int queued_request_timeout) void
setExplicitBindAddress
(InetAddress address, boolean autoDelegate) void
setRequestHandler
(PRUDPRequestHandler request_handler)
-
Field Details
-
handlers
-
impl
-
destroyed
private boolean destroyed
-
-
Constructor Details
-
PRUDPPacketHandlerImpl
private PRUDPPacketHandlerImpl(int port, InetAddress bind_ip, PRUDPPacketHandlerImpl.PacketTransformer packet_transformer) -
PRUDPPacketHandlerImpl
private PRUDPPacketHandlerImpl(int port, InetAddress bind_ip, PRUDPPacketHandlerImpl.PacketTransformer packet_transformer, PRUDPPacketHandlerStatsImpl stats, CopyOnWriteList<PRUDPPrimordialHandler> primordial_handlers, PRUDPRequestHandler request_handler)
-
-
Method Details
-
createPacketHandler
protected static PRUDPPacketHandlerImpl createPacketHandler(int port, InetAddress bind_ip, PRUDPPacketHandlerImpl.PacketTransformer packet_transformer) -
createPacketHandler
protected static PRUDPPacketHandlerImpl createPacketHandler(int port, InetAddress bind_ip, PRUDPPacketHandlerImpl.PacketTransformer packet_transformer, PRUDPPacketHandlerStatsImpl stats, CopyOnWriteList<PRUDPPrimordialHandler> primordial_handlers, PRUDPRequestHandler request_handler) -
sendAndReceive
public void sendAndReceive(PRUDPPacket request_packet, InetSocketAddress destination_address, PRUDPPacketReceiver receiver, long timeout, int priority) throws PRUDPPacketHandlerException Description copied from interface:PRUDPPacketHandler
Asynchronous send and receive- Specified by:
sendAndReceive
in interfacePRUDPPacketHandler
- Throws:
PRUDPPacketHandlerException
-
sendAndReceive
public PRUDPPacket sendAndReceive(PasswordAuthentication auth, PRUDPPacket request_packet, InetSocketAddress destination_address) throws PRUDPPacketHandlerException Description copied from interface:PRUDPPacketHandler
Synchronous send and receive- Specified by:
sendAndReceive
in interfacePRUDPPacketHandler
- Returns:
- Throws:
PRUDPPacketHandlerException
-
sendAndReceive
public PRUDPPacket sendAndReceive(PasswordAuthentication auth, PRUDPPacket request_packet, InetSocketAddress destination_address, long timeout_millis) throws PRUDPPacketHandlerException - Specified by:
sendAndReceive
in interfacePRUDPPacketHandler
- Throws:
PRUDPPacketHandlerException
-
sendAndReceive
public PRUDPPacket sendAndReceive(PasswordAuthentication auth, PRUDPPacket request_packet, InetSocketAddress destination_address, long timeout_millis, int priority) throws PRUDPPacketHandlerException - Specified by:
sendAndReceive
in interfacePRUDPPacketHandler
- Throws:
PRUDPPacketHandlerException
-
sendAndReceive
protected PRUDPPacketHandlerRequestImpl sendAndReceive(PasswordAuthentication auth, PRUDPPacket request_packet, InetSocketAddress destination_address, PRUDPPacketReceiver receiver, long timeout, int priority) throws PRUDPPacketHandlerException - Throws:
PRUDPPacketHandlerException
-
send
public void send(PRUDPPacket request_packet, InetSocketAddress destination_address) throws PRUDPPacketHandlerException Description copied from interface:PRUDPPacketHandler
Send only- Specified by:
send
in interfacePRUDPPacketHandler
- Throws:
PRUDPPacketHandlerException
-
getRequestHandler
- Specified by:
getRequestHandler
in interfacePRUDPPacketHandler
-
setRequestHandler
- Specified by:
setRequestHandler
in interfacePRUDPPacketHandler
-
primordialSend
public void primordialSend(byte[] data, InetSocketAddress target) throws PRUDPPacketHandlerException - Specified by:
primordialSend
in interfacePRUDPPacketHandler
- Throws:
PRUDPPacketHandlerException
-
hasPrimordialHandler
public boolean hasPrimordialHandler()- Specified by:
hasPrimordialHandler
in interfacePRUDPPacketHandler
-
addPrimordialHandler
- Specified by:
addPrimordialHandler
in interfacePRUDPPacketHandler
-
removePrimordialHandler
- Specified by:
removePrimordialHandler
in interfacePRUDPPacketHandler
-
getPort
public int getPort()- Specified by:
getPort
in interfacePRUDPPacketHandler
-
getBindIP
- Specified by:
getBindIP
in interfacePRUDPPacketHandler
-
getCurrentBindAddress
- Specified by:
getCurrentBindAddress
in interfacePRUDPPacketHandler
-
getExplicitBindAddress
- Specified by:
getExplicitBindAddress
in interfacePRUDPPacketHandler
-
setExplicitBindAddress
- Specified by:
setExplicitBindAddress
in interfacePRUDPPacketHandler
-
setDelays
public void setDelays(int send_delay, int receive_delay, int queued_request_timeout) - Specified by:
setDelays
in interfacePRUDPPacketHandler
-
getSendQueueLength
protected long getSendQueueLength() -
getReceiveQueueLength
protected long getReceiveQueueLength() -
getStats
- Specified by:
getStats
in interfacePRUDPPacketHandler
-
openSession
- Specified by:
openSession
in interfacePRUDPPacketHandler
- Throws:
PRUDPPacketHandlerException
-
closeSession
- Specified by:
closeSession
in interfacePRUDPPacketHandler
- Throws:
PRUDPPacketHandlerException
-
destroy
public void destroy()- Specified by:
destroy
in interfacePRUDPPacketHandler
-