summaryrefslogtreecommitdiffstats
path: root/EssentialsGroupManager/src/org/anjocaido/groupmanager/utils
diff options
context:
space:
mode:
authorElgarL <ElgarL@palmergames.com>2012-04-10 20:40:04 +0100
committerElgarL <ElgarL@palmergames.com>2012-04-10 20:40:04 +0100
commit90dc7b628727cb976bb05dbd692d52c752df068d (patch)
tree5196dd668710ea4627e15a356bfbe3984b9fb458 /EssentialsGroupManager/src/org/anjocaido/groupmanager/utils
parent74534d7781850f4cbb854c084911503c12f13cdf (diff)
downloadEssentials-90dc7b628727cb976bb05dbd692d52c752df068d.tar
Essentials-90dc7b628727cb976bb05dbd692d52c752df068d.tar.gz
Essentials-90dc7b628727cb976bb05dbd692d52c752df068d.tar.lz
Essentials-90dc7b628727cb976bb05dbd692d52c752df068d.tar.xz
Essentials-90dc7b628727cb976bb05dbd692d52c752df068d.zip
Stop the error on shutdown if GM failed to load at startup.
GroupManager will now generate it's own log (in the GM folder) to keep things tidy, but also to account of those players unable to find/access their server.log. Startup errors will now lock out ALL commands other than '/manload'
Diffstat (limited to 'EssentialsGroupManager/src/org/anjocaido/groupmanager/utils')
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/Tasks.java41
1 files changed, 41 insertions, 0 deletions
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/Tasks.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/Tasks.java
index f3defd94a..663da1123 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/Tasks.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/Tasks.java
@@ -4,12 +4,17 @@
*/
package org.anjocaido.groupmanager.utils;
+import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
+import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.List;
@@ -17,11 +22,25 @@ import java.util.List;
import org.anjocaido.groupmanager.GroupManager;
import org.anjocaido.groupmanager.data.Group;
+
/**
*
* @author gabrielcouto
*/
public abstract class Tasks {
+
+ /**
+ * Gets the exception stack trace as a string.
+ *
+ * @param exception
+ * @return stack trace as a string
+ */
+ public static String getStackTraceAsString(Exception exception) {
+ StringWriter sw = new StringWriter();
+ PrintWriter pw = new PrintWriter(sw);
+ exception.printStackTrace(pw);
+ return sw.toString();
+ }
public static void copy(InputStream src, File dst) throws IOException {
InputStream in = src;
@@ -44,6 +63,28 @@ public abstract class Tasks {
InputStream in = new FileInputStream(src);
copy(in, dst);
}
+
+ /**
+ * Appends a string to a file
+ *
+ * @param data
+ * @param file
+ */
+ public static void appendStringToFile(String data, String file) throws IOException {
+
+ FileWriter outStream = new FileWriter("." + System.getProperty("file.separator") + file, true);
+
+ BufferedWriter out = new BufferedWriter(outStream);
+
+ data.replaceAll("\n", System.getProperty("line.separator"));
+
+ out.append(new SimpleDateFormat("yyyy-MM-dd HH-mm").format(System.currentTimeMillis()));
+ out.append(System.getProperty("line.separator"));
+ out.append(data);
+ out.append(System.getProperty("line.separator"));
+
+ out.close();
+ }
public static void removeOldFiles(GroupManager gm, File folder) {
if (folder.isDirectory()) {