Hi Sean, This is a problem that Pierre was very interested in fixing. Pierre?
I'm sure that something can be done to separate initial object creation from object re-instantiation on deserialization.
As a quick hack, you can check for the validity of from-oid keyword argument to initialize-instance to find out if this is a new instance or a reconstituted one. You might trace the various generic functions to see the difference in behavior during new object creation and deserialization as a start if you want to figure this out yourself.
I won't have any time to do any significant Elephant work until mid-to- late January, if then.
Regards, Ian On Dec 12, 2007, at 10:05 AM, Sean Ross wrote:
Hi all, I've currently run into a problem using Elephant 0.9.1 and Lispworks 5.0.2 with the bdb backend. I have a user class on which I perform various initializations using initialize-instance, unfortunately my initialize instance method is being called when the instance is deserialised. Now while I can manually check whether the various slots have been initialized, it still feels slightly onerous and I was wondering if there was a way of working with Elephant or patching Elephant to use allocate-instance and do the necessary setup rather than using make-instance directly. cheers, sean. _______________________________________________ elephant-devel site list elephant-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/elephant-devel
_______________________________________________ elephant-devel site list elephant-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/elephant-devel