X-Git-Url: https://git.pterodactylus.net/?p=rhynodge.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Frhynodge%2Ftriggers%2FFileExistenceTrigger.java;h=264740f103b1e8e64f6f6e02b3d01ce12c65495f;hp=49d91b24b186063c01e6e8345638ccf3c93b3020;hb=9c01d55d3969a1b3df6529df0c64d4feb146fe4d;hpb=9871b8a902d59f6e8eade050d18c77026b6ecc60 diff --git a/src/main/java/net/pterodactylus/rhynodge/triggers/FileExistenceTrigger.java b/src/main/java/net/pterodactylus/rhynodge/triggers/FileExistenceTrigger.java index 49d91b2..264740f 100644 --- a/src/main/java/net/pterodactylus/rhynodge/triggers/FileExistenceTrigger.java +++ b/src/main/java/net/pterodactylus/rhynodge/triggers/FileExistenceTrigger.java @@ -33,6 +33,9 @@ import com.google.common.base.Preconditions; */ public class FileExistenceTrigger implements Trigger { + /** Whether a change is triggered. */ + private boolean triggered; + // // TRIGGER METHODS // @@ -41,10 +44,19 @@ public class FileExistenceTrigger implements Trigger { * {@inheritDoc} */ @Override - public boolean triggers(State previousState, State currentState) { + public State mergeStates(State previousState, State currentState) { Preconditions.checkState(previousState instanceof FileState, "previousState is not a FileState"); Preconditions.checkState(currentState instanceof FileState, "currentState is not a FileState"); - return ((FileState) previousState).exists() != ((FileState) currentState).exists(); + triggered = ((FileState) previousState).exists() != ((FileState) currentState).exists(); + return currentState; + } + + /** + * {@inheritDoc} + */ + @Override + public boolean triggers() { + return triggered; } /**