package net.pterodactylus.rhynodge.triggers;
-import net.pterodactylus.rhynodge.Reaction;
import net.pterodactylus.rhynodge.State;
import net.pterodactylus.rhynodge.Trigger;
-import net.pterodactylus.rhynodge.output.DefaultOutput;
-import net.pterodactylus.rhynodge.output.Output;
/**
* {@link Trigger} implementation that always triggers.
*/
public class AlwaysTrigger implements Trigger {
+ private State currentState;
+
/**
* {@inheritDoc}
+ * <p>
+ * This implementation returns the current state.
*/
@Override
- public boolean triggers(State currentState, State previousState) {
- return true;
+ public State mergeStates(State previousState, State currentState) {
+ this.currentState = currentState;
+ return currentState;
}
/**
* {@inheritDoc}
+ * <p>
+ * This implementation always returns {@code true}.
*/
@Override
- public Output output(Reaction reaction) {
- return new DefaultOutput("true").addText("text/plain", "true").addText("text/html", "<div>true</div>");
+ public boolean triggers() {
+ return true;
}
}