So, you want the service proxies themselves to serialize themselves and then
re-constitute themselves, connecting back up to the original registry? 

-----Original Message-----
From: Pablo Lalloni [mailto:[EMAIL PROTECTED] 
Sent: Thursday, November 04, 2004 1:23 PM
To: hivemind-dev
Subject: services serialization

I think it would be useful if HiveMind could implement standard
serialization protocol methods if the service interface extends
Serializable and the methods are implemented in the core implementation.

I'm using this to persist the service used by some POJO 'cause the POJO
does not know about which service it's been provided.

So in a base AbstractService class I've implemented Serializable and a
writeReplace() method that returns a SerializedService which holds a
service-id and an interface class name.

This SerializedService also implements the readResolve() method which in
turn asks the regitry for the service when is being deserialized thus
effectively returning the current valid service as hivemind knows at
deserialization time.

The problem is that all this works only if I add the writeReplace()
method to the service interface which is far from ideal, if I do not add
such method HiveMind will just not implement it on the generated proxies
(of course, the correct behaviour).

So, in conclusion, I think that special handling for service points with
service interfaces implementing Serializable and core implementation
defining any serialization protocol method should be added.

Special handling would mean just adding such methods to the generated
proxies and delegating it's behaviour to the _inner implementation.

Does this sounds reasonable?


-- 
Pablo I. Lalloni 
Tel�fono +54 (11) 4347-3177 
Proyecto Pampa
Direcci�n Inform�tica Tributaria
AFIP


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to