In response to Peter:
> no idea - I would -1 the Executable name in favour of something else
> (Animatable or Active???). Still can't think of a good name for
> Interruptable thou ;)

Component == Passive entity
Composer/Composable == Active entity

So that's not a real option.

Processable?
Process?
Threadable?
Program?

Why was it again that Interruptable was a bad name? Perhaps...
...scratches head...can't think of anything else either ;/

> -1 on adding commands at this stage

I agree. Untested code should not go in a beta. But do we move there in
the future or not?

In response to Berin:
> I see what you are saying, however, the mechanism that developers
> use may not necessarily be the Interruptable interface.  The
> contract simply says that the component must remain in a consistent
> state during reconfiguration.  This could simply be done with a
> Lock object that is released when reconfiguration is finished.
> I think in this respect we should not tie the implementation of
> the Interruptable interface to the Re*able interfaces.  Especially
> since they can be passive objects (not Executable or Interruptable).

Oh. Uhm. Yes. Totally correct =)

> > 5 - it is currently stated that start(), run() and stop() may be
> > called multiple times. I have a problem with that - some Components
> > may not support this behaviour (I don't think they should), while
> > some containers may require it. The replacement would be the use
> > of Commands.
>
> Think of a J2EE server.  It should be possible for the administrator
> to stop and restart the Servlet Container as many times as they need.
> The important contracts to maintain are that start() cannot be called
> before initialize(), and stop() cannot be called after dispose(), and
> that Interruptable methods cannot be called when the component is
> stopped.

Yep. But a Container now needs to distinguish between a Component that
only allows start() and stop() to be run once (which imo should be
possible),
and a Component that allows it to happen multiple times.
How do we do that?

> Personally, I think that the Command infrastructure should be considered
> as a mutually exclusive relationship to Executable/Interruptable.

Me too, however...

> However, since this is nearly impossible to enforce, I will agree to
> your lifecycle proposal for their placement.

cool beans.

> Also, I believe that the Runnable interface usually tied to Executable
> should be handled by the Component, not necessarily the framework.  It
> is assumed that between start() and stop(), we are executing the code
> for run().

Also agree on that one; it is unclear to me how far we are in
changing this (checking)...almost done. I'll update the lifecycle
doc =)

...

I think Commands should be used as untested code currently in
excalibur.command, that may move to a more prominent place if
it is used.

cheers!

LSD

<java:sig>
        About LSD  = new PersonalInfo();
        LSD.name("Leo Simons");
        LSD.email("[EMAIL PROTECTED]");
        LSD.URL( [
                http://www.leosimons.com, // personal website
                http://www.atfantasy.com, // fantasy RPG portal
                http://www.the-sign.nl    // web-design company
        ] );
        LSD.quote("Buh!");
        email.setSig((String)LSD);
</java:sig>


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

Reply via email to