Mathew,
do you mean class-side initilization that would run when the MCZ is loaded in the image on the "target" system? If so, that is not what I am looking for - I am explicitly trying to initialize that member only on the first system that creates the MCZ. In more detail, when creating resource for the test, I stream eToys .pr file into a String, and the tests then stream Projects from this string as if they were loading the .pr file. The reason I need that, is I cannot (and do not want to) ship these .pr files around with the tests.
Milan
On 2007 February 12 00:27, Matthew Fulmer wrote:
On Sun, Feb 11, 2007 at 10:07:48PM -0500, Milan Zimmermann wrote:
Hi,
I am trying to do something like this: I have a class LoadProjectTest that is essentially a singleton and the LoadProjectTest class is in category eToys-Tests. I'd like to do something like this: In the image where this class originates, I am creating the instance, and setting one instance variable with some value from a local file. I'd like the instance to be stored in Monticello, when I "save" the category. Then, when the MCZ is loaded into another image, the instance would be there, filled with the value as created in the originating image.
However, when I load the MCZ into another image, the instance is null; although I was assuming otherwise, that makes sense as the Monticello repository stores code not live objects.
Is it possible to, somehow, to make Monticello to keep the instance, so it is deserialized from the MCZ when the MCZ is loaded into the target image?
You would write some class initialization code that creates this instance, and stores it where you see fit. Put your code in the class-side initialize method.
A good example of a code that does just that is the class ExternalType in category FFI-Kernel. Look at the methods in category "class initialization"
Thanks Milan
Hope it helps.