EclipseLink 2.2.0, build 'v20110202-r8913' API Reference

org.eclipse.persistence.sessions.coordination.broadcast
Class BroadcastTransportManager

java.lang.Object
  extended by org.eclipse.persistence.sessions.coordination.TransportManager
      extended by org.eclipse.persistence.sessions.coordination.broadcast.BroadcastTransportManager
Direct Known Subclasses:
JMSPublishingTransportManager

public abstract class BroadcastTransportManager
extends TransportManager

Purpose: Base class transport manager for broadcasting RCM protocols: JMS and Oc4jJGroups.

Description: The class doesn't use DiscoveryManager - instead the class (and it's ancestors) implement createConnections method that creates all the necessary connections. This method is called by RemoteCommendManager during initialization.

Author:
Andrei Ilitchev
Since:
OracleAS TopLink 11g (11.1.1)

Field Summary
protected  java.lang.String topicName
           
 
Fields inherited from class org.eclipse.persistence.sessions.coordination.TransportManager
connectionsToExternalServices, DEFAULT_CONTEXT_FACTORY, DEFAULT_DEDICATED_CONNECTION_KEY, DEFAULT_DEDICATED_CONNECTION_VALUE, DEFAULT_IIOP_URL_PORT, DEFAULT_IIOP_URL_PROTOCOL, DEFAULT_NAMING_SERVICE, DEFAULT_REMOVE_CONNECTION_ON_ERROR_MODE, DEFAULT_URL_PORT, DEFAULT_URL_PROTOCOL, DEFAULT_USER_NAME, JNDI_NAMING_SERVICE, localConnection, localContextProperties, namingServiceType, rcm, REGISTRY_NAMING_SERVICE, remoteContextProperties, shouldRemoveConnectionOnError
 
Constructor Summary
BroadcastTransportManager(RemoteCommandManager rcm)
           
 
Method Summary
 void addConnectionToExternalService(org.eclipse.persistence.internal.sessions.coordination.RemoteConnection connection)
          INTERNAL: Add a remote Connection to a remote service.
 void connectBackToRemote(org.eclipse.persistence.internal.sessions.coordination.RemoteConnection connection)
          INTERNAL: Prepare receiving messages by registering this connection as a listener to the Subscriber.
 org.eclipse.persistence.internal.sessions.coordination.RemoteConnection createConnection(ServiceId serviceId)
          INTERNAL: No-op implementation of super abstract method since there is only one connection to a known topic.
 void createConnections()
          INTERNAL: BroadcastTransportManager doesn't use DiscoveryManager (createDiscoveryManager method returns null) therefore this method called during RCM initialization to create all the necessary connections.
 DiscoveryManager createDiscoveryManager()
          ADVANCED: BroadcastTransportManager doesn't use DiscoveryManager - instead RemoteCommandManager calls createConnections method during initialization.
 java.lang.String getTopicName()
          PUBLIC: Return the topic name that this TransportManager will be connecting to.
 void setTopicName(java.lang.String newTopicName)
          PUBLIC: Configure the Topic name for the Topic that this TransportManager will be connecting to.
 
Methods inherited from class org.eclipse.persistence.sessions.coordination.TransportManager
createLocalConnection, decrypt, discardConnections, encrypt, getConnectionsToExternalServices, getConnectionsToExternalServicesForCommandPropagation, getConnectionToLocalHost, getContext, getInitialContextFactoryName, getLocalContextProperties, getNamingServiceType, getPassword, getRemoteCommandManager, getRemoteContextProperties, getRemoteHostContext, getUserName, initialize, removeAllConnectionsToExternalServices, removeConnectionToExternalService, removeLocalConnection, setEncryptedPassword, setEncryptionClassName, setInitialContextFactoryName, setLocalContextProperties, setNamingServiceType, setPassword, setRemoteContextProperties, setShouldRemoveConnectionOnError, setUserName, shouldRemoveConnectionOnError
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

topicName

protected java.lang.String topicName
Constructor Detail

BroadcastTransportManager

public BroadcastTransportManager(RemoteCommandManager rcm)
Method Detail

createDiscoveryManager

public DiscoveryManager createDiscoveryManager()
ADVANCED: BroadcastTransportManager doesn't use DiscoveryManager - instead RemoteCommandManager calls createConnections method during initialization.

Overrides:
createDiscoveryManager in class TransportManager

createConnections

public void createConnections()
INTERNAL: BroadcastTransportManager doesn't use DiscoveryManager (createDiscoveryManager method returns null) therefore this method called during RCM initialization to create all the necessary connections. BroadcastTransportManager ancestors may need to override this method.

Overrides:
createConnections in class TransportManager

createConnection

public org.eclipse.persistence.internal.sessions.coordination.RemoteConnection createConnection(ServiceId serviceId)
INTERNAL: No-op implementation of super abstract method since there is only one connection to a known topic.

Specified by:
createConnection in class TransportManager

addConnectionToExternalService

public void addConnectionToExternalService(org.eclipse.persistence.internal.sessions.coordination.RemoteConnection connection)
INTERNAL: Add a remote Connection to a remote service.

Overrides:
addConnectionToExternalService in class TransportManager

connectBackToRemote

public void connectBackToRemote(org.eclipse.persistence.internal.sessions.coordination.RemoteConnection connection)
                         throws java.lang.Exception
INTERNAL: Prepare receiving messages by registering this connection as a listener to the Subscriber. This method is called by the remote command manager when this service should connect back ('handshake') to the service from which this remote connection came.

Overrides:
connectBackToRemote in class TransportManager
Throws:
java.lang.Exception

getTopicName

public java.lang.String getTopicName()
PUBLIC: Return the topic name that this TransportManager will be connecting to.


setTopicName

public void setTopicName(java.lang.String newTopicName)
PUBLIC: Configure the Topic name for the Topic that this TransportManager will be connecting to. For some subclasses (JMS) this is a required setting and must be set; for other (Oc4jJGroups) it's typically not set.


EclipseLink 2.2.0, build 'v20110202-r8913' API Reference