antlr
Class PreservingFileWriter
java.lang.Object
java.io.Writer
java.io.OutputStreamWriter
java.io.FileWriter
antlr.PreservingFileWriter
- All Implemented Interfaces:
- java.io.Closeable, java.io.Flushable, java.lang.Appendable
public class PreservingFileWriter
- extends java.io.FileWriter
PreservingFileWriter only overwrites target if the new file is different.
Mainly added in order to prevent big and unnecessary recompiles in C++
projects.
I/O is buffered.
Fields inherited from class java.io.Writer |
lock |
Method Summary |
void |
close()
Close the file and see if the actual target is different
if so the target file is overwritten by the copy. |
Methods inherited from class java.io.OutputStreamWriter |
flush, getEncoding, write, write, write |
Methods inherited from class java.io.Writer |
append, append, append, append, append, append, write, write |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
target_file
protected java.io.File target_file
tmp_file
protected java.io.File tmp_file
PreservingFileWriter
public PreservingFileWriter(java.lang.String file)
throws java.io.IOException
- Throws:
java.io.IOException
close
public void close()
throws java.io.IOException
- Close the file and see if the actual target is different
if so the target file is overwritten by the copy. If not we do nothing
- Specified by:
close
in interface java.io.Closeable
- Overrides:
close
in class java.io.OutputStreamWriter
- Throws:
java.io.IOException