|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--java.rmi.server.RemoteObject | +--java.rmi.server.RemoteServer | +--java.rmi.server.UnicastRemoteObject | +--org.safs.rmi.engine.RemoteRoot | +--org.safs.rmi.engine.AgentImpl | +--org.safs.abbot.JVMAgent
This is a concrete extension of a SAFS AgentImpl for Abbot This class is inserted into each JVM by our Bootstrap AgentClassLoader and subsequently communicates with a SAFS localhost RMI server for automated testing.
To insert this class via the AgentClassLoader the following minimum settings must appear in the safsjvmagent.properties file:
safsjvmagent.properties:
AgentImpl
,
ServerImpl
, Serialized FormInner classes inherited from class org.safs.rmi.engine.AgentImpl |
AgentImpl.ServerMonitor, AgentImpl.STAFMonitor |
Inner classes inherited from class org.safs.rmi.engine.RemoteRoot |
RemoteRoot.ShutdownHook |
Field Summary | |
static java.lang.String |
DEFAULT_ABBOT_AGENT
'SAFSAbbotJVMAgent': Unique Agent remoteType. |
Fields inherited from class org.safs.rmi.engine.AgentImpl |
DEFAULT_RMI_AGENT, DEFAULT_RMI_SERVER, monitor, objID, server, serverName, shutdown, stafHelper, stafmonitor, stafshutdown |
Fields inherited from class org.safs.rmi.engine.RemoteRoot |
_debug, remoteType |
Fields inherited from class java.rmi.server.RemoteObject |
ref |
Constructor Summary | |
JVMAgent()
Constructor for JVMAgent. |
Method Summary | |
java.lang.String |
getCaption(java.lang.Object object)
Retrieve the Caption of the object if one exits. |
int |
getChildCount(java.lang.Object parent)
Default implementation does nothing at this time. |
java.lang.Object[] |
getChildren(java.lang.Object parent)
Default implementation does nothing at this time. |
java.lang.String |
getClassName(java.lang.Object object)
Return the class name of the provided object represented as an Integer hashcode previously sent over to the Server object. |
protected java.awt.Component |
getComponent(java.lang.Integer hashcode)
Used internally to find the Component matching the stored Integer hashcode. |
java.lang.String |
getID(java.lang.Object object)
Retrieve the ID of the object if the object has an ID. |
java.lang.String |
getName(java.lang.Object object)
Retrieve the name of the object if the object is named. |
java.lang.String |
getProperty(java.lang.Object object,
java.lang.String property)
Retrieve the property value of the object if the object has the property. |
java.lang.String[] |
getPropertyNames(java.lang.Object object)
Retrieve the list of available properties for the object. |
java.lang.Object |
getSubItemAtIndex(java.lang.Object object,
int index)
Default no-op simply returns null. |
java.lang.String[] |
getSuperClassNames(java.lang.Object object)
Return an Array of the complete superclass hierarchy of the provided object represented as an Integer hashcode previously sent over to the Server object. |
java.lang.String |
getText(java.lang.Object object)
Retrieve the displayed text value of the object if the object has a text value. |
int |
getTopLevelCount()
Returns the number of Root Windows known to the Abbot WindowTracker or 0 if there are no known Root Windows. |
java.lang.Object[] |
getTopLevelWindows()
Return array of Integer hashcodes representing keys to stored ComponentItems. |
boolean |
isShowing(java.lang.Object object)
Return true if the specified object is showing/visible. |
boolean |
isValid(java.lang.Object object)
Return true if the object is still valid/finadable in the JVM. |
void |
process(java.lang.Object object,
TestRecordData testRecordData)
An Agent may throw various types of Agent-specific RuntimeExceptions depending upon failure modes. |
void |
setActiveWindow(java.lang.Object object)
Return true if the object is still valid/finadable in the JVM. |
Methods inherited from class org.safs.rmi.engine.AgentImpl |
finalize, getAgentID, getAgentName, getLevel, getMatchingPathObject, getStringData, initialize, isMatchingPath, ping, runCommand, shutdown |
Methods inherited from class org.safs.rmi.engine.RemoteRoot |
log, rebindLocalRMIRegistry |
Methods inherited from class java.rmi.server.UnicastRemoteObject |
clone, exportObject, exportObject, exportObject, unexportObject |
Methods inherited from class java.rmi.server.RemoteServer |
getClientHost, getLog, setLog |
Methods inherited from class java.rmi.server.RemoteObject |
equals, getRef, hashCode, toString, toStub |
Methods inherited from class java.lang.Object |
getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
public static final java.lang.String DEFAULT_ABBOT_AGENT
org.safs.STAFHelper#isToolAvailable()
Constructor Detail |
public JVMAgent() throws java.rmi.RemoteException
java.rmi.RemoteException
- Method Detail |
public int getTopLevelCount() throws java.rmi.RemoteException, java.lang.Exception
getTopLevelCount
in class AgentImpl
Agent.getTopLevelCount()
public java.lang.Object[] getTopLevelWindows() throws java.rmi.RemoteException, java.lang.Exception
getTopLevelWindows
in class AgentImpl
Agent.getTopLevelWindows()
public int getChildCount(java.lang.Object parent) throws java.rmi.RemoteException, java.lang.Exception
AgentImpl
getChildCount
in class AgentImpl
Agent.getChildCount(Object)
public java.lang.Object[] getChildren(java.lang.Object parent) throws java.rmi.RemoteException, java.lang.Exception
AgentImpl
getChildren
in class AgentImpl
Agent.getChildren(Object)
protected java.awt.Component getComponent(java.lang.Integer hashcode)
public java.lang.String getClassName(java.lang.Object object) throws java.rmi.RemoteException, java.lang.Exception
getClassName
in class AgentImpl
Agent.getClassName(Object)
public java.lang.String[] getSuperClassNames(java.lang.Object object) throws java.rmi.RemoteException, java.lang.Exception
getSuperClassNames
in class AgentImpl
Agent.getSuperClassNames(Object)
public java.lang.String[] getPropertyNames(java.lang.Object object) throws java.rmi.RemoteException, java.lang.Exception
getPropertyNames
in class AgentImpl
object
- An object from getTopLevelWindows or from a previous call to getChildren.public java.lang.String getProperty(java.lang.Object object, java.lang.String property) throws java.rmi.RemoteException, java.lang.NoSuchFieldException, java.lang.Exception
getProperty
in class AgentImpl
object
- -- An object from getTopLevelWindows or from a previous call to getChildren.property
- -- the case-sensitive name of the property to seek.public java.lang.String getCaption(java.lang.Object object) throws java.rmi.RemoteException, java.lang.NoSuchFieldException, java.lang.Exception
getCaption
in class AgentImpl
object
- An object from getTopLevelWindows or from a previous call to getChildren.java.lang.NoSuchFieldException
- if the object does not provide a caption.public java.lang.String getName(java.lang.Object object) throws java.rmi.RemoteException, java.lang.NoSuchFieldException, java.lang.Exception
getName
in class AgentImpl
object
- An object from getTopLevelWindows or from a previous call to getChildren.java.lang.NoSuchFieldException
- if the object does not provide a name.public java.lang.String getID(java.lang.Object object) throws java.rmi.RemoteException, java.lang.NoSuchFieldException, java.lang.Exception
getID
in class AgentImpl
object
- An object from getTopLevelWindows or from a previous call to getChildren.java.lang.NoSuchFieldException
- if the object does not provide an ID.public java.lang.String getText(java.lang.Object object) throws java.rmi.RemoteException, java.lang.Exception
getText
in class AgentImpl
object
- An object from getTopLevelWindows or from a previous call to getChildren.public boolean isShowing(java.lang.Object object) throws java.rmi.RemoteException, java.lang.Exception
isShowing
in class AgentImpl
object
- An object from getTopLevelWindows or from a previous call to getChildren.public boolean isValid(java.lang.Object object) throws java.rmi.RemoteException, java.lang.Exception
isValid
in class AgentImpl
object
- An object from getTopLevelWindows or from a previous call to getChildren.public void setActiveWindow(java.lang.Object object) throws java.rmi.RemoteException, java.lang.Exception
setActiveWindow
in class AgentImpl
object
- An object from getTopLevelWindows or from a previous call to getChildren.public void process(java.lang.Object object, TestRecordData testRecordData) throws java.rmi.RemoteException, java.lang.Exception
process
in class AgentImpl
SAFSObjectNotFoundRuntimeException
- if the specified Object is not found to exist in the JVM.Agent.process(Object,TestRecordData)
public java.lang.Object getSubItemAtIndex(java.lang.Object object, int index) throws java.rmi.RemoteException, java.lang.Exception
AgentImpl
getSubItemAtIndex
in class AgentImpl
object
- reference (Integer) from which to locate the subitem.index
- of the subitem to retrieve.java.lang.IndexOutOfBoundsException
- if index is invalidSAFSObjectNotFoundException
- if subitem at index cannot be retrieved or
if the specified object itself cannot be found.SAFSSubItemsAgentUnsupportedException
- as necessay.SubItemsAgent.getSubItemAtIndex(Object,int)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |