avalon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mircea Toma <mirceat...@home.com>
Subject Re: BlockListener needs more methods
Date Fri, 11 Jan 2002 03:02:03 GMT
> public interface Repository extends Component {
>     Repository getChildRepository( String childName );
> }
>
> Here is is if you want it to be compatible with RMI :
>
> public interface Repository extends Component, Remote{
>     Repository getChildRepository( String childName ) throws
> RemoteException;
> }
>
> Are we going to add RemoteException to all methods that we might want to
> transport?

Yes, if you are using RMI. What I'm saying is that the PublisherService will 
verify the name and the object to be published using specific rules. For 
example for:
RMIPublisherService will verify if the object implements Serializable or 
Remote interface, if it implements Remote will also verify if the methods are 
throwing RemoteException-s.
JMXPublisherService will verify if object implement a *MBean interface, 
verify if the name is an ObjectName, test if the method parameters and 
returned results are primitive types or wrappers for primitives types.
SOAPPublisherService will verify if it can serialize method parameters and 
returned results.

Of course, the publishing service can be smart and do things for you like: if 
you pass only a String as name (like DefaultSystemManager does now) will 
build the specific name object, or create proxies for the registered objects 
like Phoenix JMX and Glue will do.

If specific rules are not fulfilled the PublisherService will throw exception 
like: ObjectNotCompliantException, NameNotCompliantException ....


>
> To give your question a serious answer, the API you propose as a general
> one could delegate to AltRMI and Glue (only one impl of SOAP). 

Will not really delegate, but use them.

Mircea

--
To unsubscribe, e-mail:   <mailto:avalon-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:avalon-dev-help@jakarta.apache.org>


Mime
View raw message