gov.nasa.arc.brahms.vm.api.common
Interface IAgent
- All Superinterfaces:
- IActiveConcept, IActiveInstance, IConcept, IType, IUserDefinedType
public interface IAgent
- extends IActiveInstance
An agent in Brahms is the most central construct in a Brahms model.
An agent represents an interactive system, a subject with behavior
interacting with the world. An agent can for example represent a
person in an organization, but could also represent an animal in a
forest. A Brahms model is always about the activities of agents in a
work process.
Method Summary |
IExternalAgent |
getExternalImplementation()
Returns the external agent implementation, the Java object implementing
the IExternalAgent interface. |
boolean |
isExternal()
Indicates whether this agent is an external agent implemented in Java. |
Methods inherited from interface gov.nasa.arc.brahms.vm.api.common.IActiveInstance |
assertBelief, assertBeliefs, getBelief, getBelief, getBelief, getBelief, getBelief, getBelief, getBelief, getBelief, getBeliefs, getBeliefs, getBeliefs, getBeliefs, getBeliefs, getBeliefs, getBeliefs, getBeliefs, getBeliefs, retractBelief |
Methods inherited from interface gov.nasa.arc.brahms.vm.api.common.IType |
getType |
isExternal
boolean isExternal()
throws ExternalException
- Indicates whether this agent is an external agent implemented in Java.
- Returns:
- boolean true if it is an external agent implemented in Java,
false if it is a true Brahms agent
- Throws:
ExternalException
- if an internal error occurs
getExternalImplementation
IExternalAgent getExternalImplementation()
throws ExternalException
- Returns the external agent implementation, the Java object implementing
the IExternalAgent interface. This allows for Java activities to
directly call upon specific services offered by the external agents
using standard object oriented methods without the need to communicate
explicit beliefs to the external agent. The returned implementation
can be cast to the appropriate external agent implementation class.
- Returns:
- IExternalAgent the Java agent implementing the IExternalAgent interface
- Throws:
ExternalException
- if this agent is not an external agent or if
this agent is a remote agent.