org.apache.commons.io.input
public class Tailer extends Object implements Runnable
First you need to create a TailerListener
implementation
(TailerListenerAdapter
is provided for convenience so that you don't have to
implement every method).
For example:
public class MyTailerListener extends TailerListenerAdapter { public void handle(String line) { System.out.println(line); } }
TailerListener listener = new MyTailerListener(); Tailer tailer = Tailer.create(file, listener, delay);
TailerListener listener = new MyTailerListener(); Tailer tailer = new Tailer(file, listener, delay); // stupid executor impl. for demo purposes Executor executor = new Executor() { public void execute(Runnable command) { command.run(); } }; executor.execute(tailer);
TailerListener listener = new MyTailerListener(); Tailer tailer = new Tailer(file, listener, delay); Thread thread = new Thread(tailer); thread.setDaemon(true); // optional thread.start();
Remember to stop the tailer when you have done with it:
tailer.stop();
TailerListener
,
TailerListenerAdapter
Constructor and Description |
---|
Tailer(File file,
TailerListener listener)
Creates a Tailer for the given file, starting from the beginning, with the default delay of 1.0s.
|
Tailer(File file,
TailerListener listener,
long delay)
Creates a Tailer for the given file, starting from the beginning.
|
Tailer(File file,
TailerListener listener,
long delay,
boolean end)
Creates a Tailer for the given file, with a delay other than the default 1.0s.
|
Modifier and Type | Method and Description |
---|---|
static Tailer |
create(File file,
TailerListener listener)
Creates and starts a Tailer for the given file, starting at the beginning of the file
with the default delay of 1.0s
|
static Tailer |
create(File file,
TailerListener listener,
long delay)
Creates and starts a Tailer for the given file, starting at the beginning of the file
|
static Tailer |
create(File file,
TailerListener listener,
long delay,
boolean end)
Creates and starts a Tailer for the given file.
|
long |
getDelay()
Return the delay.
|
File |
getFile()
Return the file.
|
void |
run()
Follows changes in the file, calling the TailerListener's handle method for each new line.
|
void |
stop()
Allows the tailer to complete its current loop and return.
|
public Tailer(File file, TailerListener listener)
file
- The file to follow.listener
- the TailerListener to use.public Tailer(File file, TailerListener listener, long delay)
file
- the file to follow.listener
- the TailerListener to use.delay
- the delay between checks of the file for new content in milliseconds.public Tailer(File file, TailerListener listener, long delay, boolean end)
file
- the file to follow.listener
- the TailerListener to use.delay
- the delay between checks of the file for new content in milliseconds.end
- Set to true to tail from the end of the file, false to tail from the beginning of the file.public static Tailer create(File file, TailerListener listener, long delay, boolean end)
file
- the file to follow.listener
- the TailerListener to use.delay
- the delay between checks of the file for new content in milliseconds.end
- Set to true to tail from the end of the file, false to tail from the beginning of the file.public static Tailer create(File file, TailerListener listener, long delay)
file
- the file to follow.listener
- the TailerListener to use.delay
- the delay between checks of the file for new content in milliseconds.public static Tailer create(File file, TailerListener listener)
file
- the file to follow.listener
- the TailerListener to use.public File getFile()
public long getDelay()
public void run()
public void stop()
Copyright © 2002–2014 The Apache Software Foundation. All rights reserved.