X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Frhynodge%2Floader%2FReactionLoader.java;h=10608d942c204afc12d92e64074974c818d08bcd;hb=586ba9394f2ca5206c03181fa0b16f974352d96e;hp=100e42f763e5958fab3f82483ce301dd25974d34;hpb=1fb66d5eb584966802911657ec88f17bca196699;p=rhynodge.git diff --git a/src/main/java/net/pterodactylus/rhynodge/loader/ReactionLoader.java b/src/main/java/net/pterodactylus/rhynodge/loader/ReactionLoader.java index 100e42f..10608d9 100644 --- a/src/main/java/net/pterodactylus/rhynodge/loader/ReactionLoader.java +++ b/src/main/java/net/pterodactylus/rhynodge/loader/ReactionLoader.java @@ -56,28 +56,40 @@ public class ReactionLoader { throw new IllegalArgumentException("Chain is not enabled."); } + Reaction reaction; + /* create action. */ Action action = createObject(chain.action().name(), "net.pterodactylus.rhynodge.actions", extractParameters(chain.action().parameters())); /* do we have a reaction defined? */ if (chain.watcher() != null) { + + /* create watcher. */ Watcher watcher = createObject(chain.watcher().name(), "net.pterodactylus.rhynodge.watchers", extractParameters(chain.watcher().parameters())); - return new Reaction(chain.name(), watcher.query(), watcher.filters(), watcher.trigger(), action); - } - /* create query. */ - Query query = createObject(chain.query().name(), "net.pterodactylus.rhynodge.queries", extractParameters(chain.query().parameters())); + /* create reaction. */ + reaction = new Reaction(chain.name(), watcher.query(), watcher.filters(), watcher.trigger(), action); - /* create filters. */ - List filters = new ArrayList(); - for (Part filterPart : chain.filters()) { - filters.add(ReactionLoader. createObject(filterPart.name(), "net.pterodactylus.rhynodge.filters", extractParameters(filterPart.parameters()))); - } + } else { + + /* create query. */ + Query query = createObject(chain.query().name(), "net.pterodactylus.rhynodge.queries", extractParameters(chain.query().parameters())); - /* create trigger. */ - Trigger trigger = createObject(chain.trigger().name(), "net.pterodactylus.rhynodge.triggers", extractParameters(chain.trigger().parameters())); + /* create filters. */ + List filters = new ArrayList(); + for (Part filterPart : chain.filters()) { + filters.add(ReactionLoader. createObject(filterPart.name(), "net.pterodactylus.rhynodge.filters", extractParameters(filterPart.parameters()))); + } + + /* create trigger. */ + Trigger trigger = createObject(chain.trigger().name(), "net.pterodactylus.rhynodge.triggers", extractParameters(chain.trigger().parameters())); + + /* create reaction. */ + reaction = new Reaction(chain.name(), query, filters, trigger, action); + } - return new Reaction(chain.name(), query, filters, trigger, action).setUpdateInterval(TimeUnit.SECONDS.toMillis(chain.updateInterval())); + reaction.setUpdateInterval(TimeUnit.SECONDS.toMillis(chain.updateInterval())); + return reaction; } //