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
commitcdae0898c7848d9d0c3717eb1cacf9fc9bb8a199 (patch)
treec0a39259b8259b548f1b16684dd6fdad88e78496 /EssentialsGroupManager/src/org/anjocaido/groupmanager/utils
parentf02691863ba41d648c31a7167ed2a6fd3fe57bcd (diff)
downloadEssentials-cdae0898c7848d9d0c3717eb1cacf9fc9bb8a199.tar
Essentials-cdae0898c7848d9d0c3717eb1cacf9fc9bb8a199.tar.gz
Essentials-cdae0898c7848d9d0c3717eb1cacf9fc9bb8a199.tar.lz
Essentials-cdae0898c7848d9d0c3717eb1cacf9fc9bb8a199.tar.xz
Essentials-cdae0898c7848d9d0c3717eb1cacf9fc9bb8a199.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()) {