Package org.jivesoftware.openfire
Class MulticastRouter
java.lang.Object
org.jivesoftware.openfire.container.BasicModule
org.jivesoftware.openfire.MulticastRouter
- All Implemented Interfaces:
 Module,ServerFeaturesProvider,org.xmpp.component.IQResultListener
public class MulticastRouter
extends BasicModule
implements ServerFeaturesProvider, org.xmpp.component.IQResultListener
Router of packets with multiple recipients. Clients may send a single packet with multiple
 recipients and the server will broadcast the packet to the target receipients. If recipients
 belong to remote servers, then this server will discover if remote target servers support
 multicast service. If a remote server supports the multicast service, a single packet will be
 sent to the remote server. If a remote server doesn't the support multicast
 processing, the local server sends a copy of the original stanza to each address.
The current implementation will only search up to the first level of nodes of remote servers when trying to find out if remote servers have support for multicast service. It is assumed that it is highly unlikely for servers to have a node in the second or third depth level providing the multicast service. Servers should normally provide this service themselves or at least as a first level node. This is an implementation of JEP-0033: Extended Stanza Addressing
- Author:
 - Matt Tucker
 
- 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionvoidanswerTimeout(String packetId) Returns an Iterator (of String) with the supported features by the server.voidinitialize(XMPPServer server) Initializes the basic module.voidreceivedAnswer(org.xmpp.packet.IQ packet) voidroute(org.xmpp.packet.Packet packet) Methods inherited from class org.jivesoftware.openfire.container.BasicModule
destroy, getName, start, stop 
- 
Constructor Details
- 
MulticastRouter
public MulticastRouter() 
 - 
 - 
Method Details
- 
route
public void route(org.xmpp.packet.Packet packet)  - 
receivedAnswer
public void receivedAnswer(org.xmpp.packet.IQ packet) - Specified by:
 receivedAnswerin interfaceorg.xmpp.component.IQResultListener
 - 
answerTimeout
- Specified by:
 answerTimeoutin interfaceorg.xmpp.component.IQResultListener
 - 
getFeatures
Description copied from interface:ServerFeaturesProviderReturns an Iterator (of String) with the supported features by the server. The features to include are the features offered and supported protocols by the SERVER. The idea is that different modules may provide their features that will ultimately be part of the features offered by the server.- Specified by:
 getFeaturesin interfaceServerFeaturesProvider- Returns:
 - an Iterator (of String) with the supported features by the server.
 
 - 
initialize
Description copied from class:BasicModuleInitializes the basic module.
Inheriting classes that choose to override this method MUST call this initialize() method before accessing BasicModule resources.
- Specified by:
 initializein interfaceModule- Overrides:
 initializein classBasicModule- Parameters:
 server- the server hosting this module.
 
 -