Package com.comphenix.protocol
Interface AsynchronousManager
- All Known Implementing Classes:
AsyncFilterManager
public interface AsynchronousManager
Represents a asynchronous packet handler.
-
Method Summary
Modifier and TypeMethodDescriptionvoidRemove listeners, close threads and transmit every delayed packet.Get an immutable set of every registered asynchronous packet listener.Retrieve the default error reporter.Retrieve the default packet stream.Retrieves a immutable set containing the types of the received client packets that will be observed by the asynchronous listeners.Retrieves a immutable set containing the types of the sent server packets that will be observed by the asynchronous listeners.Get a immutable set of every registered timeout handler.booleanhasAsynchronousListeners(PacketEvent packet) Determine if a given synchronous packet has asynchronous listeners.registerAsyncHandler(PacketListener listener) Registers an asynchronous packet handler.voidregisterTimeoutHandler(PacketListener listener) Register a synchronous listener that handles packets when they time out.voidsignalPacketTransmission(PacketEvent packet) Signal that a packet is ready to be transmitted.voidUnregisters and closes the given asynchronous handler.voidunregisterAsyncHandler(PacketListener listener) Unregisters and closes the first asynchronous handler associated with the given listener.voidunregisterAsyncHandlers(org.bukkit.plugin.Plugin plugin) Unregisters every asynchronous handler associated with this plugin.voidunregisterTimeoutHandler(PacketListener listener) Unregisters a given timeout listener.
-
Method Details
-
registerAsyncHandler
Registers an asynchronous packet handler.Use
AsyncMarker.incrementProcessingDelay()to delay a packet until its ready to be transmitted.To start listening asynchronously, pass the getListenerLoop() runnable to a different thread.
- Parameters:
listener- - the packet listener that will receive these asynchronous events.- Returns:
- An asynchronous handler.
-
unregisterAsyncHandler
Unregisters and closes the given asynchronous handler.- Parameters:
handler- - asynchronous handler.
-
unregisterAsyncHandler
Unregisters and closes the first asynchronous handler associated with the given listener.- Parameters:
listener- - asynchronous listener
-
unregisterAsyncHandlers
void unregisterAsyncHandlers(org.bukkit.plugin.Plugin plugin) Unregisters every asynchronous handler associated with this plugin.- Parameters:
plugin- - the original plugin.
-
getSendingTypes
Set<PacketType> getSendingTypes()Retrieves a immutable set containing the types of the sent server packets that will be observed by the asynchronous listeners.- Returns:
- Every filtered server packet.
-
getReceivingTypes
Set<PacketType> getReceivingTypes()Retrieves a immutable set containing the types of the received client packets that will be observed by the asynchronous listeners.- Returns:
- Every filtered client packet.
-
hasAsynchronousListeners
Determine if a given synchronous packet has asynchronous listeners.- Parameters:
packet- - packet to test.- Returns:
- TRUE if it does, FALSE otherwise.
-
getPacketStream
PacketStream getPacketStream()Retrieve the default packet stream.- Returns:
- Default packet stream.
-
getErrorReporter
ErrorReporter getErrorReporter()Retrieve the default error reporter.- Returns:
- Default reporter.
-
cleanupAll
void cleanupAll()Remove listeners, close threads and transmit every delayed packet. -
signalPacketTransmission
Signal that a packet is ready to be transmitted.This should only be called if
AsyncMarker.incrementProcessingDelay()has been called previously.- Parameters:
packet- - packet to signal.
-
registerTimeoutHandler
Register a synchronous listener that handles packets when they time out.- Parameters:
listener- - synchronous listener that will handle timed out packets.
-
unregisterTimeoutHandler
Unregisters a given timeout listener.- Parameters:
listener- - the timeout listener to unregister.
-
getTimeoutHandlers
Set<PacketListener> getTimeoutHandlers()Get a immutable set of every registered timeout handler.- Returns:
- Set of every registered timeout handler.
-
getAsyncHandlers
Set<PacketListener> getAsyncHandlers()Get an immutable set of every registered asynchronous packet listener.- Returns:
- Set of every asynchronous packet listener.
-