org.objectweb.jonathan.protocols.multicast_ip

Class MulticastIpProtocol

Implemented Interfaces:
Protocol

public class MulticastIpProtocol
extends Object
implements Protocol

The MulticastIpProtocol class is a protocol class encapsulating the IP Multicast protocol. Each Session created by this class is dedicated to a (IP multicast address, port) network endpoint. A simple threading model is used: a thread is dedicated to each Session created by MulticastIpProtocol.

See Also:
Protocol

Constructor Summary

MulticastIpProtocol(MarshallerFactory marshaller_factory)
Build a new MulticastIpProtocol

Method Summary

Protocol
createProtocol(NamingContext adapter)
ProtocolGraph
createProtocolGraph(ProtocolGraph[] subgraphs, Context hints)
SessionIdentifier
createSessionIdentifier(Properties info, SessionIdentifier[] next)
int
getMtu()
Returns the MulticastIpProtocol MTU (maximum transmition unit).
boolean
isAnInvocationProtocol()
Returns false
ProtocolGraph
newProtocolGraph(String address, int port)
Builds a new Protocol graph associated with an (IP multicast address, port) pair
SessionIdentifier
newSessionIdentifier(String address, int port)
Builds a new SessionIdentifier associated with an (IP multicast address, port) pair

Constructor Details

MulticastIpProtocol

public MulticastIpProtocol(MarshallerFactory marshaller_factory)
Build a new MulticastIpProtocol

Parameters:
marshaller_factory - the MarshallerFactory used by the protocol to build incoming messages

Method Details

createProtocol

public Protocol createProtocol(NamingContext adapter)


createProtocolGraph

public ProtocolGraph createProtocolGraph(ProtocolGraph[] subgraphs,
                                         Context hints)
            throws JonathanException


createSessionIdentifier

public SessionIdentifier createSessionIdentifier(Properties info,
                                                 SessionIdentifier[] next)
            throws JonathanException


getMtu

public int getMtu()
Returns the MulticastIpProtocol MTU (maximum transmition unit). The upper protocol must make sure to supply messages to MulticastIpProtocol whose size does not exceed this MTU, otherwise messages will be truncated

Returns:
the MulticastIpProtocol MTU (maximum transmition unit)


isAnInvocationProtocol

public boolean isAnInvocationProtocol()
Returns false
Specified by:
isAnInvocationProtocol in interface Protocol

Returns:
false


newProtocolGraph

public ProtocolGraph newProtocolGraph(String address,
                                      int port)
            throws CommunicationException
Builds a new Protocol graph associated with an (IP multicast address, port) pair

Returns:
the created graph

Throws:
CommunicationException - raised if the supplied parameters do not correspond to a valid IP multicast address


newSessionIdentifier

public SessionIdentifier newSessionIdentifier(String address,
                                              int port)
            throws CommunicationException
Builds a new SessionIdentifier associated with an (IP multicast address, port) pair

Returns:
the created SessionIdentifier

Throws:
CommunicationException - raised if the supplied parameters do not correspond to a valid IP multicast address