|
Oracle Fusion Middleware Java API Reference for Oracle TopLink 11g Release 1 (11.1.1) B32476-02 |
||||||||
| 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 CommandManagerpublic boolean isStopped()
public void shutdown()
shutdown in interface CommandManagerpublic void propagateCommand(java.lang.Object command)
propagateCommand in interface CommandManagercommand - An object representing a TopLink commandpublic CommandProcessor getCommandProcessor()
getCommandProcessor in interface CommandManagerpublic void setCommandProcessor(CommandProcessor newCommandProcessor)
setCommandProcessor in interface CommandManagernewCommandProcessor - The intended processor of remote commandspublic TransportManager getTransportManager()
getTransportManager in interface CommandManagerpublic void setTransportManager(TransportManager newTransportManager)
setTransportManager in interface CommandManagernewTransportManager - An instance of the desired transport manager typepublic DiscoveryManager getDiscoveryManager()
getDiscoveryManager in interface CommandManagerpublic void setDiscoveryManager(DiscoveryManager mgr)
public CommandConverter getCommandConverter()
getCommandConverter in interface CommandManagerpublic void setCommandConverter(CommandConverter newCommandConverter)
setCommandConverter in interface CommandManagernewCommandConverter - 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 CommandManagerpublic void setChannel(java.lang.String channel)
setChannel in interface CommandManagerchannel - The service channel subscribed to by this CommandManagerpublic java.lang.String getUrl()
getUrl in interface CommandManagerpublic void setUrl(java.lang.String url)
setUrl in interface CommandManagerurl - The URL String for this CommandManagerpublic boolean shouldPropagateAsynchronously()
shouldPropagateAsynchronously in interface CommandManagerpublic void setShouldPropagateAsynchronously(boolean asyncMode)
setShouldPropagateAsynchronously in interface CommandManagerpublic 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 | ||||||||