Class JMSTopicTransportManager
- java.lang.Object
-
- org.eclipse.persistence.sessions.coordination.TransportManager
-
- org.eclipse.persistence.sessions.coordination.broadcast.BroadcastTransportManager
-
- org.eclipse.persistence.sessions.coordination.jms.JMSPublishingTransportManager
-
- org.eclipse.persistence.sessions.coordination.jms.JMSTopicTransportManager
-
public class JMSTopicTransportManager extends JMSPublishingTransportManager
Purpose: Provide a transport implementation for the Remote Command Module (RCM) that both publishes and subscribes to a JMS topic.
Description: This class manages two connections to the same known JMS Topic: external connection for publishing, local connection for receiving messages.
- Author:
- Steven Vo
- Since:
- OracleAS TopLink 10g (10.0.3)
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.sessions.coordination.jms.JMSPublishingTransportManager
connectionFactoryName, DEFAULT_CONNECTION_FACTORY, DEFAULT_TOPIC, reuseJMSTopicPublisher
-
Fields inherited from class org.eclipse.persistence.sessions.coordination.broadcast.BroadcastTransportManager
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, securableObjectHolder, shouldRemoveConnectionOnError
-
-
Constructor Summary
Constructors Constructor Description JMSTopicTransportManager(RemoteCommandManager rcm)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
createLocalConnection()
INTERNAL: JMSTopicTransportManager may have only two connections: one local and one external.java.util.Map<java.lang.String,org.eclipse.persistence.internal.sessions.coordination.RemoteConnection>
getConnectionsToExternalServicesForCommandPropagation()
INTERNAL: In case there's no external connection attempts to create one, if that's successful then (in case there is no local connection, too) attempts to create local connection in a separate thread.void
removeLocalConnection()
INTERNAL: caches local connection, set localConnection to null, closes the cached connection in a new thread.-
Methods inherited from class org.eclipse.persistence.sessions.coordination.jms.JMSPublishingTransportManager
createConnection, createConnections, createExternalConnection, getReuseJMSTopicPublisher, getTopic, getTopicConnectionFactory, getTopicConnectionFactoryName, getTopicHostUrl, initialize, setNamingServiceType, setShouldReuseJMSTopicPublisher, setTopicConnectionFactoryName, setTopicHostUrl
-
Methods inherited from class org.eclipse.persistence.sessions.coordination.broadcast.BroadcastTransportManager
addConnectionToExternalService, connectBackToRemote, createConnection, createDiscoveryManager, getTopicName, setTopicName
-
Methods inherited from class org.eclipse.persistence.sessions.coordination.TransportManager
decrypt, discardConnections, encrypt, getConnectionsToExternalServices, getConnectionToLocalHost, getContext, getEncryptedPassword, getInitialContextFactoryName, getLocalContextProperties, getNamingServiceType, getPassword, getRemoteCommandManager, getRemoteContextProperties, getRemoteHostContext, getUserName, hasPassword, removeAllConnectionsToExternalServices, removeConnectionToExternalService, setConfig, setEncryptedPassword, setEncryptionClassName, setInitialContextFactoryName, setLocalContextProperties, setPassword, setRemoteCommandManager, setRemoteContextProperties, setShouldRemoveConnectionOnError, setUserName, shouldRemoveConnectionOnError
-
-
-
-
Constructor Detail
-
JMSTopicTransportManager
public JMSTopicTransportManager(RemoteCommandManager rcm)
-
-
Method Detail
-
createLocalConnection
public void createLocalConnection()
INTERNAL: JMSTopicTransportManager may have only two connections: one local and one external. In case the local connection doesn't exist, this method creates it.- Overrides:
createLocalConnection
in classJMSPublishingTransportManager
-
getConnectionsToExternalServicesForCommandPropagation
public java.util.Map<java.lang.String,org.eclipse.persistence.internal.sessions.coordination.RemoteConnection> getConnectionsToExternalServicesForCommandPropagation()
INTERNAL: In case there's no external connection attempts to create one, if that's successful then (in case there is no local connection, too) attempts to create local connection in a separate thread. Returns clone of the original map.- Overrides:
getConnectionsToExternalServicesForCommandPropagation
in classJMSPublishingTransportManager
-
removeLocalConnection
public void removeLocalConnection()
INTERNAL: caches local connection, set localConnection to null, closes the cached connection in a new thread.- Overrides:
removeLocalConnection
in classJMSPublishingTransportManager
-
-