commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bill Barker" <>
Subject Re: [Daemon] butchering the daemon api
Date Tue, 23 Sep 2003 05:31:27 GMT

"Daniel Resare" <> wrote in message
> As people talk about an 1.0 release about The Jakarta Commons Daemon
> project I have tried to think hard about the Daemon api as it is exposed
> in the public interfaces in org.apache.commons.daemon.
> I believe that now is the right time to reform the API since it seems
> like no one(*) is using it right now. (I base this on the fact that in
> addition to implementing the Daemon interface, your daemon currently
> needs to have an undocumented init(String[]) method. This breaks the
> Demo daemons included in the projects).
> Since there is little documentation and no implementation explaining
> most of the complexity of the API and no one on this list have answered
> to my queries about it I propse that we remove all but the basic
> functionality exercised by the tomcat Bootstrap class. If anyone wants
> to take repsonsiblity over the extended functionality, they can re-add
> it to the API later on, as that would be an backward compatible change.

I would be -1 if it counted for anything ;-).  My personal preference is to
apply the patch in bug #23242.  After closer review then I did on my comment
on the bug, this seems to fix the Daemon regressions.  I really don't want
to lose the use of the Daemon interface just because Tomcat doesn't use it.

> - Remove the DaemonListener. The daemon listener is undocumented and
> unreferenced. If anyone want to listen to daemons control events in the
> future, please feel free to add it document it and write sample code
> that uses it.

Granted, it's not the most useful interface at the moment, but (since it
doesn't hurt anything), I'd rather keep it for future expansion.

> - Remove the DaemonPermission as the current Daemon invoker
> implementation doesn't use it.

Yeah, well, needs a lot of work.  However (as you've pointed out), it is
harmless as is, and I'd rather have a place to start from.

> - Remove all the fail() methods in DaemonController that doesn't take an
> Exception as an argument, as the new Exception constructors that takes
> an embedded Throwable maked it possible to create generic Exceptions
> that combine another Trhowable with a message.

I can +1 (as before, uselessly from the peanut gallery :) this one.

> That's all the obvious removals IMHO. I'm working on documentation for
> everything that isn't mentioned above.
> cheers
> /noa
> *) Without the patch at
> you need an
> undocumented init(String[]) method in your Daemon class to make it start
> up at all. The fact that his seems to have been unnoticed for some
> months makes me quite confident that tomcat is the only code using the
> commons-daemon code.

View raw message