From 08592ec36d523bf5c81851d3ae357fd665224765 Mon Sep 17 00:00:00 2001 From: Uwe Stieber Date: Thu, 19 Feb 2015 10:49:32 +0100 Subject: [PATCH] Terminal: Move terminal logging into workspace state location (if exist) --- .../terminal/provisional/api/Logger.java | 23 ++++++------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/plugins/org.eclipse.tm.terminal/src/org/eclipse/tm/internal/terminal/provisional/api/Logger.java b/plugins/org.eclipse.tm.terminal/src/org/eclipse/tm/internal/terminal/provisional/api/Logger.java index fa6fee91f87..e703482bb90 100644 --- a/plugins/org.eclipse.tm.terminal/src/org/eclipse/tm/internal/terminal/provisional/api/Logger.java +++ b/plugins/org.eclipse.tm.terminal/src/org/eclipse/tm/internal/terminal/provisional/api/Logger.java @@ -13,11 +13,12 @@ *******************************************************************************/ package org.eclipse.tm.internal.terminal.provisional.api; -import java.io.File; import java.io.FileOutputStream; import java.io.PrintStream; +import org.eclipse.core.runtime.IPath; import org.eclipse.core.runtime.IStatus; +import org.eclipse.core.runtime.Platform; import org.eclipse.core.runtime.Status; import org.eclipse.tm.internal.terminal.control.impl.TerminalPlugin; @@ -50,24 +51,14 @@ public final class Logger { private static PrintStream logStream; static { - String logFile = null; - //TODO I think this should go into the workspace metadata instead. - File logDirWindows = new File("C:\\eclipselogs"); //$NON-NLS-1$ - File logDirUNIX = new File("/tmp/eclipselogs"); //$NON-NLS-1$ - - if (logDirWindows.isDirectory()) { - logFile = logDirWindows + "\\tmterminal.log"; //$NON-NLS-1$ - } else if (logDirUNIX.isDirectory()) { - logFile = logDirUNIX + "/tmterminal.log"; //$NON-NLS-1$ - } - - if (logFile != null) { + IPath logFile = Platform.getStateLocation(TerminalPlugin.getDefault().getBundle()); + if (logFile != null && logFile.toFile().isDirectory()) { + logFile = logFile.append("tmterminal.log"); //$NON-NLS-1$ try { - logStream = new PrintStream(new FileOutputStream(logFile, true)); + logStream = new PrintStream(new FileOutputStream(logFile.toFile(), true)); } catch (Exception ex) { logStream = System.err; - logStream - .println("Exception when opening log file -- logging to stderr!"); //$NON-NLS-1$ + logStream.println("Exception when opening log file -- logging to stderr!"); //$NON-NLS-1$ ex.printStackTrace(logStream); } }