A remote interface is an interface to a Java object in a different
address space. It is a directional connection between a netlet and
another netlet, or between a netlet and a node.
While a remote interface largely looks like a local interface, there
are some important differences:
- The interface is marked by org.jtrix.base.IRemote.
- The interface may be explicitly closed down.
- User and provider of the interface may fail independently and at any
time.
- User and provider have different classloaders and different sets of
classes.
- The interface may be accessed and/or implemented asynchronously.
- Arguments, returns, and exceptions behave differently (see
).
The Jtrix API provides classes for detecting and exploiting the above
differences if the application chooses to do so. For example, IAsynchronousClient
and IAsynchronousServer (both in org.jtrix.base)
allow thread-economic implementation of users and providers.
Ulf Leonhardt
2001-08-16