X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Ftemplate%2FSoneAccessor.java;h=ebf2f82a7ad25129270694ff9c5a30ee25a901ba;hb=21c4819261de874652e7c8be37bde5923758cf4b;hp=ee7d16d25a79ca59631e67992da5d1196f21221a;hpb=dd3edaf932d073e2eacb14069a9f6136d516303d;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/template/SoneAccessor.java b/src/main/java/net/pterodactylus/sone/template/SoneAccessor.java index ee7d16d..ebf2f82 100644 --- a/src/main/java/net/pterodactylus/sone/template/SoneAccessor.java +++ b/src/main/java/net/pterodactylus/sone/template/SoneAccessor.java @@ -17,6 +17,8 @@ package net.pterodactylus.sone.template; +import net.pterodactylus.sone.core.Core; +import net.pterodactylus.sone.core.Core.SoneStatus; import net.pterodactylus.sone.data.Profile; import net.pterodactylus.sone.data.Sone; import net.pterodactylus.util.template.Accessor; @@ -42,6 +44,19 @@ import net.pterodactylus.util.template.ReflectionAccessor; */ public class SoneAccessor extends ReflectionAccessor { + /** The core. */ + private final Core core; + + /** + * Creates a new Sone accessor. + * + * @param core + * The Sone core + */ + public SoneAccessor(Core core) { + this.core = core; + } + /** * {@inheritDoc} */ @@ -59,6 +74,18 @@ public class SoneAccessor extends ReflectionAccessor { } else if (member.equals("blocked")) { Sone currentSone = (Sone) dataProvider.getData("currentSone"); return currentSone.isSoneBlocked(sone.getId()); + } else if (member.equals("modified")) { + return sone.getModificationCounter() > 0; + } else if (member.equals("status")) { + return core.getSoneStatus(sone).toString(); + } else if (member.equals("unknown")) { + return core.getSoneStatus(sone) == SoneStatus.unknown; + } else if (member.equals("idle")) { + return core.getSoneStatus(sone) == SoneStatus.idle; + } else if (member.equals("inserting")) { + return core.getSoneStatus(sone) == SoneStatus.inserting; + } else if (member.equals("downloading")) { + return core.getSoneStatus(sone) == SoneStatus.downloading; } return super.get(dataProvider, object, member); }