That's ALL _IMVHO_, I don't know what others think, but we mustn't
forget that our container needs to solve one very very very specific
problem, the Cocoon problem...
Hmm... Thought about it over some nicotine, and if people do really feel
strong about not loosing component instances "all of a sudden", I'd
rather go down the path the JVM uses: garbage collection.
When a block is "reloaded" (because of an update of its classes, or a
change in its configuration), simply its instance remains available in
the container, but "inactive".
All new lookups will happen on the new block instances, previously
acquired components will still work with the old block, no question
asked (never loose anything).
And then to have a some sort of "Garbage Collector" which flushes out
all previously deployed block instances not having components instances
wired from other blocks.
Only thing I can think about is that some block might never be garbage
collected because someone didn't release a wiring, but probably we can
"force" a manual disconnection (notify the admin who triggered the
reload, or something).
sounds great to me +1
--
Torsten