I've been a little quiet, but have been busy testing, testing, testing. Will get back to work on River's modular build in the near future.

AtomicILFactory, is a JERI invocation layer factory alternative to BasicILFactory, which uses atomic input validation during deserialization. Unlike BasicILFactory, proxy's are serialized independantly of other objects in the stream (no shared state), service proxy's have their codebases provisioned after they're authenticated, proxy's aren't deserialized, nor are their codebases provisioned until they're authenticated. Currently the only time a codebase annotation is utilised is during provisioning, the stream uses ClassLoaders at each endpoint. In a modular environment, such as Maven or OSGi, the ClassLoader's at each endpoint (local and remote), use the same codebase (that of the proxy), so all class dependencies are resolved at each endpoint.

There are cases where some classes cannot be resolved, such as when a client passes a parameter object, who's class is not resolvable from the proxy's dependencies (the proxy's ClassLoader), I'm currently working on making it an option to use codebase annotations, but only when classes cannot be resolved from the proxy's ClassLoader. In these cases the codebase must resolve dependencies to the same service api version (service api is the public api the client and proxy use to interact) at the remote server endpoint.

Regards,

Peter.

Reply via email to