summaryrefslogtreecommitdiffstats
path: root/nms-patches/ExpirableListEntry.patch
diff options
context:
space:
mode:
Diffstat (limited to 'nms-patches/ExpirableListEntry.patch')
-rw-r--r--nms-patches/ExpirableListEntry.patch42
1 files changed, 42 insertions, 0 deletions
diff --git a/nms-patches/ExpirableListEntry.patch b/nms-patches/ExpirableListEntry.patch
new file mode 100644
index 00000000..6bb3d391
--- /dev/null
+++ b/nms-patches/ExpirableListEntry.patch
@@ -0,0 +1,42 @@
+--- ../work/decompile-bb26c12b/net/minecraft/server/ExpirableListEntry.java 2014-11-27 08:59:46.749421635 +1100
++++ src/main/java/net/minecraft/server/ExpirableListEntry.java 2014-11-27 08:42:10.096851020 +1100
+@@ -22,7 +22,7 @@
+ }
+
+ protected ExpirableListEntry(Object object, JsonObject jsonobject) {
+- super(object, jsonobject);
++ super(checkExpiry(object, jsonobject), jsonobject);
+
+ Date date;
+
+@@ -65,4 +65,30 @@
+ jsonobject.addProperty("expires", this.d == null ? "forever" : ExpirableListEntry.a.format(this.d));
+ jsonobject.addProperty("reason", this.e);
+ }
++
++ // CraftBukkit start
++ public String getSource() {
++ return this.c;
++ }
++
++ public Date getCreated() {
++ return this.b;
++ }
++
++ private static Object checkExpiry(Object object, JsonObject jsonobject) {
++ Date expires = null;
++
++ try {
++ expires = jsonobject.has("expires") ? a.parse(jsonobject.get("expires").getAsString()) : null;
++ } catch (ParseException ex) {
++ // Guess we don't have a date
++ }
++
++ if (expires == null || expires.after(new Date())) {
++ return object;
++ } else {
++ return null;
++ }
++ }
++ // CraftBukkit end
+ }