Yes, but there is no standard way to enumerate components managed by a
container, so you are going to have to write some container-specific code
anyway.

----- Original Message ----- 
From: "Yannick Menager" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, October 08, 2003 2:15 PM
Subject: Re: Startable doesn't has a isRunning() interface ?


> Yes but there are standard component interfaces ;)
>
> Jonathan Hawkes wrote:
>
> > Difficult to have a "standard" there since there isn't even a standard
> > Container interface...
> >
> > ----- Original Message ----- 
> > From: "Yannick Menager" <[EMAIL PROTECTED]>
> > To: <[EMAIL PROTECTED]>
> > Sent: Wednesday, October 08, 2003 2:08 PM
> > Subject: Re: Startable doesn't has a isRunning() interface ?
> >
> >
> >
> >>The container would generally not call isRunning().... But for example
> >>if I have an admin console, i would like it to be able to be informed of
> >>the state of each component. And I would like it to be a *standard* way
> >>for any Startable Component... be it using a isRunning() type of
> >>function, or using an event-based system, as long as it's standard :)
> >>
> >>Jonathan Hawkes wrote:
> >>
> >>>In the current specification, it is fairly straightforward to implement
> >
> > an
> >
> >>>Avalon container.  When would you suggest the container poll this new
> >>>isRunning method?  It would be preferable to have the component notify
> >
> > the
> >
> >>>container if it shut itself down.  However, then you run the risk of
> >>>perverting IOC.
> >>>
> >>>The Startable interface is simply a lifecycle interface that stipulates
> >
> > a
> >
> >>>contract with the container.  The container does not really care what
> >
> > the
> >
> >>>start() and stop() methods actually do -- or even what they start or
> >
> > stop.
> >
> >>>The contract is simple, and I am opposed to complicating it.
> >>>
> >>>Components are given the resources to manage themselves (that is the
> >
> > point).
> >
> >>>----- Original Message ----- 
> >>>From: "Yannick Menager" <[EMAIL PROTECTED]>
> >>>To: <[EMAIL PROTECTED]>
> >>>Sent: Wednesday, October 08, 2003 1:22 PM
> >>>Subject: Re: Startable doesn't has a isRunning() interface ?
> >>>
> >>>
> >>>
> >>>
> >>>>But that way you're putting a risk that the container might be out of
> >>>>sync with the real state of the component. All that to save having an
> >>>>extra function. I would think the downsides are bigger than the cost
of
> >>>>having an extra function to check the state of the component.
Otherwise
> >>>>most people will implement that function but it won't be standard,
> >>>>reducing potential reusability, and causing pains to people who want
to
> >>>>incorporate dynamic administration capabilities in the container.
> >>>>
> >>>>Jonathan Hawkes wrote:
> >>>>
> >>>>
> >>>>>Yes.  An isRunning() method would not be useful to the container.
The
> >>>>>container knows whether the startable isRunning or not (ie: it has
> >>>
> >>>called
> >>>
> >>>
> >>>>>start() and not stop() ).
> >>>>>
> >>>>>----- Original Message ----- 
> >>>>>From: "Yannick Menager" <[EMAIL PROTECTED]>
> >>>>>To: <[EMAIL PROTECTED]>
> >>>>>Sent: Wednesday, October 08, 2003 10:17 AM
> >>>>>Subject: Startable doesn't has a isRunning() interface ?
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>>Is there any reason Startable doesn't has a isRunning() ( or
something
> >>>>>>like that ) interface ?
> >>>>>>
> >>>>>>
> >>>>>>
>
>>>>>>---------------------------------------------------------------------
> >>>>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
> >>>>>>For additional commands, e-mail: [EMAIL PROTECTED]
> >>>>>>
> >>>>>>
> >>>>
> >>>>
> >>>>
> >>>>---------------------------------------------------------------------
> >>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
> >>>>For additional commands, e-mail: [EMAIL PROTECTED]
> >>>>
> >>>>
> >>
> >>
> >>
> >>---------------------------------------------------------------------
> >>To unsubscribe, e-mail: [EMAIL PROTECTED]
> >>For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


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

Reply via email to