To provide a good key for resources there was developed a hierarchy of interfaces
for the services (proxies). First some naming conventions. For easy identifying
an interface it should end with the word ``IFace'' like
the MAFFinder interface is called ``MAFFinderIFace''. Some
resources belong basically to the same group. For example the communication
methods offered to an Agent are basically the same independent from the protocol
used. This basic collection of methods is called ``AgentCommIFace''.
To give an Agent the possibility to choose a special protocol, each communication
service provides a derived interface with the common abbreviation of the protocol
at the beginning. For the RMI communication service means this that the published
interface has to be called ``RMIAgentCommIFace''. The same
mechanism is used for the plain socket protocol and the interface is called
therefor ``PLSAgentCommIFace''.
The same rules are applying for the packages
where the communication services are belonging to. The main package is ``tagents.sysagent.communication''
and every protocol has its own sub-package in the form of the abbreviation in
lower case letters. The RMI communication service resides in the package ``
tagents.sysagent.communication.rmi'',
is called ``
RMICommService'' and implements the interface
``
RMIAgentCommIFace''. These rules are used in the Agent
class to search for a suitable communication form between two Agent Systems.
Any protocol implementation which is not conform with these conventions will
be ignored by the search algorithm.