|
Oracle Fusion Middleware Java API Reference for Oracle TopLink 11g Release 1 (11.1.1) B32476-03 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object oracle.toplink.remotecommand.RemoteCommandManager
public class RemoteCommandManager
Purpose: Provide a CommandManager implementation that will be used by both TopLink and non-TopLink applications.
Description: A RemoteCommandManager (or RCM) instance is the primary component of an RCM service instance. It manages the other components of the service, and directs the overall service operation. Its ServiceId uniquely distinguishes it from other service instances in the cluster.
Each RCM has a logical channel to which it subscribes and publishes. This channel determines which other instances in the cluster the service instance sends and receives remote commands to/from. All RCM's on the same channel should have the same discovery manager settings (be communicating on the same multicast) so that the discovery managers may be able to discover one another. RCM's on different channels may operate on the same or on different multicast groups.
An RCM instance knows about other instances in the cluster through its DiscoveryManager. Its TransportManager is repsonsible for setting up the connections to other instances once they are discovered.
An RCM is instructed to "propagate", or execute on all remote service instances in the cluster that subscribe to the same channel, a remote command by its CommandProcessor. Likewise, when an RCM receives a remote command to be executed then it passes the command off to the CommandProcessor for the processing of the command to occur. CommandProcessors pass commands to the RCM as an Object (in a format that may be specific to the application) and the RCM uses its CommandConverter to convert it to a TopLink Command object before sending the Command off to the cluster. Similarly, when a TopLink Command object is received then the RCM invokes its CommandConverter to convert the object into the application format that will be passed to the CommandProcessor to process the command.
CommandManager
,
Command
,
CommandProcessor
,
CommandConverter
,
CommandTransporter
,
DiscoveryManager
Field Summary | |
---|---|
static boolean |
DEFAULT_ASYNCHRONOUS_MODE
|
static java.lang.String |
DEFAULT_CHANNEL
|
Constructor Summary | |
---|---|
RemoteCommandManager(CommandProcessor commandProcessor)
|
|
RemoteCommandManager(CommandProcessor commandProcessor,
TransportManager transportManager)
|
Method Summary | |
---|---|
java.lang.String |
getChannel()
Return the service channel for this command manager. |
CommandConverter |
getCommandConverter()
Return the converter instance used to convert between TopLink Command objects and an application command format. |
CommandProcessor |
getCommandProcessor()
Return the command processor that processes commands received from the cluster. |
DiscoveryManager |
getDiscoveryManager()
Return the discovery manager that detects the arrival of new cluster members |
TransportManager |
getTransportManager()
Return the transport manager that manages sending and receiving of remote commands. |
java.lang.String |
getUrl()
Return the URL for this command manager. |
void |
initialize()
Initialize the remote command manager. |
boolean |
isStopped()
Indicates whether the RCM has been stopped: either initialize hasn't been called or shutdown has been called. |
void |
logDebugWithoutLevelCheck(java.lang.String message,
java.lang.Object[] args)
|
void |
logError(java.lang.String message,
java.lang.Object[] args)
|
void |
logInfo(java.lang.String message,
java.lang.Object[] args)
|
void |
logWarning(java.lang.String message,
java.lang.Object[] args)
|
void |
logWarningWithoutLevelCheck(java.lang.String message,
java.lang.Object[] args)
|
void |
propagateCommand(java.lang.Object command)
ADVANCED: Propagate a remote command to all remote RCM services participating in the TopLink cluster. |
void |
replaceLocalHostIPAddress(java.lang.String ipAddress)
ADVANCED: Allow user to replace the $HOST subString of the local host URL with the user user input at runtime. |
void |
replaceTransportPortNumber(java.lang.String portNumber)
ADVANCED: Allow user to replace the $PORT subString of the local host URL with the user user input at runtime. |
void |
setChannel(java.lang.String channel)
ADVANCED: Set the service channel for this command manager. |
void |
setCommandConverter(CommandConverter newCommandConverter)
ADVANCED: Set the converter instance that will be invoked by this CommandProcessor to convert commands from their application command format into TopLink Command objects before being propagated to remote command manager services. |
void |
setCommandProcessor(CommandProcessor newCommandProcessor)
ADVANCED: Set the command processor that will be invoked to process commands. |
void |
setDiscoveryManager(DiscoveryManager mgr)
Deprecated. overwrite TransportManager.createDiscovery() method if special DiscoveryManager is needed. |
void |
setServerPlatform(ServerPlatform theServerPlatform)
The ServerPlatform must be set manually when the RemoteCommandManager'CommandProcessor is not TopLink Session. |
void |
setShouldPropagateAsynchronously(boolean asyncMode)
ADVANCED: Set whether this command manager should propagate commands synchronously or asynchronously. |
void |
setShouldRemoveConnectionOnError(boolean shouldRemoveConnectionOnError)
Deprecated. |
void |
setTransportManager(TransportManager newTransportManager)
ADVANCED: Set a specific transport manager to manage sending and receiving of remote commands. |
void |
setUrl(java.lang.String url)
ADVANCED: Set the URL for this command manager. |
boolean |
shouldLogDebugMessage()
|
boolean |
shouldLogWarningMessage()
|
boolean |
shouldPropagateAsynchronously()
Return whether this command manager should propagate commands synchronously or asynchronously. |
boolean |
shouldRemoveConnectionOnError()
Deprecated. |
void |
shutdown()
Shut down the remote command manager. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String DEFAULT_CHANNEL
public static final boolean DEFAULT_ASYNCHRONOUS_MODE
Constructor Detail |
---|
public RemoteCommandManager(CommandProcessor commandProcessor)
public RemoteCommandManager(CommandProcessor commandProcessor, TransportManager transportManager)
Method Detail |
---|
public void initialize()
initialize
in interface CommandManager
public boolean isStopped()
public void shutdown()
shutdown
in interface CommandManager
public void propagateCommand(java.lang.Object command)
propagateCommand
in interface CommandManager
command
- An object representing a TopLink commandpublic CommandProcessor getCommandProcessor()
getCommandProcessor
in interface CommandManager
public void setCommandProcessor(CommandProcessor newCommandProcessor)
setCommandProcessor
in interface CommandManager
newCommandProcessor
- The intended processor of remote commandspublic TransportManager getTransportManager()
getTransportManager
in interface CommandManager
public void setTransportManager(TransportManager newTransportManager)
setTransportManager
in interface CommandManager
newTransportManager
- An instance of the desired transport manager typepublic DiscoveryManager getDiscoveryManager()
getDiscoveryManager
in interface CommandManager
public void setDiscoveryManager(DiscoveryManager mgr)
public CommandConverter getCommandConverter()
getCommandConverter
in interface CommandManager
public void setCommandConverter(CommandConverter newCommandConverter)
setCommandConverter
in interface CommandManager
newCommandConverter
- The converter to be used by this CommandManagerpublic boolean shouldLogDebugMessage()
public boolean shouldLogWarningMessage()
public void logDebugWithoutLevelCheck(java.lang.String message, java.lang.Object[] args)
public void logInfo(java.lang.String message, java.lang.Object[] args)
public void logWarning(java.lang.String message, java.lang.Object[] args)
public void logWarningWithoutLevelCheck(java.lang.String message, java.lang.Object[] args)
public void logError(java.lang.String message, java.lang.Object[] args)
public java.lang.String getChannel()
getChannel
in interface CommandManager
public void setChannel(java.lang.String channel)
setChannel
in interface CommandManager
channel
- The service channel subscribed to by this CommandManagerpublic java.lang.String getUrl()
getUrl
in interface CommandManager
public void setUrl(java.lang.String url)
setUrl
in interface CommandManager
url
- The URL String for this CommandManagerpublic boolean shouldPropagateAsynchronously()
shouldPropagateAsynchronously
in interface CommandManager
public void setShouldPropagateAsynchronously(boolean asyncMode)
setShouldPropagateAsynchronously
in interface CommandManager
public void setShouldRemoveConnectionOnError(boolean shouldRemoveConnectionOnError)
setShouldRemoveConnectionOnError
in interface CommandManager
#TransportManager.setShouldRemoveConnectionOnError(boolean shouldRemoveConnectionOnError)
public boolean shouldRemoveConnectionOnError()
shouldRemoveConnectionOnError
in interface CommandManager
#TransportManager.shouldRemoveConnectionOnError()
public void replaceLocalHostIPAddress(java.lang.String ipAddress)
public void replaceTransportPortNumber(java.lang.String portNumber)
public void setServerPlatform(ServerPlatform theServerPlatform)
|
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |