Just wondering if the Tailer API could be simplified by performing the
thread start within the class?
Is it ever going to be useful to have direct access to tailer thread?
I suspect not, as the Listener should provide sufficient access.

It's not safe to start a thread in the constructor (unless the ctor is
final), but one could use static factory methods instead.

So instead of:

  TailerListener listener = ...
  Tailer tailer = new Tailer(file, listener, delay);
  Thread thread = new Thread(tailer);
  thread.start();
  ...
  tailer.stop()

one would do something like:

  TailerListener listener = ...
  Tailer tailer = Tailer.createTailer(file, listener, delay);
  ...
  tailer.stop()

This simplifies the API, and allows the class to force the thread to
be a daemon thread. It also stops the caller from messing with the
thread.

WDYT?

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to