3
* Copyright (C) 2012 W. Xaver
4
* W.Xaver[at]googlemail.com
5
* http://zdfmediathk.sourceforge.net/
7
* This program is free software: you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation, either version 3 of the License, or
12
* This program is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
17
* You should have received a copy of the GNU General Public License
18
* along with this program. If not, see <http://www.gnu.org/licenses/>.
20
package mediathek.controller.io;
22
import java.io.BufferedWriter;
24
import java.io.FileOutputStream;
25
import java.io.OutputStreamWriter;
26
import javax.swing.JOptionPane;
27
import mediathek.daten.DDaten;
28
import mediathek.daten.Daten;
29
import mediathek.gui.dialog.DialogZiel;
30
import mediathek.tool.DatumZeit;
31
import mediathek.tool.Funktionen;
32
import mediathek.tool.GuiFunktionen;
33
import mediathek.tool.Log;
34
import mediathek.tool.MVMessageDialog;
36
public class ProgrammLog {
38
public static void LogDateiSchreiben(DDaten ddaten) {
39
DialogZiel dialog = new DialogZiel(ddaten.mediathekGui, ddaten, true, GuiFunktionen.getHomePath() + File.separator + "Mediathek.log", "Logdatei speichern");
40
dialog.setVisible(true);
44
File f = new File(dialog.ziel);
46
MVMessageDialog.showMessageDialog(null, "Datei konnte nicht geschrieben werden!",
47
"Fehler beim Schreiben", JOptionPane.ERROR_MESSAGE);
49
BufferedWriter bw = null;
51
bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(f)));
53
bw.write("#####################################################");
55
bw.write("Erstellt: " + DatumZeit.getJetzt_ddMMyyyy_HHmm());
57
bw.write("#####################################################");
60
bw.write(Funktionen.getProgVersionString());
62
bw.write("Compiled: " + Funktionen.getCompileDate());
64
bw.write("=====================================================");
68
String[] java = Funktionen.getJavaVersion();
69
for (String ja : java) {
73
bw.write("=====================================================");
75
bw.write("Betriebssystem: " + System.getProperty("os.name"));
76
if (System.getProperty("os.name").toLowerCase().contains("windows")) {
77
if (System.getenv("ProgramFiles(x86)") != null) {
85
bw.write("Programmpfad: " + Funktionen.getPathJar());
87
bw.write("Verzeichnis Einstellungen: " + Daten.getBasisVerzeichnis());
92
bw.write("#####################################################");
94
bw.write("## Programmsets ##################################");
96
bw.write("#####################################################");
99
for (int i = 0; i < ddaten.listePset.size(); ++i) {
100
bw.write(ddaten.listePset.get(i).toString());
108
bw.write("#####################################################");
110
bw.write("## Systemmeldungen ##################################");
112
bw.write("#####################################################");
115
bw.write(Log.textSystem.toString());
121
bw.write("#####################################################");
123
bw.write("## Programmausgabe ##################################");
125
bw.write("#####################################################");
128
bw.write(Log.textProgramm.toString());
132
} catch (Exception ex) {
133
Log.fehlerMeldung(319865493, Log.FEHLER_ART_PROG, "ProgrammLog.zeileSchreiben-1", ex);
134
MVMessageDialog.showMessageDialog(null, "Datei konnte nicht geschrieben werden!",
135
"Fehler beim Schreiben", JOptionPane.ERROR_MESSAGE);
139
} catch (Exception ex) {