From 5b81d994388598b1f1b6d549b476e37b487fdb6a Mon Sep 17 00:00:00 2001 From: Max Kalus Date: Wed, 18 Apr 2012 17:05:43 +0200 Subject: [PATCH] Better version number checking and version bump. --- .../simplespleef/util/UpdateChecker.java | 20 +++++++++++++++++-- src/main/resources/plugin.yml | 2 +- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/main/java/de/beimax/simplespleef/util/UpdateChecker.java b/src/main/java/de/beimax/simplespleef/util/UpdateChecker.java index 3fdbe67..0163d88 100644 --- a/src/main/java/de/beimax/simplespleef/util/UpdateChecker.java +++ b/src/main/java/de/beimax/simplespleef/util/UpdateChecker.java @@ -51,11 +51,27 @@ public String checkForUpdate(String version) throws Exception { // just read first line String inputLine = in.readLine(); in.close(); - - if (inputLine != null && inputLine.equals(version)) return null; // no new update + + // convert versions to number and compare + if (inputLine != null && versionToNumber(inputLine) <= versionToNumber(version)) return null; // no new update return inputLine; // new version } + + /** + * convert version string to long + * @param version + * @return + */ + protected long versionToNumber(String versionString) { + String[] noPoints = versionString.split("\\."); + if (noPoints.length != 3) return 0; + long version = 0; + for (int i = 0; i < noPoints.length; i++) + version = version * 100 + Integer.valueOf(noPoints[i]); + + return version; + } /** * Update configuration files, if needed. diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index f4e4ca1..d275a79 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,6 +1,6 @@ name: SimpleSpleef main: de.beimax.simplespleef.SimpleSpleef -version: 3.0.12 +version: 3.0.13 dev-url: http://dev.bukkit.org/server-mods/simple-spleef/ author: maxkalus description: >