Class MessageManagerImpl
java.lang.Object
com.biglybt.pifimpl.local.messaging.MessageManagerImpl
- All Implemented Interfaces:
NATTraversalHandler
,MessageManager
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final HashMap
private Core
private final DownloadManagerListener
private static MessageManagerImpl
private Map
Fields inherited from interface com.biglybt.pif.messaging.MessageManager
STREAM_ENCRYPTION_NONE, STREAM_ENCRYPTION_RC4_PREFERRED, STREAM_ENCRYPTION_RC4_REQUIRED
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic int
adjustCrypto
(ConnectionEndpoint endpoint, int crypto) static int
adjustCrypto
(GenericMessageEndpointImpl endpoint, int crypto) void
cancelCompatiblePeersLocation
(MessageManagerListener orig_listener) Cancel registration for compatible-peer notification.void
deregisterMessageType
(Message message) Remove registration of given message type from manager.protected GenericMessageHandler
getHandler
(String type) getName()
static MessageManagerImpl
getSingleton
(Core core) int
getType()
void
locateCompatiblePeers
(PluginInterface plug_interface, Message message, MessageManagerListener listener) Globally register for notification of peers that support the given message type.process
(InetSocketAddress originator, Map message) registerGenericMessageType
(String _type, String description, int stream_crypto, GenericMessageHandler handler) Register a peer-independent message handlervoid
registerMessageType
(Message message) Register the given message type with the manager for processing.
-
Field Details
-
instance
-
compat_checks
-
download_manager_listener
-
core
-
message_handlers
-
-
Constructor Details
-
MessageManagerImpl
-
-
Method Details
-
adjustCrypto
-
adjustCrypto
-
getSingleton
-
getNATTraverser
-
registerMessageType
Description copied from interface:MessageManager
Register the given message type with the manager for processing. NOTE: A message type needs to be registered in order for support to be advertised to other peers.- Specified by:
registerMessageType
in interfaceMessageManager
- Parameters:
message
- instance to use for decoding- Throws:
MessageException
- if this message type has already been registered
-
deregisterMessageType
Description copied from interface:MessageManager
Remove registration of given message type from manager.- Specified by:
deregisterMessageType
in interfaceMessageManager
- Parameters:
message
- type to remove
-
locateCompatiblePeers
public void locateCompatiblePeers(PluginInterface plug_interface, Message message, MessageManagerListener listener) Description copied from interface:MessageManager
Globally register for notification of peers that support the given message type.- Specified by:
locateCompatiblePeers
in interfaceMessageManager
- Parameters:
plug_interface
- to get the download managermessage
- to matchlistener
- to notify
-
cancelCompatiblePeersLocation
Description copied from interface:MessageManager
Cancel registration for compatible-peer notification.- Specified by:
cancelCompatiblePeersLocation
in interfaceMessageManager
- Parameters:
orig_listener
- listener used for registration
-
registerGenericMessageType
public GenericMessageRegistration registerGenericMessageType(String _type, String description, int stream_crypto, GenericMessageHandler handler) throws MessageException Description copied from interface:MessageManager
Register a peer-independent message handler- Specified by:
registerGenericMessageType
in interfaceMessageManager
- Returns:
- Throws:
MessageException
-
getHandler
-
getType
public int getType()- Specified by:
getType
in interfaceNATTraversalHandler
-
getName
- Specified by:
getName
in interfaceNATTraversalHandler
-
process
- Specified by:
process
in interfaceNATTraversalHandler
-