Hi,
Theres a few concerns I have relating to the activity related lifecycle
methods and changes proposed recently. It was identified that there is no
real need to separate suspend/resume features. They were effectivly a dual
that were codependent. It was then further identified that start/stop was a
dual and *should* be codependent. Further more suspend/resume requires
start/stop.
Taking this one step further we would see that Initialize/Dispose are a
dual aswell and by the same token should be kept together. There could be
also an arguement that start/stop *should* extend initialize/dispose.
thus we have
interface ID
{
initialize();
dispose();
}
interface SS extends ID
{
start();
stop();
}
interface SR extends SS
{
suspend();
resume();
}
This is what is the "proper" way of doing things. I had a look through my
own code, avalons code and other codebases (ie turbine) and found that most
of the code did not follow this pattern. So naturally I feel a little
uncomfortable at changing our pattern at the eleventh hour before we got
beta when it has yet to be tested.
I also don't really like the proposed name. I already use Executable in
another interface name as do a few other projects (most likely ant aswell).
The Blahable name is also an accepted pattern for interfaces with a single
method blah() - I don't think we should change that. Possible alternatives
I could think of were
Constructed - the Initializable/Disposable dual
Active, Animated - the Startable/Stoppable dual
ReBuilder??? - the suspend/resume dual
Then I began thinking ... do we even need suspend/resume? What does
suspend/resume give us that start/stop doesn't give us?
start/stop could be called multiple times in lifecycle of component, only
while stopped could you recontextualize/recompose/reconfigure. So what do
you think - do we need suspend/resume?
Fede also expressed some reservations about the package name
"org.apache.avalon.lifecycle" so I propose the name
"org.apache.avalon.activity".
Thoughts?
Cheers,
Pete
*-----------------------------------------------------*
| "Faced with the choice between changing one's mind, |
| and proving that there is no need to do so - almost |
| everyone gets busy on the proof." |
| - John Kenneth Galbraith |
*-----------------------------------------------------*
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]