Title: Draft RPC-able interface for client/server communication in Xindice

I have used what's currently in org.apache.xindice.client.corba as an insipration for the API that needs to be exposed over the

network, and built a first draft of an RPC-able version of it.

I've merged CollectionManagerServant and CollectionServant functionality, but they could be separated again if wanted.

I haven't thought deeply about the separation between simple and internal API's yet, as discussed earlier. I wanted to first

get something that is as close as possible to the current corba API's...

The most important change is the CollectionHandle class, which is meant to be serializable, and thus can be used to let clients designate particular collections, thus emulating "remote object" behaviour.

The server-side implementation of CollectionService would have to keep a hashtable probably to map these handles to real collections.

This is just a start and possible a ground for some further discussion. I'm going to start making a server-side implementation of the API and a new org.apache.xindice.server.Service that starts up an XML-RPC server to expose the API.

The code is in package org.apache.xindice.client.rpc, in analogy with the current CORBA servants. It is quite unrelated to the rest of the codebase (for the moment), so it shouldn't interfere with the existing build process.

James

Reply via email to