All Downloads are FREE. Search and download functionalities are using the official Maven repository.

gnu.cajo.invoke.package.html Maven / Gradle / Ivy

There is a newer version: 1.0.1
Show newest version


This package is the foundation for completely transparent local/remote
inter-VM communication. It provides a standard interface between local/remote
objects, and prevents having to generate unique RMI stubs for every
application specific class. (either explicitly or implicitly)

The rationale behind this paradim is to enable seamless dynamic and interchangeable linking between remote and local objects; in order to accomplish advanced functionality. Objects can also be mobile, i.e. moving from one JVM to another, even providing graphical user interfaces to itself, on remote hosts. Objects can even be dynamically linked, with objects from other applications, at runtime. This can support and harness such concepts as scale-free networking, and the emergent phenomena of collective networking.

For the purposes of this paradigm, any object implementing the {@link gnu.cajo.invoke.Invoke Invoke} interface is considered an Item. If a JVM allows the loading of mobile code, and an item is sent to it, either as an argument, or a return value, that item is referred to as a Proxy, in this architecture.

Also included in the package is the {@link gnu.cajo.invoke.Client Client} and {@link gnu.cajo.invoke.JClient JClient} Application/Applet. While strictly non topical to this package, they provide another standard paradigm for creating, hosting, and using graphical proxy items. They could be likened to a successor to X Windows. They are far more capable, being able to perform application specific computation at the client, offloading the server.





© 2015 - 2024 Weber Informatics LLC | Privacy Policy