| package org.maltparser.parser; |
|
|
| import java.io.BufferedWriter; |
| import java.io.FileWriter; |
| import java.io.IOException; |
| import java.io.OutputStreamWriter; |
|
|
| import org.maltparser.core.exception.MaltChainedException; |
|
|
| public class Diagnostics { |
| |
| protected final BufferedWriter diaWriter; |
| |
| public Diagnostics(String fileName) throws MaltChainedException { |
| try { |
| if (fileName.equals("stdout")) { |
| diaWriter = new BufferedWriter(new OutputStreamWriter(System.out)); |
| } else if (fileName.equals("stderr")) { |
| diaWriter = new BufferedWriter(new OutputStreamWriter(System.err)); |
| } else { |
| diaWriter = new BufferedWriter(new FileWriter(fileName)); |
| } |
| } catch (IOException e) { |
| throw new MaltChainedException("Could not open the diagnostic file. ", e); |
| } |
| |
| |
| } |
| |
| |
| |
| |
|
|
| public BufferedWriter getDiaWriter() { |
| return diaWriter; |
| } |
| |
| public void writeToDiaFile(String message) throws MaltChainedException { |
| try { |
| getDiaWriter().write(message); |
| } catch (IOException e) { |
| throw new MaltChainedException("Could not write to the diagnostic file. ", e); |
| } |
| } |
| |
| public void closeDiaWriter() throws MaltChainedException { |
| if (diaWriter != null) { |
| try { |
| diaWriter.flush(); |
| diaWriter.close(); |
| } catch (IOException e) { |
| throw new MaltChainedException("Could not close the diagnostic file. ", e); |
| } |
| } |
| } |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| } |
|
|