Skip to content

Commit 67f64db

Browse files
committed
Adaptation to the latest version of FacilisCommon
1 parent 8e6fc18 commit 67f64db

36 files changed

+345
-390
lines changed

multiworld-api/multiworld-api-bukkit/src/main/java/com/dev7ex/multiworld/api/bukkit/MultiWorldBukkitApiConfiguration.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.dev7ex.multiworld.api.bukkit;
22

33
import com.dev7ex.common.bukkit.plugin.configuration.DefaultPluginConfiguration;
4+
import com.dev7ex.common.io.file.configuration.ConfigurationHolder;
45
import com.dev7ex.multiworld.api.MultiWorldApiConfiguration;
56
import lombok.AccessLevel;
67
import lombok.Getter;
@@ -16,8 +17,8 @@
1617
*/
1718
public abstract class MultiWorldBukkitApiConfiguration extends DefaultPluginConfiguration implements MultiWorldApiConfiguration {
1819

19-
public MultiWorldBukkitApiConfiguration(@NotNull final Plugin plugin) {
20-
super(plugin);
20+
public MultiWorldBukkitApiConfiguration(@NotNull final ConfigurationHolder configurationHolder) {
21+
super(configurationHolder);
2122
}
2223

2324
@Getter(AccessLevel.PUBLIC)

multiworld-api/multiworld-api-core/src/main/java/com/dev7ex/multiworld/api/MultiWorldApiConfiguration.java

+1-4
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,8 @@
11
package com.dev7ex.multiworld.api;
22

3-
import com.dev7ex.common.map.ParsedMap;
3+
import com.dev7ex.common.collect.map.ParsedMap;
44
import com.dev7ex.multiworld.api.world.WorldDefaultProperty;
5-
import lombok.AccessLevel;
6-
import lombok.Getter;
75
import org.jetbrains.annotations.NotNull;
8-
import org.jetbrains.annotations.Nullable;
96

107
import java.util.List;
118

multiworld-api/multiworld-api-core/src/main/java/com/dev7ex/multiworld/api/user/WorldUserConfiguration.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.dev7ex.multiworld.api.user;
22

3-
import com.dev7ex.common.map.ParsedMap;
3+
import com.dev7ex.common.collect.map.ParsedMap;
44
import org.jetbrains.annotations.NotNull;
55

66
/**

multiworld-api/multiworld-api-core/src/main/java/com/dev7ex/multiworld/api/world/WorldConfiguration.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.dev7ex.multiworld.api.world;
22

3-
import com.dev7ex.common.map.ParsedMap;
3+
import com.dev7ex.common.collect.map.ParsedMap;
44
import org.jetbrains.annotations.NotNull;
55

66
import java.util.Map;

multiworld-bukkit/src/main/java/com/dev7ex/multiworld/MultiWorldConfiguration.java

+10-10
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
package com.dev7ex.multiworld;
22

3-
import com.dev7ex.common.bukkit.configuration.ConfigurationProperties;
4-
import com.dev7ex.common.bukkit.plugin.configuration.DefaultPluginConfiguration;
5-
import com.dev7ex.common.map.ParsedMap;
3+
import com.dev7ex.common.collect.map.ParsedMap;
4+
import com.dev7ex.common.io.file.configuration.ConfigurationHolder;
5+
import com.dev7ex.common.io.file.configuration.ConfigurationProperties;
6+
import com.dev7ex.common.io.file.configuration.YamlConfiguration;
67
import com.dev7ex.multiworld.api.MultiWorldApiConfiguration;
78
import com.dev7ex.multiworld.api.bukkit.MultiWorldBukkitApiConfiguration;
89
import com.dev7ex.multiworld.api.world.WorldDefaultProperty;
@@ -11,21 +12,20 @@
1112
import org.bukkit.plugin.Plugin;
1213
import org.jetbrains.annotations.NotNull;
1314

14-
import java.util.Collections;
1515
import java.util.List;
1616

1717
/**
1818
* @author Dev7ex
1919
* @since 25.01.2023
2020
*/
2121
@Getter(AccessLevel.PUBLIC)
22-
@ConfigurationProperties(fileName = "config.yml")
22+
@ConfigurationProperties(fileName = "config.yml", provider = YamlConfiguration.class)
2323
public final class MultiWorldConfiguration extends MultiWorldBukkitApiConfiguration implements MultiWorldApiConfiguration {
2424

2525
private final ParsedMap<WorldDefaultProperty, Object> defaultProperties = new ParsedMap<>();
2626

27-
public MultiWorldConfiguration(@NotNull final Plugin plugin) {
28-
super(plugin);
27+
public MultiWorldConfiguration(@NotNull final ConfigurationHolder configurationHolder) {
28+
super(configurationHolder);
2929
}
3030

3131
@Override
@@ -35,18 +35,18 @@ public void load() {
3535
for (final MultiWorldBukkitApiConfiguration.Entry entry : MultiWorldBukkitApiConfiguration.Entry.values()) {
3636
if ((entry.isRemoved()) && (super.getFileConfiguration().contains(entry.getPath()))) {
3737
super.getFileConfiguration().set(entry.getPath(), null);
38-
super.getPlugin().getLogger().info("Remove unnecessary config entry: " + entry.getPath());
38+
MultiWorldPlugin.getInstance().getLogger().info("Remove unnecessary config entry: " + entry.getPath());
3939
}
4040

4141
if ((entry.isRemoved()) || (super.getFileConfiguration().contains(entry.getPath()))) {
4242
continue;
4343
}
44-
super.getPlugin().getLogger().info("Adding missing config entry: " + entry.getPath());
44+
MultiWorldPlugin.getInstance().getLogger().info("Adding missing config entry: " + entry.getPath());
4545
super.getFileConfiguration().set(entry.getPath(), entry.getDefaultValue());
4646
}
4747
super.saveFile();
4848

49-
super.getFileConfiguration().getConfigurationSection("settings.defaults").getKeys(false)
49+
super.getFileConfiguration().getSection("settings.defaults").getKeys()
5050
.stream()
5151
.forEach(entry -> this.defaultProperties.put(WorldDefaultProperty.valueOf(entry.replaceAll("-", "_").toUpperCase()), super.getFileConfiguration().get("settings.defaults." + entry)));
5252
super.saveFile();

multiworld-bukkit/src/main/java/com/dev7ex/multiworld/MultiWorldPlugin.java

+15-15
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,40 @@
11
package com.dev7ex.multiworld;
22

33
import com.dev7ex.common.bukkit.plugin.BukkitPlugin;
4-
import com.dev7ex.common.bukkit.plugin.PluginProperties;
5-
6-
import com.dev7ex.common.bukkit.plugin.metrics.Metrics;
4+
import com.dev7ex.common.bukkit.plugin.ConfigurablePlugin;
5+
import com.dev7ex.common.bukkit.plugin.PluginIdentification;
6+
import com.dev7ex.common.bukkit.plugin.statistic.PluginStatisticProperties;
77
import com.dev7ex.multiworld.api.MultiWorldApiProvider;
88
import com.dev7ex.multiworld.api.bukkit.MultiWorldBukkitApi;
99
import com.dev7ex.multiworld.api.bukkit.expansion.MultiWorldExpansion;
1010
import com.dev7ex.multiworld.api.bukkit.world.location.BukkitWorldLocation;
1111
import com.dev7ex.multiworld.command.WorldCommand;
12-
import com.dev7ex.multiworld.listener.*;
12+
import com.dev7ex.multiworld.listener.PlayerConnectionListener;
13+
import com.dev7ex.multiworld.listener.PlayerDamagePlayerListener;
14+
import com.dev7ex.multiworld.listener.PlayerEnterPortalListener;
15+
import com.dev7ex.multiworld.listener.UserTeleportWorldListener;
1316
import com.dev7ex.multiworld.user.UserService;
1417
import com.dev7ex.multiworld.util.UpdateChecker;
1518
import com.dev7ex.multiworld.world.DefaultWorldConfiguration;
1619
import com.dev7ex.multiworld.world.DefaultWorldGeneratorProvider;
1720
import com.dev7ex.multiworld.world.DefaultWorldManager;
1821
import com.dev7ex.multiworld.world.DefaultWorldProvider;
19-
2022
import lombok.AccessLevel;
2123
import lombok.Getter;
22-
2324
import org.bukkit.configuration.serialization.ConfigurationSerialization;
2425
import org.bukkit.plugin.ServicePriority;
2526
import org.bukkit.plugin.java.JavaPlugin;
2627

2728
import java.io.File;
28-
import java.util.HashMap;
29-
import java.util.Map;
30-
import java.util.concurrent.Callable;
3129

3230
/**
3331
* @author Dev7ex
3432
* @since 19.05.2021
3533
*/
3634
@Getter(AccessLevel.PUBLIC)
37-
@PluginProperties(resourceId = 92559, metricsId = 15446, metrics = true)
38-
public final class MultiWorldPlugin extends BukkitPlugin implements MultiWorldBukkitApi {
35+
@PluginIdentification(spigotResourceId = 92559)
36+
@PluginStatisticProperties(enabled = true, identification = 15446)
37+
public final class MultiWorldPlugin extends BukkitPlugin implements MultiWorldBukkitApi, ConfigurablePlugin {
3938

4039
private MultiWorldConfiguration configuration;
4140
private DefaultWorldConfiguration worldConfiguration;
@@ -59,6 +58,7 @@ public void onLoad() {
5958

6059
this.worldConfiguration = new DefaultWorldConfiguration(this);
6160
this.worldConfiguration.createFile();
61+
this.worldConfiguration.loadFile();
6262
}
6363

6464
@Override
@@ -96,10 +96,10 @@ public void registerListeners() {
9696
}
9797

9898
@Override
99-
public void registerServices() {
100-
super.registerService(this.worldProvider = new DefaultWorldProvider(this.worldManager, this.worldConfiguration));
101-
super.registerService(this.userProvider = new UserService());
102-
super.registerService(this.worldGeneratorProvider = new DefaultWorldGeneratorProvider());
99+
public void registerModules() {
100+
super.registerModule(this.worldProvider = new DefaultWorldProvider(this.worldManager, this.worldConfiguration));
101+
super.registerModule(this.userProvider = new UserService());
102+
super.registerModule(this.worldGeneratorProvider = new DefaultWorldGeneratorProvider());
103103
}
104104

105105
@Override

multiworld-bukkit/src/main/java/com/dev7ex/multiworld/command/WorldCommand.java

+21-19
Original file line numberDiff line numberDiff line change
@@ -6,24 +6,24 @@
66
*/
77

88
import com.dev7ex.common.bukkit.command.BukkitCommand;
9-
import com.dev7ex.common.bukkit.command.CommandProperties;
9+
import com.dev7ex.common.bukkit.command.BukkitCommandProperties;
10+
import com.dev7ex.common.bukkit.command.completer.BukkitTabCompleter;
1011
import com.dev7ex.multiworld.MultiWorldPlugin;
1112
import com.dev7ex.multiworld.command.world.*;
1213
import com.google.common.collect.Lists;
13-
import org.bukkit.command.Command;
1414
import org.bukkit.command.CommandSender;
15-
import org.bukkit.command.TabCompleter;
1615
import org.jetbrains.annotations.NotNull;
1716

17+
import java.util.Collections;
1818
import java.util.List;
19-
import java.util.Optional;
19+
import java.util.Objects;
2020

2121
/**
2222
* @author Dev7ex
2323
* @since 19.05.2021
2424
*/
25-
@CommandProperties(name = "world", permission = "multiworld.command.world")
26-
public final class WorldCommand extends BukkitCommand implements TabCompleter {
25+
@BukkitCommandProperties(name = "world", permission = "multiworld.command.world")
26+
public final class WorldCommand extends BukkitCommand implements BukkitTabCompleter {
2727

2828
public WorldCommand(final MultiWorldPlugin plugin) {
2929
super(plugin);
@@ -46,30 +46,32 @@ public WorldCommand(final MultiWorldPlugin plugin) {
4646
}
4747

4848
@Override
49-
public boolean execute(@NotNull final CommandSender commandSender, @NotNull final String[] arguments) {
49+
public void execute(@NotNull final CommandSender commandSender, @NotNull final String[] arguments) {
5050
if ((arguments.length == 0) || (arguments.length > 4)) {
51-
return super.getSubCommand("help").orElseThrow().execute(commandSender, arguments);
51+
Objects.requireNonNull(super.getSubCommand(HelpCommand.class)).execute(commandSender, arguments);
52+
return;
5253
}
53-
final Optional<BukkitCommand> commandOptional = super.getSubCommand(arguments[0].toLowerCase());
54-
55-
if (commandOptional.isEmpty()) {
56-
return super.getSubCommand("help").orElseThrow().execute(commandSender, arguments);
54+
if (super.getSubCommand(arguments[0].toLowerCase()).isEmpty()) {
55+
Objects.requireNonNull(super.getSubCommand(HelpCommand.class)).execute(commandSender, arguments);
56+
return;
5757
}
58-
return commandOptional.get().execute(commandOptional.get(), commandSender, arguments);
58+
super.getSubCommand(arguments[0].toLowerCase()).get().execute(commandSender, arguments);
5959
}
6060

6161
@Override
62-
public List<String> onTabComplete(@NotNull final CommandSender commandSender, @NotNull final Command command,
63-
@NotNull final String commandLabel, @NotNull final String[] arguments) {
62+
public List<String> onTabComplete(@NotNull final CommandSender commandSender, @NotNull final String[] arguments) {
6463
if (arguments.length == 1) {
6564
return Lists.newArrayList(super.getSubCommands().keySet());
6665
}
67-
final Optional<BukkitCommand> commandOptional = super.getSubCommand(arguments[0].toLowerCase());
66+
if (super.getSubCommand(arguments[0].toLowerCase()).isEmpty()) {
67+
return Collections.emptyList();
68+
}
69+
final BukkitCommand subCommand = super.getSubCommand(arguments[0].toLowerCase()).get();
6870

69-
if ((commandOptional.isEmpty()) || (!(commandOptional.get() instanceof TabCompleter))) {
70-
return null;
71+
if (!(subCommand instanceof BukkitTabCompleter)) {
72+
return Collections.emptyList();
7173
}
72-
return ((TabCompleter) commandOptional.get()).onTabComplete(commandSender, command, commandLabel, arguments);
74+
return ((BukkitTabCompleter) subCommand).onTabComplete(commandSender, arguments);
7375
}
7476

7577
}
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.dev7ex.multiworld.command.world;
22

33
import com.dev7ex.common.bukkit.command.BukkitCommand;
4-
import com.dev7ex.common.bukkit.command.CommandProperties;
4+
import com.dev7ex.common.bukkit.command.BukkitCommandProperties;
55
import com.dev7ex.common.bukkit.plugin.BukkitPlugin;
66
import com.dev7ex.multiworld.MultiWorldPlugin;
77
import com.dev7ex.multiworld.api.bukkit.event.user.WorldUserTeleportWorldEvent;
@@ -17,68 +17,68 @@
1717
* @author Dev7ex
1818
* @since 20.05.2021
1919
*/
20-
@CommandProperties(name = "back", permission = "multiworld.command.world.back")
20+
@BukkitCommandProperties(name = "back", permission = "multiworld.command.world.back")
2121
public class BackCommand extends BukkitCommand {
2222

2323
public BackCommand(@NotNull final BukkitPlugin plugin) {
2424
super(plugin);
2525
}
2626

2727
@Override
28-
public boolean execute(@NotNull final CommandSender commandSender, @NotNull final String[] arguments) {
28+
public void execute(@NotNull final CommandSender commandSender, @NotNull final String[] arguments) {
2929
if (!(commandSender instanceof Player)) {
3030
commandSender.sendMessage(super.getConfiguration().getString("no-console-command")
31-
.replaceAll("%prefix%", super.getPrefix()));
32-
return true;
31+
.replaceAll("%prefix%", super.getConfiguration().getPrefix()));
32+
return;
3333
}
3434

3535
if (arguments.length != 1) {
3636
commandSender.sendMessage(super.getConfiguration().getString("messages.commands.back.usage")
37-
.replaceAll("%prefix%", super.getPrefix()));
38-
return true;
37+
.replaceAll("%prefix%", super.getConfiguration().getPrefix()));
38+
return;
3939
}
4040
final Player player = (Player) commandSender;
4141
final WorldUser user = MultiWorldPlugin.getInstance().getUserProvider().getUser(player.getUniqueId()).orElseThrow();
4242

4343
if (user.getLastLocation() == null) {
4444
commandSender.sendMessage(super.getConfiguration().getString("messages.commands.back.world-not-exists")
45-
.replaceAll("%prefix%", super.getPrefix())
45+
.replaceAll("%prefix%", super.getConfiguration().getPrefix())
4646
.replaceAll("%world_name%", player.getWorld().getName()));
47-
return true;
47+
return;
4848
}
4949

5050
if (MultiWorldPlugin.getInstance().getWorldProvider().getWorldHolder(user.getLastLocation().getWorldName()).isEmpty()) {
5151
commandSender.sendMessage(super.getConfiguration().getString("messages.general.world-not-exists")
52-
.replaceAll("%prefix%", super.getPrefix())
52+
.replaceAll("%prefix%", super.getConfiguration().getPrefix())
5353
.replaceAll("%world_name%", player.getWorld().getName()));
54-
return true;
54+
return;
5555
}
5656
final BukkitWorldHolder currentWorldHolder = MultiWorldPlugin.getInstance().getWorldProvider().getWorldHolder(player.getWorld().getName()).orElseThrow();
5757
final BukkitWorldHolder nextWorldHolder = MultiWorldPlugin.getInstance().getWorldProvider().getWorldHolder(user.getLastLocation().getWorldName()).orElseThrow();
5858

5959
if (!nextWorldHolder.isLoaded()) {
6060
commandSender.sendMessage(super.getConfiguration().getString("messages.general.world-not-loaded")
61-
.replaceAll("%prefix%", super.getPrefix())
61+
.replaceAll("%prefix%", super.getConfiguration().getPrefix())
6262
.replaceAll("%world_name%", user.getLastLocation().getWorldName()));
63-
return true;
63+
return;
6464
}
6565

6666
if (user.getLastLocation().getWorldName().equalsIgnoreCase(player.getWorld().getName())) {
6767
commandSender.sendMessage(super.getConfiguration().getString("messages.commands.teleport.sender-already-there")
68-
.replaceAll("%prefix%", super.getPrefix())
68+
.replaceAll("%prefix%", super.getConfiguration().getPrefix())
6969
.replaceAll("%world_name%", player.getWorld().getName()));
70-
return true;
70+
return;
7171
}
7272
final WorldUserTeleportWorldEvent event = new WorldUserTeleportWorldEvent(user, currentWorldHolder, nextWorldHolder);
7373
Bukkit.getPluginManager().callEvent(event);
7474

7575
if (event.isCancelled()) {
76-
return true;
76+
return;
7777
}
7878

7979
final Location teleportLocation = nextWorldHolder.getWorld().getSpawnLocation();
8080
player.teleport(teleportLocation);
81-
return true;
81+
return;
8282
}
8383

8484
}

0 commit comments

Comments
 (0)