UpdateStatusCommand class
Пакет: com.hypixel.hytale.server.core.update.command
Файл: com/hypixel/hytale/server/core/update/command/UpdateStatusCommand.java
extends: CommandBase
Поля (9)
| Модификаторы | Тип | Имя |
|---|---|---|
|
String |
var2 |
|
UpdateModule.DownloadProgress |
var2 |
|
String |
var3 |
|
UpdateService.VersionManifest |
var3 |
|
String |
var3 |
|
String |
var4 |
|
String |
var4 |
|
UpdateModule |
var5 |
|
Message |
var6 |
Методы (6)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
private |
Message |
getDownloadStatusMessage getDownloadStatus(@Nullable UpdateModule var1) |
private |
Message |
getLatestStatusMessage getLatestStatus(@Nullable String var1, @Nullable UpdateModule var2) |
|
|
if if(var2 == null) |
|
|
if if(var3 == null) |
|
|
if if(var2 == null) |
abstract |
|
super super("status", "server.commands.update.status.desc") |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.update.command;
class="kw">import com.hypixel.hytale.common.util.FormatUtil;
class="kw">import com.hypixel.hytale.common.util.java.ManifestUtil;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandContext;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.CommandBase;
class="kw">import com.hypixel.hytale.server.core.update.UpdateModule;
class="kw">import com.hypixel.hytale.server.core.update.UpdateService;
class="kw">import java.util.concurrent.TimeUnit;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class UpdateStatusCommand class="kw">extends CommandBase {
class="kw">public UpdateStatusCommand() {
super("status", "server.commands.update.status.desc");
}
@Override
class="kw">protected void executeSync(@Nonnull CommandContext var1) {
String var2 = ManifestUtil.getImplementationVersion();
String var3 = UpdateService.getEffectivePatchline();
String var4 = UpdateService.getStagedVersion();
UpdateModule var5 = UpdateModule.get();
Message var6 = Message.translation("server.commands.update.status")
.param("version", var2 != null ? Message.raw(var2) : Message.translation("server.commands.update.unknown"))
.param("patchline", var3)
.param("staged", var4 != null ? Message.raw(var4) : Message.translation("server.commands.update.status.none"))
.param("latest", this.getLatestStatus(var2, var5))
.param("downloading", this.getDownloadStatus(var5));
var1.sendMessage(var6);
}
class="kw">private Message getLatestStatus(@Nullable String var1, @Nullable UpdateModule var2) {
if (var2 == null) {
class="kw">return Message.translation("server.commands.update.unknown");
} else {
UpdateService.VersionManifest var3 = var2.getLatestKnownVersion();
if (var3 == null) {
class="kw">return Message.translation("server.commands.update.status.not_checked");
} else {
class="kw">return var1 != null && var1.equals(var3.version)
? Message.translation("server.commands.update.status.up_to_date")
: Message.translation("server.commands.update.status.available").param("version", var3.version);
}
}
}
class="kw">private Message getDownloadStatus(@Nullable UpdateModule var1) {
if (var1 != null && var1.isDownloadInProgress()) {
UpdateModule.DownloadProgress var2 = var1.getDownloadProgress();
if (var2 == null) {
class="kw">return Message.translation("server.commands.update.status.download_starting");
}
String var3 = FormatUtil.bytesToString(var2.downloadedBytes());
String var4 = FormatUtil.bytesToString(var2.totalBytes());
class="kw">return var2.etaSeconds() >= 0L
? Message.translation("server.commands.update.status.downloading_eta")
.param("percent", var2.percent())
.param("downloaded", var3)
.param("total", var4)
.param("eta", FormatUtil.timeUnitToString(var2.etaSeconds(), TimeUnit.SECONDS))
: Message.translation("server.commands.update.status.downloading").param("percent", var2.percent()).param("downloaded", var3).param("total", var4);
} else {
class="kw">return Message.translation("server.commands.update.status.not_downloading");
}
}
}