Skip to content

Commit 9fc2ef7

Browse files
vLuckyyynorbert-dejlichRollczi
authored
GH-953 Move to okaeri-configs. (#954)
* Fix * Fix unit test. * Not needed anymore. * Follow Mike's review. * Fix incorrect representer mapping for empty collections * Fix incorrect representer mapping for empty collections * Fix language config item. * old config * config changes * Fixes * Revert "old config" This reverts commit 59e1d95. * Fixes * Fixes * Fixes after merge. * Fixes after merge. --------- Co-authored-by: Norbert Dejlich <[email protected]> Co-authored-by: Rollczi <[email protected]>
1 parent f69398a commit 9fc2ef7

File tree

98 files changed

+1183
-1528
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

98 files changed

+1183
-1528
lines changed

buildSrc/src/main/kotlin/Versions.kt

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ object Versions {
1414
const val PAPERLIB = "1.0.8"
1515
const val ADVENTURE_TEXT_MINIMESSAGE = "4.23.0"
1616
const val ADVENTURE_PLATFORM = "4.4.0"
17-
const val CDN_CONFIGS = "1.14.9"
17+
const val OKAERI_CONFIGS = "5.0.5"
1818

1919
const val MARIA_DB = "3.5.4"
2020
const val POSTGRESQL = "42.7.7"
@@ -43,11 +43,7 @@ object Versions {
4343
const val SPOTIFY_COMPLETABLE_FUTURES = "0.3.6"
4444

4545
// tests
46-
const val EXPRESSIBLE_JUNIT = "1.3.6"
47-
const val GROOVY_ALL = "3.0.25"
48-
const val JUNIT_JUPITER_API = "5.13.4"
49-
const val JUNIT_JUPITER_PARAMS = "5.13.4"
50-
const val JUNIT_JUPITER_ENGINE = "5.13.4"
46+
const val JUNIT_BOM = "5.10.2"
5147
const val MOCKITO_CORE = "5.18.0"
5248

5349
}

buildSrc/src/main/kotlin/eternalcode-java-test.gradle.kts

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,17 @@ plugins {
33
}
44

55
dependencies {
6-
testImplementation("dev.rollczi:litecommands-core:${Versions.LITE_COMMANDS}")
7-
testImplementation("org.spigotmc:spigot-api:${Versions.SPIGOT_API}")
8-
testImplementation("net.dzikoysk:cdn:${Versions.CDN_CONFIGS}")
9-
testImplementation("org.panda-lang:expressible-junit:${Versions.EXPRESSIBLE_JUNIT}")
10-
testImplementation("org.codehaus.groovy:groovy-all:${Versions.GROOVY_ALL}")
6+
testImplementation(platform("org.junit:junit-bom:${Versions.JUNIT_BOM}"))
117

12-
testImplementation("org.junit.jupiter:junit-jupiter-api:${Versions.JUNIT_JUPITER_API}")
13-
testImplementation("org.junit.jupiter:junit-jupiter-params:${Versions.JUNIT_JUPITER_PARAMS}")
14-
testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:${Versions.JUNIT_JUPITER_ENGINE}")
8+
testImplementation("org.junit.jupiter:junit-jupiter-api")
9+
testImplementation("org.junit.jupiter:junit-jupiter-params")
10+
testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine")
1511

1612
testImplementation("org.mockito:mockito-core:${Versions.MOCKITO_CORE}")
17-
testImplementation("net.kyori:adventure-platform-bukkit:${Versions.ADVENTURE_PLATFORM}")
1813
testImplementation("net.kyori:adventure-platform-facet:${Versions.ADVENTURE_PLATFORM}")
19-
testImplementation("net.kyori:adventure-text-minimessage:${Versions.ADVENTURE_TEXT_MINIMESSAGE}")
14+
testImplementation("org.spigotmc:spigot-api:${Versions.SPIGOT_API}")
2015
}
2116

2217
tasks.getByName<Test>("test") {
2318
useJUnitPlatform()
24-
}
19+
}

buildSrc/src/main/kotlin/eternalcore-repositories.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,5 @@ repositories {
1010
maven { url = uri("https://repo.eternalcode.pl/releases/") }
1111
maven { url = uri("https://repo.extendedclip.com/content/repositories/placeholderapi/") }
1212
maven("https://repo.stellardrift.ca/repository/snapshots/")
13+
maven("https://storehouse.okaeri.eu/repository/maven-public/")
1314
}

buildSrc/src/main/kotlin/eternalcore-shadow.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ afterEvaluate {
1010
dependencies {
1111
extension.compileOnlyDependencies.forEach {
1212
compileOnlyApi(it)
13+
testImplementation(it)
1314
}
1415
}
1516
}

eternalcore-core/build.gradle.kts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,15 @@ eternalShadow {
3737
)
3838

3939
// configuration
40-
library("net.dzikoysk:cdn:${Versions.CDN_CONFIGS}")
40+
library("eu.okaeri:okaeri-configs-yaml-snakeyaml:${Versions.OKAERI_CONFIGS}")
41+
library("eu.okaeri:okaeri-configs-serdes-commons:${Versions.OKAERI_CONFIGS}")
4142
libraryRelocate(
42-
"net.dzikoysk.cdn"
43+
"eu.okaeri",
4344
)
4445

4546
// Multification
4647
library("com.eternalcode:multification-bukkit:${Versions.MULTIFICATION}")
47-
library("com.eternalcode:multification-cdn:${Versions.MULTIFICATION}")
48+
library("com.eternalcode:multification-okaeri:${Versions.MULTIFICATION}")
4849
libraryRelocate(
4950
"com.eternalcode.multification",
5051
)

eternalcore-core/src/main/java/com/eternalcode/core/EternalCore.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.eternalcode.core;
22

33
import com.eternalcode.core.compatibility.CompatibilityService;
4-
import com.eternalcode.core.configuration.ReloadableConfig;
4+
import com.eternalcode.core.configuration.EternalConfigurationFile;
55
import com.eternalcode.core.configuration.compatibility.ConfigurationCompatibilityV21_2;
66
import com.eternalcode.core.injector.DependencyInjector;
77
import com.eternalcode.core.injector.annotations.component.Component;
@@ -79,8 +79,9 @@ public EternalCore(Plugin plugin) {
7979
beanFactory.addCandidate(beanCandidate);
8080
}
8181

82-
beanFactory.initializeCandidates(ConfigurationCompatibilityV21_2.class); // TODO: Remove this when the cdn will be fixed
83-
beanFactory.initializeCandidates(ReloadableConfig.class); // TODO: Remove this when the cdn will be fixed
82+
// TODO: Remove this when we resolve problem with DI - classes with @Subscribe annotation should be loaded first or when event is called
83+
beanFactory.initializeCandidates(ConfigurationCompatibilityV21_2.class);
84+
beanFactory.initializeCandidates(EternalConfigurationFile.class);
8485
beanFactory.initializeCandidates();
8586

8687
this.publisher = beanFactory.getDependency(Publisher.class);

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/argument/messages/ENArgumentMessages.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,23 @@
11
package com.eternalcode.core.bridge.litecommand.argument.messages;
22

33
import com.eternalcode.multification.notice.Notice;
4+
import eu.okaeri.configs.OkaeriConfig;
5+
import eu.okaeri.configs.annotation.Comment;
46
import lombok.Getter;
57
import lombok.experimental.Accessors;
6-
import net.dzikoysk.cdn.entity.Contextual;
7-
import net.dzikoysk.cdn.entity.Description;
88

99
@Getter
1010
@Accessors(fluent = true)
11-
@Contextual
12-
public class ENArgumentMessages implements ArgumentMessages {
13-
@Description("# {PERMISSIONS} - Required permission")
11+
public class ENArgumentMessages extends OkaeriConfig implements ArgumentMessages {
12+
@Comment("# {PERMISSIONS} - Required permission")
1413
public Notice permissionMessage = Notice.chat("<red>✘ <dark_red>You don't have permission to perform this command! <red>({PERMISSIONS})");
1514

16-
@Description({" ", "# {USAGE} - Correct usage"})
15+
@Comment({" ", "# {USAGE} - Correct usage"})
1716
public Notice usageMessage = Notice.chat("<gold>✘ <white>Correct usage: <gold>{USAGE}");
1817
public Notice usageMessageHead = Notice.chat("<green>► <white>Correct usage:");
1918
public Notice usageMessageEntry = Notice.chat("<green>► <white>{USAGE}");
2019

21-
@Description(" ")
20+
@Comment(" ")
2221
public Notice missingPlayerName = Notice.chat("<red>✘ <dark_red>You must provide a player name!");
2322
public Notice offlinePlayer = Notice.chat("<red>✘ <dark_red>This player is currently offline!");
2423
public Notice onlyPlayer = Notice.chat("<red>✘ <dark_red>Command is only for players!");

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/argument/messages/PLArgumentMessages.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,24 @@
11
package com.eternalcode.core.bridge.litecommand.argument.messages;
22

33
import com.eternalcode.multification.notice.Notice;
4+
import eu.okaeri.configs.OkaeriConfig;
5+
import eu.okaeri.configs.annotation.Comment;
46
import lombok.Getter;
57
import lombok.experimental.Accessors;
6-
import net.dzikoysk.cdn.entity.Contextual;
7-
import net.dzikoysk.cdn.entity.Description;
88

99
@Getter
1010
@Accessors(fluent = true)
11-
@Contextual
12-
public class PLArgumentMessages implements ArgumentMessages {
13-
@Description("# {PERMISSIONS} - Wyświetla wymagane uprawnienia")
11+
public class PLArgumentMessages extends OkaeriConfig implements ArgumentMessages {
12+
@Comment("# {PERMISSIONS} - Wyświetla wymagane uprawnienia")
1413
public Notice permissionMessage =
1514
Notice.chat("<red>✘ <dark_red>Nie masz uprawnień do tej komendy! <red>({PERMISSIONS})");
1615

17-
@Description({" ", "# {USAGE} - Wyświetla poprawne użycie komendy"})
16+
@Comment({" ", "# {USAGE} - Wyświetla poprawne użycie komendy"})
1817
public Notice usageMessage = Notice.chat("<gold>✘ <white>Poprawne użycie: <gold>{USAGE}");
1918
public Notice usageMessageHead = Notice.chat("<gold>✘ <white>Poprawne użycie:");
2019
public Notice usageMessageEntry = Notice.chat("<gold>✘ <white>{USAGE}");
2120

22-
@Description(" ")
21+
@Comment(" ")
2322
public Notice missingPlayerName = Notice.chat("<red>✘ <dark_red>Musisz podać nazwę gracza!");
2423
public Notice offlinePlayer = Notice.chat("<red>✘ <dark_red>Ten gracz jest obecnie offline!");
2524
public Notice onlyPlayer = Notice.chat("<red>✘ <dark_red>Ta komenda jest dostępna tylko dla graczy!");

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/configurator/config/Command.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
package com.eternalcode.core.bridge.litecommand.configurator.config;
22

3-
import net.dzikoysk.cdn.entity.Contextual;
3+
import java.io.Serializable;
44

55
import java.util.ArrayList;
66
import java.util.HashMap;
77
import java.util.List;
88
import java.util.Map;
99

10-
@Contextual
11-
public class Command {
10+
public class Command implements Serializable {
1211

1312
public String name;
1413
public boolean enabled;

eternalcore-core/src/main/java/com/eternalcode/core/bridge/litecommand/configurator/config/CommandConfiguration.java

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
11
package com.eternalcode.core.bridge.litecommand.configurator.config;
22

3-
import com.eternalcode.core.configuration.ReloadableConfig;
3+
import com.eternalcode.core.configuration.AbstractConfigurationFile;
44
import com.eternalcode.core.feature.gamemode.GameModeArgumentSettings;
55
import com.eternalcode.core.injector.annotations.Bean;
66
import com.eternalcode.core.injector.annotations.component.ConfigurationFile;
7-
import net.dzikoysk.cdn.entity.Contextual;
8-
import net.dzikoysk.cdn.entity.Description;
9-
import net.dzikoysk.cdn.source.Resource;
10-
import net.dzikoysk.cdn.source.Source;
7+
import eu.okaeri.configs.OkaeriConfig;
8+
import eu.okaeri.configs.annotation.Comment;
119
import org.bukkit.GameMode;
1210

1311
import java.io.File;
@@ -18,15 +16,19 @@
1816
import java.util.Optional;
1917

2018
@ConfigurationFile
21-
public class CommandConfiguration implements ReloadableConfig {
19+
public class CommandConfiguration extends AbstractConfigurationFile {
2220

2321
@Bean
2422
public Argument argument = new Argument();
2523

26-
@Contextual
27-
public static class Argument implements GameModeArgumentSettings {
24+
@Override
25+
public File getConfigFile(File dataFolder) {
26+
return new File(dataFolder, "commands.yml");
27+
}
28+
29+
public static class Argument extends OkaeriConfig implements GameModeArgumentSettings {
2830

29-
@Description("# List of aliases for gamemode argument")
31+
@Comment("# List of aliases for gamemode argument")
3032
public Map<GameMode, List<String>> gameModeAliases = Map.of(
3133
GameMode.SURVIVAL, List.of("survival", "0"),
3234
GameMode.CREATIVE, List.of("creative", "1"),
@@ -53,7 +55,7 @@ public Collection<String> getAvailableAliases() {
5355

5456
}
5557

56-
@Description("# List of shortcuts for gamemode command")
58+
@Comment("# List of shortcuts for gamemode command")
5759
public Map<GameMode, List<String>> gameModeShortCuts = Map.of(
5860
GameMode.SURVIVAL, Collections.singletonList("gms"),
5961
GameMode.CREATIVE, Collections.singletonList("gmc"),
@@ -77,7 +79,7 @@ public GameMode getGameMode(String label) {
7779
.orElse(null);
7880
}
7981

80-
@Description({
82+
@Comment({
8183
"# This file allows you to configure commands.",
8284
"# You can change command name, aliases and permissions.",
8385
"# You can edit the commands as follows this template:",
@@ -107,9 +109,4 @@ public GameMode getGameMode(String label) {
107109
true)
108110
);
109111

110-
@Override
111-
public Resource resource(File folder) {
112-
return Source.of(folder, "commands.yml");
113-
}
114-
115112
}

0 commit comments

Comments
 (0)