aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/util
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/gtPlusPlus/core/util')
-rw-r--r--src/Java/gtPlusPlus/core/util/Utils.java41
-rw-r--r--src/Java/gtPlusPlus/core/util/array/Pair.java8
-rw-r--r--src/Java/gtPlusPlus/core/util/item/ItemUtils.java2
3 files changed, 48 insertions, 3 deletions
diff --git a/src/Java/gtPlusPlus/core/util/Utils.java b/src/Java/gtPlusPlus/core/util/Utils.java
index effe0952f7..0909e4bf2d 100644
--- a/src/Java/gtPlusPlus/core/util/Utils.java
+++ b/src/Java/gtPlusPlus/core/util/Utils.java
@@ -2,9 +2,14 @@ package gtPlusPlus.core.util;
import java.awt.Color;
import java.awt.Graphics;
+import java.io.ByteArrayOutputStream;
import java.io.File;
+import java.io.IOException;
+import java.io.ObjectOutput;
+import java.io.ObjectOutputStream;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
+import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.security.SecureRandom;
import java.util.ArrayList;
@@ -15,6 +20,8 @@ import java.util.Map;
import java.util.Timer;
import java.util.TimerTask;
+import javax.xml.bind.DatatypeConverter;
+
import org.apache.commons.lang3.EnumUtils;
import cpw.mods.fml.common.FMLCommonHandler;
@@ -821,4 +828,38 @@ public class Utils {
}
+ public static String calculateChecksumMD5(Object bytes) {
+ byte[] result = new byte[] {};
+ ByteArrayOutputStream bos = new ByteArrayOutputStream();
+ ObjectOutput out = null;
+ try {
+ out = new ObjectOutputStream(bos);
+ out.writeObject(bytes);
+ out.flush();
+ result = bos.toByteArray();
+ }
+ catch (IOException e) {
+ } finally {
+ try {
+ bos.close();
+ }
+ catch (IOException e) {}
+ }
+ return calculateChecksumMD5(result);
+ }
+
+ public static String calculateChecksumMD5(byte[] bytes) {
+ MessageDigest md;
+ try {
+ md = MessageDigest.getInstance("MD5");
+ md.update(bytes);
+ byte[] digest = md.digest();
+ String myHash = DatatypeConverter.printHexBinary(digest).toUpperCase();
+ return myHash;
+ }
+ catch (NoSuchAlgorithmException e) {
+ return null;
+ }
+ }
+
}
diff --git a/src/Java/gtPlusPlus/core/util/array/Pair.java b/src/Java/gtPlusPlus/core/util/array/Pair.java
index ec5971c449..1d2c0ef7cb 100644
--- a/src/Java/gtPlusPlus/core/util/array/Pair.java
+++ b/src/Java/gtPlusPlus/core/util/array/Pair.java
@@ -1,7 +1,13 @@
package gtPlusPlus.core.util.array;
-public class Pair<K,V> {
+import java.io.Serializable;
+public class Pair<K,V> implements Serializable {
+
+ /**
+ * SVUID
+ */
+ private static final long serialVersionUID = 1250550491092812443L;
private final K key;
private final V value;
diff --git a/src/Java/gtPlusPlus/core/util/item/ItemUtils.java b/src/Java/gtPlusPlus/core/util/item/ItemUtils.java
index 3d21a845bc..367539b49d 100644
--- a/src/Java/gtPlusPlus/core/util/item/ItemUtils.java
+++ b/src/Java/gtPlusPlus/core/util/item/ItemUtils.java
@@ -3,8 +3,6 @@ package gtPlusPlus.core.util.item;
import java.util.ArrayList;
import java.util.List;
-import org.apache.commons.lang3.reflect.FieldUtils;
-
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.GameRegistry.UniqueIdentifier;
import gregtech.api.enums.Materials;