X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Freactor%2Fengine%2FEngine.java;h=fe57b33f9687b352813d3c86e4b344aa11177b5b;hb=90db6d61a40601f0f33435559d569105d9d5ff68;hp=e82267cefaf6c39543a1fd748b6f94f413c39975;hpb=e700c7d888d36c44d648cff6344c876f71c0bba8;p=rhynodge.git diff --git a/src/main/java/net/pterodactylus/reactor/engine/Engine.java b/src/main/java/net/pterodactylus/reactor/engine/Engine.java index e82267c..fe57b33 100644 --- a/src/main/java/net/pterodactylus/reactor/engine/Engine.java +++ b/src/main/java/net/pterodactylus/reactor/engine/Engine.java @@ -125,7 +125,7 @@ public class Engine extends AbstractExecutionThreadService { reactionName = nextReactions.get(nextReactions.firstKey()).getLeft(); nextReaction = nextReactions.get(nextReactions.firstKey()).getRight(); } - logger.debug(String.format("Next Reaction: %s.", nextReaction)); + logger.debug(String.format("Next Reaction: %s.", reactionName)); /* wait until the next reaction has to run. */ net.pterodactylus.reactor.State lastState = stateManager.loadLastState(reactionName); @@ -136,7 +136,7 @@ public class Engine extends AbstractExecutionThreadService { if (waitTime > 0) { synchronized (reactions) { try { - logger.debug(String.format("Waiting for %d milliseconds.", waitTime)); + logger.info(String.format("Waiting until %tc.", lastStateTime + nextReaction.updateInterval())); reactions.wait(waitTime); } catch (InterruptedException ie1) { /* we’re looping! */ @@ -177,14 +177,15 @@ public class Engine extends AbstractExecutionThreadService { if (!state.success()) { state.setFailCount(lastStateFailCount + 1); } + net.pterodactylus.reactor.State lastSuccessfulState = stateManager.loadLastSuccessfulState(reactionName); stateManager.saveState(reactionName, state); /* only run trigger if we have collected two successful states. */ Trigger trigger = nextReaction.trigger(); boolean triggerHit = false; - if ((lastState != null) && lastState.success() && state.success()) { + if ((lastSuccessfulState != null) && lastSuccessfulState.success() && state.success()) { logger.debug("Checking Trigger for changes..."); - triggerHit = trigger.triggers(state, lastState); + triggerHit = trigger.triggers(state, lastSuccessfulState); } /* run action if trigger was hit. */