From 57219d369c8b0ced045dd5d493b35fffa32b317d Mon Sep 17 00:00:00 2001 From: Quinteger Date: Mon, 29 Aug 2022 16:21:17 +0300 Subject: [PATCH] Moved the annotation to a different facet to avoid circular dependencies and generally improve code structure --- application/build.gradle | 1 + .../togetherjava/tjbot/commands/basic/package-info.java | 2 +- .../tjbot/commands/componentids/package-info.java | 2 +- .../tjbot/commands/filesharing/package-info.java | 2 +- .../org/togetherjava/tjbot/commands/help/package-info.java | 2 +- .../mathcommands/wolframalpha/api/package-info.java | 2 +- .../commands/mathcommands/wolframalpha/package-info.java | 2 +- .../tjbot/commands/moderation/package-info.java | 2 +- .../tjbot/commands/moderation/scam/package-info.java | 2 +- .../tjbot/commands/moderation/temp/package-info.java | 2 +- .../java/org/togetherjava/tjbot/commands/package-info.java | 2 +- .../togetherjava/tjbot/commands/reminder/package-info.java | 2 +- .../togetherjava/tjbot/commands/system/package-info.java | 2 +- .../org/togetherjava/tjbot/commands/tags/package-info.java | 2 +- .../tjbot/commands/tophelper/package-info.java | 2 +- .../togetherjava/tjbot/commands/utils/package-info.java | 2 +- .../java/org/togetherjava/tjbot/config/package-info.java | 2 +- .../java/org/togetherjava/tjbot/logging/package-info.java | 2 +- .../src/main/java/org/togetherjava/tjbot/package-info.java | 2 +- .../java/org/togetherjava/tjbot/routines/package-info.java | 2 +- .../test/java/org/togetherjava/tjbot/jda/package-info.java | 2 +- database/build.gradle | 2 ++ settings.gradle | 1 + utils/build.gradle | 7 +++++++ .../tjbot/annotations}/MethodsReturnNonnullByDefault.java | 2 +- .../org/togetherjava/tjbot/annotations}/package-info.java | 4 ++-- 26 files changed, 34 insertions(+), 23 deletions(-) create mode 100644 utils/build.gradle rename {application/src/main/java/org/togetherjava/tjbot/misc => utils/src/main/java/org/togetherjava/tjbot/annotations}/MethodsReturnNonnullByDefault.java (95%) rename {application/src/main/java/org/togetherjava/tjbot/misc => utils/src/main/java/org/togetherjava/tjbot/annotations}/package-info.java (52%) diff --git a/application/build.gradle b/application/build.gradle index f90e841ffa..5ad7c18fbc 100644 --- a/application/build.gradle +++ b/application/build.gradle @@ -43,6 +43,7 @@ dependencies { implementation 'org.jetbrains:annotations:23.0.0' implementation project(':database') + implementation project(':utils') implementation 'net.dv8tion:JDA:5.0.0-alpha.9' diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/basic/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/basic/package-info.java index 44b14a6007..0c110ffc26 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/basic/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/basic/package-info.java @@ -6,6 +6,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.basic; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/componentids/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/componentids/package-info.java index 584c1c5397..f982878027 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/componentids/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/componentids/package-info.java @@ -14,6 +14,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.componentids; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/filesharing/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/filesharing/package-info.java index 41918da64a..f1ef60813e 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/filesharing/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/filesharing/package-info.java @@ -6,6 +6,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.filesharing; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/help/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/help/package-info.java index d3ae75441d..c957b34899 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/help/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/help/package-info.java @@ -6,6 +6,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.help; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/mathcommands/wolframalpha/api/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/mathcommands/wolframalpha/api/package-info.java index be39af6f75..39db8406b2 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/mathcommands/wolframalpha/api/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/mathcommands/wolframalpha/api/package-info.java @@ -7,6 +7,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.mathcommands.wolframalpha.api; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/mathcommands/wolframalpha/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/mathcommands/wolframalpha/package-info.java index bbff9946d3..ec0a220c02 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/mathcommands/wolframalpha/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/mathcommands/wolframalpha/package-info.java @@ -6,6 +6,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.mathcommands.wolframalpha; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/moderation/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/moderation/package-info.java index d50a6aad36..56ce69483b 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/moderation/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/moderation/package-info.java @@ -6,6 +6,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.moderation; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/moderation/scam/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/moderation/scam/package-info.java index cf6cdeb70b..77bb00fedd 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/moderation/scam/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/moderation/scam/package-info.java @@ -6,6 +6,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.moderation.scam; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/moderation/temp/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/moderation/temp/package-info.java index 5dfbc0e6ed..bb89723144 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/moderation/temp/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/moderation/temp/package-info.java @@ -5,6 +5,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.moderation.temp; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/package-info.java index 4bd0c197bb..0029166d7e 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/package-info.java @@ -13,6 +13,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/reminder/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/reminder/package-info.java index 834d25e343..5aafa9946f 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/reminder/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/reminder/package-info.java @@ -6,6 +6,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.reminder; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/system/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/system/package-info.java index 0af39af4da..92087eae83 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/system/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/system/package-info.java @@ -6,6 +6,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.system; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/tags/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/tags/package-info.java index 1cc9d07941..674fd1fce4 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/tags/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/tags/package-info.java @@ -8,6 +8,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.tags; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/tophelper/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/tophelper/package-info.java index a35817b060..042aef8901 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/tophelper/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/tophelper/package-info.java @@ -6,6 +6,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.tophelper; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/commands/utils/package-info.java b/application/src/main/java/org/togetherjava/tjbot/commands/utils/package-info.java index b2714eb3d5..be1f45fd42 100644 --- a/application/src/main/java/org/togetherjava/tjbot/commands/utils/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/commands/utils/package-info.java @@ -5,6 +5,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.commands.utils; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/config/package-info.java b/application/src/main/java/org/togetherjava/tjbot/config/package-info.java index d1c48f0360..80a4821450 100644 --- a/application/src/main/java/org/togetherjava/tjbot/config/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/config/package-info.java @@ -6,6 +6,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.config; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/logging/package-info.java b/application/src/main/java/org/togetherjava/tjbot/logging/package-info.java index 36d38d5d25..59352946d3 100644 --- a/application/src/main/java/org/togetherjava/tjbot/logging/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/logging/package-info.java @@ -5,6 +5,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.logging; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/package-info.java b/application/src/main/java/org/togetherjava/tjbot/package-info.java index 8d652de549..4989de1a8c 100644 --- a/application/src/main/java/org/togetherjava/tjbot/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/package-info.java @@ -5,6 +5,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/routines/package-info.java b/application/src/main/java/org/togetherjava/tjbot/routines/package-info.java index 5a1e75fe56..f3f1ca00cd 100644 --- a/application/src/main/java/org/togetherjava/tjbot/routines/package-info.java +++ b/application/src/main/java/org/togetherjava/tjbot/routines/package-info.java @@ -9,6 +9,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.routines; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/application/src/test/java/org/togetherjava/tjbot/jda/package-info.java b/application/src/test/java/org/togetherjava/tjbot/jda/package-info.java index b18d2fd175..f131c6ad88 100644 --- a/application/src/test/java/org/togetherjava/tjbot/jda/package-info.java +++ b/application/src/test/java/org/togetherjava/tjbot/jda/package-info.java @@ -6,6 +6,6 @@ @ParametersAreNonnullByDefault package org.togetherjava.tjbot.jda; -import org.togetherjava.tjbot.misc.MethodsReturnNonnullByDefault; +import org.togetherjava.tjbot.annotations.MethodsReturnNonnullByDefault; import javax.annotation.ParametersAreNonnullByDefault; diff --git a/database/build.gradle b/database/build.gradle index 0979d396f8..281a44c7d4 100644 --- a/database/build.gradle +++ b/database/build.gradle @@ -9,5 +9,7 @@ dependencies { implementation "org.xerial:sqlite-jdbc:${sqliteVersion}" implementation 'org.flywaydb:flyway-core:9.2.0' implementation 'org.jooq:jooq:3.17.2' + + implementation project(':utils') } diff --git a/settings.gradle b/settings.gradle index ebc2eba2d0..18a6930e6b 100644 --- a/settings.gradle +++ b/settings.gradle @@ -3,6 +3,7 @@ rootProject.name = 'TJ-Bot' include 'application' include 'database' include 'formatter' +include 'utils' // NOTE The logviewer does not properly work as of today. // But it is causing major build slowdowns, so we exclude it for the time being. // include 'logviewer' diff --git a/utils/build.gradle b/utils/build.gradle new file mode 100644 index 0000000000..ae1923fecf --- /dev/null +++ b/utils/build.gradle @@ -0,0 +1,7 @@ +plugins { + id 'java' +} +dependencies { + implementation 'com.google.code.findbugs:jsr305:3.0.2' +} + diff --git a/application/src/main/java/org/togetherjava/tjbot/misc/MethodsReturnNonnullByDefault.java b/utils/src/main/java/org/togetherjava/tjbot/annotations/MethodsReturnNonnullByDefault.java similarity index 95% rename from application/src/main/java/org/togetherjava/tjbot/misc/MethodsReturnNonnullByDefault.java rename to utils/src/main/java/org/togetherjava/tjbot/annotations/MethodsReturnNonnullByDefault.java index 72c48cb979..c4bfeccce9 100644 --- a/application/src/main/java/org/togetherjava/tjbot/misc/MethodsReturnNonnullByDefault.java +++ b/utils/src/main/java/org/togetherjava/tjbot/annotations/MethodsReturnNonnullByDefault.java @@ -1,4 +1,4 @@ -package org.togetherjava.tjbot.misc; +package org.togetherjava.tjbot.annotations; import javax.annotation.Nonnull; import javax.annotation.meta.TypeQualifierDefault; diff --git a/application/src/main/java/org/togetherjava/tjbot/misc/package-info.java b/utils/src/main/java/org/togetherjava/tjbot/annotations/package-info.java similarity index 52% rename from application/src/main/java/org/togetherjava/tjbot/misc/package-info.java rename to utils/src/main/java/org/togetherjava/tjbot/annotations/package-info.java index c6c24f7662..aba50e856a 100644 --- a/application/src/main/java/org/togetherjava/tjbot/misc/package-info.java +++ b/utils/src/main/java/org/togetherjava/tjbot/annotations/package-info.java @@ -1,8 +1,8 @@ /** - * Package for all miscellaneous topics, such as general purpose utilities. + * Package for custom annotations. */ @MethodsReturnNonnullByDefault @ParametersAreNonnullByDefault -package org.togetherjava.tjbot.misc; +package org.togetherjava.tjbot.annotations; import javax.annotation.ParametersAreNonnullByDefault;