import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.io.PrintStream;
public class ThreadSleepCall {
private boolean okToPrint = true;
public void echoFile(PrintStream ps, File f) throws IOException, InterruptedException {
BufferedReader br = new BufferedReader(new FileReader(f));
try {
while (okToPrint) {
Thread.sleep(1000);
ps.println(br.readLine());
}
} catch (IOException ex) {
if (okToPrint) { // compliant
throw new RuntimeException("Couldn't read a line", ex);
}
throw new RuntimeException("Got an error, but it's not OK to print", ex);
}
}
public void stopPrinting() {
okToPrint = false;
}
}