1 package org.slf4j.converter;
2
3 import java.io.BufferedWriter;
4 import java.io.File;
5 import java.io.FileWriter;
6 import java.io.IOException;
7 import java.util.regex.Matcher;
8
9
10 public class Writer {
11
12
13 BufferedWriter bwriter;
14
15 boolean isFirstLine;
16
17 public Writer() {
18 }
19
20 public void initFileWriter(File file) {
21 try {
22 FileWriter fileWriter = new FileWriter(file);
23 bwriter = new BufferedWriter(fileWriter);
24 isFirstLine = true;
25 } catch (IOException exc) {
26 System.out.println("error creating filewriter " + file.getAbsolutePath());
27 }
28 }
29
30 public void closeFileWriter() {
31 if (bwriter != null) {
32 try {
33 bwriter.flush();
34 bwriter.close();
35 } catch (IOException e) {
36 System.out.println("error closing filewriter " + bwriter.toString());
37 }
38 }
39 }
40
41 public void rewrite(Matcher matcher, String replacement) {
42 String text = matcher.replaceAll(replacement);
43 if (bwriter != null) {
44 try {
45 if (!isFirstLine) {
46 bwriter.newLine();
47 } else {
48 isFirstLine = false;
49 }
50 bwriter.write(text);
51
52 } catch (IOException exc) {
53 System.out.println("error writing file " + bwriter.toString());
54 }
55 }
56 }
57
58 public void write(String text) {
59 if (bwriter != null) {
60 try {
61 if (!isFirstLine) {
62 bwriter.newLine();
63 } else {
64 isFirstLine = false;
65 }
66 bwriter.write(text);
67
68 } catch (IOException exc) {
69 System.out.println("error writing file " + bwriter.toString());
70 }
71 }
72 }
73
74 }