show update log

This commit is contained in:
南宫临风
2016-07-09 22:04:43 +08:00
parent b6be41e5c5
commit c33a99d9ed
3 changed files with 70 additions and 9 deletions

View File

@@ -26,12 +26,26 @@ import java.util.Map;
public interface IUpdateChecker {
/**
*
* Update response
*/
void checkOutdate();
/**
*
* @return Update log
*/
String getUpdateLog();
/**
*
* @return Server to assign a mandatory update
*/
boolean isForceUpdate();
/**
*
* @return User manual update
*/
boolean isManualUpdate();
/**

View File

@@ -19,6 +19,7 @@ package org.jackhuang.hellominecraft.util;
import org.jackhuang.hellominecraft.util.logging.HMCLog;
import java.util.Map;
import org.jackhuang.hellominecraft.util.lang.SupportedLocales;
/**
*
@@ -34,9 +35,12 @@ public final class UpdateChecker implements IUpdateChecker {
public String versionString;
public VersionNumber base;
private VersionNumber value;
private boolean isforceUpdate = false;
private boolean isManualUpdate = false;
private String updateLog = null;
public String type;
private Map<String, String> download_link = null;
@@ -53,12 +57,17 @@ public final class UpdateChecker implements IUpdateChecker {
isManualUpdate = showMessage;
if (value == null) {
versionString = NetUtils.get(VERSION_URL + type + "&ver=" + base.toString());
versionString = NetUtils.get(VERSION_URL + type +
"&ver=" + base.toString() +
"&lang=" + SupportedLocales.NOW_LOCALE.self);
Map<String, Object> versionInfo = C.GSON.fromJson(versionString, Map.class);
if (versionInfo.containsKey("version"))
value = VersionNumber.check((String)versionInfo.get("version"));
value = VersionNumber.check((String) versionInfo.get("version"));
if (versionInfo.containsKey("force"))
isforceUpdate = (boolean)versionInfo.get("force");
isforceUpdate = (boolean) versionInfo.get("force");
if (versionInfo.containsKey("log"))
updateLog = (String) versionInfo.get("log");
}
if (value == null) {
@@ -92,6 +101,11 @@ public final class UpdateChecker implements IUpdateChecker {
return isManualUpdate;
}
@Override
public String getUpdateLog() {
return updateLog;
}
@Override
public synchronized OverridableSwingWorker<Map<String, String>> requestDownloadLink() {
return new OverridableSwingWorker() {