On 7/17/06, James Strachan <[EMAIL PROTECTED]> wrote:
> The problem is that if you forget that, or use one bit of code outside
> our control (e.g. Tomcat, Jetty, etc.) you instantly get really nasty
> entries on the screen that shows the statistics.  At least now we can
> tell which ones aren't implemented and just bundle those into an
> "unknown" category.  I'm open to alternatives, but I don't like the
> toString one so much.

How about having some optional interface such as Nameable...

This would be possible (though I don't care about an ObjectName, just
a human-readable name).  But it still requires code changes which will
be hard to enforce on third-party components.  It might be ideal to
have some sort of registry where you can say "Runnables of type
org.mortbay.jetty.http.** should be identified as 'Jetty Execute
Thread'".  I haven't thought up a way to make that convenient either,
though -- it has to be open to additions at runtime as new plugins are
registered, etc.

Thanks,
   Aaron

public interface Nameable {
    /**
     * Gets a human-readable name identifying this object.
     */
    String getName();

    /**
     * Gets the unique name of this object.  The object name must
comply with
     * the ObjectName specification in the JMX specification.
     *
     * @return the unique name of this object within the server
     */
    String getObjectName();}
}

Then any console related code could do an instanceof to see if the
implementation has carefully created a nice visual representation.
(Folks could use AOP to inject implementations too). This interface
can then be used across many different kinds of objects for consoles.

Then code like the work manager can stick to regular interfaces like
Executor, Runnable etc? No biggie, just a thought.


> In any case, you can definitely remove GeronimoExecutor.

+1
--

James
-------
http://radio.weblogs.com/0112098/

Reply via email to