X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Ffcp%2FAbstractSoneCommand.java;h=93b5d322e13ab28e37891420037fd41114a67ba6;hp=3698b05afed6675a1d700ed559ada3d4e05fd336;hb=8e313509a42a8c638fcac018dd73dd975bf9cb68;hpb=4f1c79caddd4f38e9639f054f7a8800c2a5627b3 diff --git a/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java b/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java index 3698b05..93b5d32 100644 --- a/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java +++ b/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java @@ -161,11 +161,11 @@ public abstract class AbstractSoneCommand extends AbstractCommand { if (mandatory && (soneId == null)) { throw new FcpException("Could not load Sone ID from “" + parameterName + "”."); } - Optional sone = core.getSone(soneId); - if ((mandatory && !sone.isPresent()) || (mandatory && sone.isPresent() && (localOnly && !sone.get().isLocal()))) { + Sone sone = core.getSone(soneId); + if ((mandatory && (sone == null)) || ((sone != null) && localOnly && !sone.isLocal())) { throw new FcpException("Could not load Sone from “" + soneId + "”."); } - return sone; + return Optional.fromNullable(sone); } /** @@ -237,6 +237,7 @@ public abstract class AbstractSoneCommand extends AbstractCommand { protected static SimpleFieldSet encodeSone(Sone sone, String prefix, Optional localSone) { SimpleFieldSetBuilder soneBuilder = new SimpleFieldSetBuilder(); + soneBuilder.put(prefix + "ID", sone.getId()); soneBuilder.put(prefix + "Name", sone.getName()); soneBuilder.put(prefix + "NiceName", SoneAccessor.getNiceName(sone)); soneBuilder.put(prefix + "LastUpdated", sone.getTime()); @@ -272,10 +273,7 @@ public abstract class AbstractSoneCommand extends AbstractCommand { soneBuilder.put(prefix + "Count", sones.size()); for (Sone sone : sones) { String sonePrefix = prefix + soneIndex++ + "."; - soneBuilder.put(sonePrefix + "ID", sone.getId()); - soneBuilder.put(sonePrefix + "Name", sone.getName()); - soneBuilder.put(sonePrefix + "NiceName", SoneAccessor.getNiceName(sone)); - soneBuilder.put(sonePrefix + "Time", sone.getTime()); + soneBuilder.put(encodeSone(sone, sonePrefix, Optional.absent())); } return soneBuilder.get();