ABLE 2.0.0 07/02/2003 10:25:01

com.ibm.able
Class AbleRemoteDefaultAgent

java.lang.Object
  |
  +--com.ibm.able.AbleObject
        |
        +--com.ibm.able.AbleDefaultAgent
              |
              +--com.ibm.able.AbleRemoteDefaultAgent
All Implemented Interfaces:
AbleAgent, AbleBean, AbleBeanContainer, AbleBeanRemoteContainer, AbleDataBufferManager, AbleEventListener, AbleEventListenerManager, AbleEventListenerRemoteManager, AbleEventQueueManager, AbleEventQueueProcessor, AbleEventQueueRemoteManager, AblePropertyChangeManager, AbleRemoteAgent, AbleRemoteBean, AbleRemoteEventListener, AbleSerializable, AbleUserDefinedFunctionManager, AbleUserDefinedFunctionRemoteManager, java.util.EventListener, java.beans.PropertyChangeListener, java.rmi.Remote, java.io.Serializable
Direct Known Subclasses:
AblePlatformDefaultAgent, AutotuneAgent

public class AbleRemoteDefaultAgent
extends AbleDefaultAgent
implements AbleRemoteAgent, java.io.Serializable

The AbleRemoteDefaultAgent class provides a remotely exported AbleDefaultAgent.

See Also:
Serialized Form

Field Summary
protected  java.lang.String agentAddr
          The address of this agent.
protected  java.lang.String agentHost
          The name of the host where this agent is running.
protected  java.lang.String agentName
          The formal, remotely addressable name of the agent.
static java.lang.String defaultName
          The default name for an AbleRemoteDefaultAgent agent.
protected  java.rmi.Remote myRemoteStub
          The remote stub of this agent when the agent is exported.
 
Fields inherited from class com.ibm.able.AbleDefaultAgent
activeDataSource, eventConnections, myBeans, numEpochs, processList, processListOK, userDefinedFunctions
 
Fields inherited from class com.ibm.able.AbleObject
changed, chgSupport, comment, dataFlowEnabled, destBufferConnections, eventQueue, fileName, inputBuffer, listeners, logger, name, outputBuffer, parent, propertyConnectionMgr, sourceBufferConnections, state, stateChgSupport, trace
 
Constructor Summary
AbleRemoteDefaultAgent()
          Construct a remote ABLE agent.
AbleRemoteDefaultAgent(java.lang.String theName)
          Construct and export a remote agent wrapped around an AbleDefaultAgent instance with specified name.
AbleRemoteDefaultAgent(java.lang.String theName, java.lang.String theComment)
          Construct and export a remote agent wrapped around an AbleDefaultAgent instance with specified name and comment.
 
Method Summary
static java.lang.String Copyright()
          Determine the copyright of this class.
 java.lang.String getAgentAddr()
          Returns the address of this agent.
 java.lang.String getAgentHost()
          Returns the name of the host on which this agent is running.
 java.lang.String getAgentName()
          Returns the current formal agent name of this agent.
 void init()
          Initialize and configure the agent.
 void init(java.lang.Object theArg)
          Initialize and configure the agent using the specified Object.
 void rmiRebind()
          Make this agent a distributed agent, accessible through the RMI naming registry, and able to participate in a distributed agent platform.
 void rmiUnbind()
          Unbind this agent from the RMI naming registry so that it is no longer accessible in a distributed agent platform.
 
Methods inherited from class com.ibm.able.AbleDefaultAgent
addBean, addBeans, addEventConnection, addUserDefinedFunction, buildProcessList, clsNm, containsBean, containsBean, containsUserDefinedFunction, debugTrace, generateUniqueName, getBean, getBeans, getDataSource, getNumEpochs, getProcessList, getUserDefinedFunction, getUserDefinedFunctions, handleAbleEvent, invokeUserDefinedFunction, isActiveDataSource, process, propertyChange, quitAll, quitEnabledEventProcessing, removeAllBeans, removeAllConnections, removeAllEventConnections, removeBean, removeBean, removeBeans, removeEventConnection, removeUserDefinedFunction, reset, resumeAll, setActiveDataSource, setDataFlowEnabled, setProcessList, setUserDefinedFunctions, suspendAll
 
Methods inherited from class com.ibm.able.AbleObject
addAbleEventListener, addDestBufferConnection, addPropertyChangeListener, addPropertyConnection, addSourceBufferConnection, addStateChangeListener, dataChanged, firePropertyChange, flushAbleEventQueue, getAbleEventListeners, getAbleEventProcessingEnabled, getAbleEventQueueSize, getComment, getDestBufferConnections, getFileName, getInputBuffer, getInputBuffer, getInputBufferAsStringArray, getInputBufferContents, getLogger, getName, getOutputBuffer, getOutputBuffer, getOutputBufferAsStringArray, getOutputBufferContents, getParent, getPropertyConnectionManager, getSleepTime, getSourceBufferConnections, getState, getTraceLogger, hasInputBuffer, hasOutputBuffer, isAbleEventPostingEnabled, isAbleEventProcessingEnabled, isChanged, isConnectable, isDataFlowEnabled, isTimerEventProcessingEnabled, notifyAbleEventListeners, process, processAbleEvent, processBufferConnections, processNoEventProcessingEnabledSituation, processTimerEvent, removeAbleEventListener, removeAllAbleEventListeners, removeAllBufferConnections, removeAllPropertyConnections, removeDestBufferConnection, removePropertyChangeListener, removePropertyConnection, removeSourceBufferConnection, removeStateChangeListener, restartEnabledEventProcessing, restoreFromFile, restoreFromFile, restoreFromSerializedFile, restoreFromStream, resumeEnabledEventProcessing, saveToFile, saveToFile, setAbleEventProcessingEnabled, setChanged, setComment, setFileName, setInputBuffer, setInputBuffer, setLogger, setName, setOutputBuffer, setOutputBuffer, setParent, setSleepTime, setState, setTimerEventProcessingEnabled, setTraceLogger, sourceConnectionsOK, startEnabledEventProcessing, suspendEnabledEventProcessing
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.ibm.able.AbleRemoteAgent
addEventConnection, getDataSource, isActiveDataSource, removeEventConnection, setActiveDataSource
 
Methods inherited from interface com.ibm.able.AbleRemoteBean
getName, getState, process, process, quitAll, reset, resumeAll, suspendAll
 
Methods inherited from interface com.ibm.able.AbleRemoteEventListener
handleAbleEvent
 
Methods inherited from interface com.ibm.able.AbleEventListenerRemoteManager
addAbleEventListener, notifyAbleEventListeners, removeAbleEventListener
 
Methods inherited from interface com.ibm.able.AbleEventQueueRemoteManager
flushAbleEventQueue, getAbleEventProcessingEnabled, getAbleEventQueueSize, getSleepTime, isTimerEventProcessingEnabled, quitEnabledEventProcessing, restartEnabledEventProcessing, resumeEnabledEventProcessing, setAbleEventProcessingEnabled, setSleepTime, setTimerEventProcessingEnabled, startEnabledEventProcessing, suspendEnabledEventProcessing
 
Methods inherited from interface com.ibm.able.AbleBeanRemoteContainer
addBean, containsBean, containsBean, getBean, getBeans, removeAllBeans, removeBean, removeBean
 
Methods inherited from interface com.ibm.able.AbleUserDefinedFunctionRemoteManager
addUserDefinedFunction, containsUserDefinedFunction, getUserDefinedFunction, getUserDefinedFunctions, invokeUserDefinedFunction, removeUserDefinedFunction, setUserDefinedFunctions
 
Methods inherited from interface com.ibm.able.AbleBean
getComment, getLogger, getName, getParent, getState, getTraceLogger, isChanged, process, setChanged, setComment, setLogger, setName, setParent, setState, setTraceLogger
 
Methods inherited from interface com.ibm.able.AbleDataBufferManager
addDestBufferConnection, addSourceBufferConnection, getDestBufferConnections, getInputBuffer, getInputBuffer, getInputBufferAsStringArray, getInputBufferContents, getOutputBuffer, getOutputBuffer, getOutputBufferAsStringArray, getOutputBufferContents, getSourceBufferConnections, hasInputBuffer, hasOutputBuffer, isConnectable, isDataFlowEnabled, processBufferConnections, removeAllBufferConnections, removeDestBufferConnection, removeSourceBufferConnection, setInputBuffer, setInputBuffer, setOutputBuffer, setOutputBuffer
 
Methods inherited from interface com.ibm.able.AbleEventListenerManager
addAbleEventListener, dataChanged, getAbleEventListeners, notifyAbleEventListeners, removeAbleEventListener
 
Methods inherited from interface com.ibm.able.AbleEventQueueManager
flushAbleEventQueue, getAbleEventProcessingEnabled, getAbleEventQueueSize, getSleepTime, isAbleEventPostingEnabled, isAbleEventProcessingEnabled, isTimerEventProcessingEnabled, restartEnabledEventProcessing, resumeEnabledEventProcessing, setAbleEventProcessingEnabled, setSleepTime, setTimerEventProcessingEnabled, startEnabledEventProcessing, suspendEnabledEventProcessing
 
Methods inherited from interface com.ibm.able.AbleEventQueueProcessor
processAbleEvent, processNoEventProcessingEnabledSituation, processTimerEvent
 
Methods inherited from interface com.ibm.able.AblePropertyChangeManager
addPropertyChangeListener, addPropertyConnection, getPropertyConnectionManager, removeAllPropertyConnections, removePropertyChangeListener, removePropertyConnection
 
Methods inherited from interface com.ibm.able.AbleSerializable
getFileName, restoreFromFile, restoreFromFile, saveToFile, saveToFile, setFileName
 
Methods inherited from interface com.ibm.able.AbleBeanContainer
getName
 

Field Detail

defaultName

public static final java.lang.String defaultName
The default name for an AbleRemoteDefaultAgent agent.

agentAddr

protected java.lang.String agentAddr
The address of this agent. It is initialized in init(), and changed if the agent migrates to another computer.

agentHost

protected java.lang.String agentHost
The name of the host where this agent is running. It is initialized in init(), and changed if the agent migrates to another computer.

agentName

protected java.lang.String agentName
The formal, remotely addressable name of the agent. This may be the same as the agent's simple name, an RMI-style lookup name, or a JAS-style name, depending on the context in which the agent is created and used.

myRemoteStub

protected java.rmi.Remote myRemoteStub
The remote stub of this agent when the agent is exported. The agent is exported when it is constructed.
Constructor Detail

AbleRemoteDefaultAgent

public AbleRemoteDefaultAgent()
                       throws java.rmi.RemoteException
Construct a remote ABLE agent.
Throws:
java.rmi.RemoteException - If an error occurs.

AbleRemoteDefaultAgent

public AbleRemoteDefaultAgent(java.lang.String theName)
                       throws java.rmi.RemoteException
Construct and export a remote agent wrapped around an AbleDefaultAgent instance with specified name.
Parameters:
theName - The name of this bean.
Throws:
java.rmi.RemoteException - If an error occurs.

AbleRemoteDefaultAgent

public AbleRemoteDefaultAgent(java.lang.String theName,
                              java.lang.String theComment)
                       throws java.rmi.RemoteException
Construct and export a remote agent wrapped around an AbleDefaultAgent instance with specified name and comment.
Parameters:
theName - The name of this bean.
theComment - A comment or description of this bean.
Throws:
java.rmi.RemoteException - If an error occurs.
Method Detail

init

public void init()
          throws AbleException
Initialize and configure the agent. The bean's state changes to AbleState.Initiated or AbleState.Waiting.

Also, the agent's formal name and address is determined, based upon the agent's simple name and the host on which the agent is running. Therefore, it is important that the agent's simple name not be changed once init() has been called.

Specified by:
init in interface AbleRemoteBean
Overrides:
init in class AbleObject
Throws:
AbleException - If an error occurs.
See Also:
AbleObject.init()

init

public void init(java.lang.Object theArg)
          throws AbleException
Initialize and configure the agent using the specified Object. The bean's state changes to AbleState.Initiated or AbleState.Waiting.

Also, the agent's formal name and address is determined, based upon the agent's simple name and the host on which the agent is running. Therefore, it is important that the agent's simple name not be changed once init() has been called.

Specified by:
init in interface AbleRemoteBean
Overrides:
init in class AbleObject
Parameters:
theArg - An Object used to initialize the bean. In this implementation, the argument parameter is ignored!
Throws:
AbleException - If an error occurs.
See Also:
AbleObject.init()

getAgentAddr

public java.lang.String getAgentAddr()
                              throws AbleException
Returns the address of this agent.
Specified by:
getAgentAddr in interface AbleRemoteAgent
Returns:
The address of this agent.
Throws:
AbleException - If an error occurs.

getAgentHost

public java.lang.String getAgentHost()
                              throws AbleException
Returns the name of the host on which this agent is running.
Specified by:
getAgentHost in interface AbleRemoteAgent
Returns:
The name of the host on which this agent is running.
Throws:
AbleException - If an error occurs.

getAgentName

public java.lang.String getAgentName()
                              throws AbleException
Returns the current formal agent name of this agent.
Specified by:
getAgentName in interface AbleRemoteAgent
Returns:
The "agent name" of this agent.

The agent name may be in the form of a simple name (the same as returned by getName() ), an RMI registry name, or a JAS-type name, depending on the environment in which the agent is created and used.

Throws:
AbleException - If an error occurs.

rmiRebind

public void rmiRebind()
               throws AbleException
Make this agent a distributed agent, accessible through the RMI naming registry, and able to participate in a distributed agent platform.
Throws:
AbleException - If an error occurs.

rmiUnbind

public void rmiUnbind()
               throws AbleException
Unbind this agent from the RMI naming registry so that it is no longer accessible in a distributed agent platform.
Throws:
AbleException - If an error occurs.

Copyright

public static java.lang.String Copyright()
Determine the copyright of this class.
Returns:
A String containing this class's copyright statement.

ABLE 2.0.0 07/02/2003 10:25:01

(C) Copyright IBM Corporation 1999, 2003