Hi Paul, Comments inline.
> -----Original Message----- > From: Paul Hammant [mailto:[EMAIL PROTECTED]] > Sent: Sunday, December 23, 2001 8:40 AM > To: [EMAIL PROTECTED] > Subject: New tool - armi - 'alternate to RMI' > > > Folks, > > I'm more usually found in the Avalon project at Jakarta. I have > something that I have been writing that might be more at home > here than > there. It is a replacement for RMI that delivers on one design goal : > > Any interface can be published over the wire. It does > not have to > extend Remote or have RemoteException thrown left, right and centre. > > I appreciate that as many people love RemoteException as > there are those > that hate it. We do of course indicate this serious error state but > with an extension of RuntimeException. The user of armi will > have to be > careful in their strategic handler code to have a catch > clause for the > exception, but it at least allows the developer how to handle > it rather > than forcing it to be handled everywhere (like RemoteException). > > The interface is published on the server : > > void publish(Object impl, String asName, Class[] > interfacesToPublish) > > This forces of course a interface/impl seperation, but we're > all doing > that in this age right? On the client side, the developer > has to do a > lookup: > > Object lookup(ArmiHostContext hostContext, String named, Class[] > exposingInterfaces) > > Such that the following could be done: > > ArmiHostContext arhc = new PlainSocketHostContext("myserver",1234); > Log = (Log) ArmiFactory.getDefaultArmiFactrory().lookup(arhc, > "log-service", Log.class); > > The server side is handled automatically by the fact that the publish > method is called. The client side needs some generated classes (that > implement the interfaces) that will be build in a style > similar to RMIC. > > It is about 70% done. And there will be some limitations (it leans > towards simple, standard, serializable primitives and object > types for > params and return codes). > > Are you folks interested? Is Commons the best place? How is a > decision > made here? Yes, I am interested. I believe commons is the right place. I assume you are a comitter on avalon? Just ask for karma to the commons-sandbox and start building a proposal. It is that easy. Then if it gains traction, we vote to upgrade it to commons. I would say just start putting it in the sandbox. I am willing to help you with that. Scott Sanders > > Regards, > > - Paul H > > > -- > To unsubscribe, e-mail: > <mailto:commons-dev-> [EMAIL PROTECTED]> > For > additional commands, > e-mail: <mailto:[EMAIL PROTECTED]> > > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>