🐛 Fix broken change detection
[rhynodge.git] / src / main / java / net / pterodactylus / rhynodge / package-info.java
1 /**
2  * Rhynodge main definitions.
3  * <p>
4  * A {@link net.pterodactylus.rhynodge.Reaction} consists of three different
5  * elements: a {@link net.pterodactylus.rhynodge.Query}, a
6  * {@link net.pterodactylus.rhynodge.Merger}, and an
7  * {@link net.pterodactylus.rhynodge.Action}.
8  * <p>
9  * A {@code Query} retrieves the current state of a system; this can simply be
10  * the current state of a local file, or it can be the last tweet of a certain
11  * Twitter account, or it can be anything inbetween, or something completely
12  * different.
13  * <p>
14  * After a {@code Query} retrieved the current
15  * {@link net.pterodactylus.rhynodge.State} of a system, this state and the
16  * previously retrieved state are handed in to a {@code Merger}. The merger
17  * takes care of merging the two states in a way that the new state can
18  * {@link net.pterodactylus.rhynodge.State#triggered() decide} whether a
19  * noteworthy change has occured.
20  * <p>
21  * If a system has been found to trigger, an {@code Action} is executed. It
22  * performs arbitrary actions and can use both the current state and the
23  * previous state to define that action.
24  */
25
26 package net.pterodactylus.rhynodge;
27