diff --git a/config/mv_checks.xml b/config/mv_checks.xml
index 6f3d42b3..076b2eb3 100644
--- a/config/mv_checks.xml
+++ b/config/mv_checks.xml
@@ -161,6 +161,8 @@
+
+
@@ -381,7 +383,8 @@
-
+
+
@@ -404,6 +407,7 @@
RECORD_COMPONENT_DEF"/>
+
diff --git a/src/main/java/com/onarandombox/MultiverseCore/MultiverseCore.java b/src/main/java/com/onarandombox/MultiverseCore/MultiverseCore.java
index 61a158e7..b832f7c9 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/MultiverseCore.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/MultiverseCore.java
@@ -84,12 +84,16 @@ public class MultiverseCore extends JavaPlugin implements MVCore {
@Override
public void onLoad() {
- // Create our DataFolder
- getDataFolder().mkdirs();
-
// Setup our Logging
Logging.init(this);
+ // Create our DataFolder
+ if (!getDataFolder().exists() && !getDataFolder().mkdirs()) {
+ Logging.severe("Failed to create data folder!");
+ getServer().getPluginManager().disablePlugin(this);
+ return;
+ }
+
// Register our config classes
SerializationConfig.registerAll(WorldProperties.class);
SerializationConfig.initLogging(Logging.getLogger());
@@ -373,6 +377,7 @@ public class MultiverseCore extends JavaPlugin implements MVCore {
*
* @param contractOrImpl The contract or concrete implementation to get the best instance of
* @param qualifiers The set of qualifiers that must match this service definition
+ * @param The type of the contract to get
* @return An instance of the contract or impl if it is a service and is already instantiated, null otherwise
* @throws MultiException if there was an error during service lookup
*/
diff --git a/src/main/java/com/onarandombox/MultiverseCore/commands/GamerulesCommand.java b/src/main/java/com/onarandombox/MultiverseCore/commands/GamerulesCommand.java
index 71088d17..4ce44ae4 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/commands/GamerulesCommand.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/commands/GamerulesCommand.java
@@ -91,10 +91,10 @@ public class GamerulesCommand extends MultiverseCommand {
ParsedCommandFlags parsedFlags = parseFlags(flags);
ContentDisplay.create()
- .addContent(new MapContentProvider<>(getGameRuleMap(world.getBukkitWorld().getOrNull())) // TODO: Handle null
+ .addContent(MapContentProvider.forContent(getGameRuleMap(world.getBukkitWorld().getOrNull())) // TODO: Handle null
.withKeyColor(ChatColor.AQUA)
.withValueColor(ChatColor.WHITE))
- .withSendHandler(new PagedSendHandler()
+ .withSendHandler(PagedSendHandler.create()
.withHeader(this.getTitle(issuer, world.getBukkitWorld().getOrNull()))
.doPagination(true)
.withTargetPage(parsedFlags.flagValue(PAGE_FLAG, 1))
diff --git a/src/main/java/com/onarandombox/MultiverseCore/config/MVCoreConfigNodes.java b/src/main/java/com/onarandombox/MultiverseCore/config/MVCoreConfigNodes.java
index 8711d55a..9893a588 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/config/MVCoreConfigNodes.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/config/MVCoreConfigNodes.java
@@ -28,6 +28,13 @@ class MVCoreConfigNodes {
return node;
}
+ // BEGIN CHECKSTYLE-SUPPRESSION: Javadoc
+ // BEGIN CHECKSTYLE-SUPPRESSION: MemberName
+ // BEGIN CHECKSTYLE-SUPPRESSION: Abbreviation
+ // BEGIN CHECKSTYLE-SUPPRESSION: VisibilityModifier
+ // BEGIN CHECKSTYLE-SUPPRESSION: MultipleStringLiterals
+ // BEGIN CHECKSTYLE-SUPPRESSION: LineLength
+
// TODO: hacky way to get the header to the top of the file
private final ConfigHeaderNode HEADER = node(ConfigHeaderNode.builder("world")
.comment("####################################################################################################")
@@ -53,12 +60,12 @@ class MVCoreConfigNodes {
.comment("")
.build());
-// private final ConfigHeaderNode WORLD_HEADER = node(ConfigHeaderNode.builder("world")
-// .comment("")
-// .comment("")
-// .build());
+ //private final ConfigHeaderNode WORLD_HEADER = node(ConfigHeaderNode.builder("world")
+ // .comment("")
+ // .comment("")
+ // .build());
- public final ConfigNode ENFORCE_ACCESS = node(ConfigNode.builder("world.enforce-access", Boolean.class)
+ final ConfigNode ENFORCE_ACCESS = node(ConfigNode.builder("world.enforce-access", Boolean.class)
.comment("This setting will prevent players from entering worlds they don't have access to.")
.comment("If this is set to false, players will be able to enter any world they want.")
.comment("If this is set to true, players will only be able to enter worlds they have")
@@ -67,7 +74,7 @@ class MVCoreConfigNodes {
.name("enforce-access")
.build());
- public final ConfigNode ENFORCE_GAMEMODE = node(ConfigNode.builder("world.enforce-gamemode", Boolean.class)
+ final ConfigNode ENFORCE_GAMEMODE = node(ConfigNode.builder("world.enforce-gamemode", Boolean.class)
.comment("")
.comment("Sets whether Multiverse will should enforce gamemode on world change.")
.comment("If enabled, players will be forced into the gamemode of the world they are entering, unless they have")
@@ -76,14 +83,14 @@ class MVCoreConfigNodes {
.name("enforce-gamemode")
.build());
- public final ConfigNode AUTO_PURGE_ENTITIES = node(ConfigNode.builder("world.auto-purge-entities", Boolean.class)
+ final ConfigNode AUTO_PURGE_ENTITIES = node(ConfigNode.builder("world.auto-purge-entities", Boolean.class)
.comment("")
.comment("Sets whether Multiverse will purge mobs and entities with be automatically.")
.defaultValue(false)
.name("auto-purge-entities")
.build());
- public final ConfigNode TELEPORT_INTERCEPT = node(ConfigNode.builder("world.teleport-intercept", Boolean.class)
+ final ConfigNode TELEPORT_INTERCEPT = node(ConfigNode.builder("world.teleport-intercept", Boolean.class)
.comment("")
.comment("If this is set to true, Multiverse will enforce access permissions for all teleportation,")
.comment("including teleportation from other plugins.")
@@ -96,7 +103,7 @@ class MVCoreConfigNodes {
.comment("")
.build());
- public final ConfigNode FIRST_SPAWN_OVERRIDE = node(ConfigNode.builder("spawn.first-spawn-override", Boolean.class)
+ final ConfigNode FIRST_SPAWN_OVERRIDE = node(ConfigNode.builder("spawn.first-spawn-override", Boolean.class)
.comment("Sets whether Multiverse will override the first spawn location of a world.")
.comment("If enabled, Multiverse will set the first spawn location of a world to the spawn location of the world.")
.comment("If disabled, it will default to server.properties settings.")
@@ -104,7 +111,7 @@ class MVCoreConfigNodes {
.name("first-spawn-override")
.build());
- public final ConfigNode FIRST_SPAWN_LOCATION = node(ConfigNode.builder("spawn.first-spawn-location", String.class)
+ final ConfigNode FIRST_SPAWN_LOCATION = node(ConfigNode.builder("spawn.first-spawn-location", String.class)
.comment("")
.comment("Sets the world that Multiverse will use as the location for players that first join the server.")
.comment("This only applies if first-spawn-override is set to true.")
@@ -117,14 +124,14 @@ class MVCoreConfigNodes {
.comment("")
.build());
- public final ConfigNode USE_CUSTOM_PORTAL_SEARCH = node(ConfigNode.builder("portal.use-custom-portal-search", Boolean.class)
+ final ConfigNode USE_CUSTOM_PORTAL_SEARCH = node(ConfigNode.builder("portal.use-custom-portal-search", Boolean.class)
.comment("This config option defines whether or not Multiverse should interfere with's Bukkit's default portal search radius.")
.comment("Setting it to false would mean you want to simply let Bukkit decides the search radius itself.")
.defaultValue(false)
.name("use-custom-portal-search")
.build());
- public final ConfigNode CUSTOM_PORTAL_SEARCH_RADIUS = node(ConfigNode.builder("portal.custom-portal-search-radius", Integer.class)
+ final ConfigNode CUSTOM_PORTAL_SEARCH_RADIUS = node(ConfigNode.builder("portal.custom-portal-search-radius", Integer.class)
.comment("")
.comment("This config option defines the search radius Multiverse should use when searching for a portal.")
.comment("This only applies if use-custom-portal-search is set to true.")
@@ -140,14 +147,14 @@ class MVCoreConfigNodes {
.comment("")
.build());
- public final ConfigNode ENABLE_CHAT_PREFIX = node(ConfigNode.builder("messaging.enable-chat-prefix", Boolean.class)
+ final ConfigNode ENABLE_CHAT_PREFIX = node(ConfigNode.builder("messaging.enable-chat-prefix", Boolean.class)
.comment("This config option defines whether or not Multiverse should prefix the chat with the world name.")
.comment("This only applies if use-custom-portal-search is set to true.")
.defaultValue(false)
.name("enable-chat-prefix")
.build());
- public final ConfigNode CHAT_PREFIX_FORMAT = node(ConfigNode.builder("messaging.chat-prefix-format", String.class)
+ final ConfigNode CHAT_PREFIX_FORMAT = node(ConfigNode.builder("messaging.chat-prefix-format", String.class)
.comment("")
.comment("This config option defines the format Multiverse should use when prefixing the chat with the world name.")
.comment("This only applies if enable-chat-prefix is set to true.")
@@ -155,7 +162,7 @@ class MVCoreConfigNodes {
.name("chat-prefix-format")
.build());
- public final ConfigNode REGISTER_PAPI_HOOK = node(ConfigNode.builder("messaging.register-papi-hook", Boolean.class)
+ final ConfigNode REGISTER_PAPI_HOOK = node(ConfigNode.builder("messaging.register-papi-hook", Boolean.class)
.comment("")
.comment("This config option defines whether or not Multiverse should register the PlaceholderAPI hook.")
.comment("This only applies if PlaceholderAPI is installed.")
@@ -168,7 +175,7 @@ class MVCoreConfigNodes {
.comment("")
.build());
- public final ConfigNode GLOBAL_DEBUG = node(ConfigNode.builder("misc.global-debug", Integer.class)
+ final ConfigNode GLOBAL_DEBUG = node(ConfigNode.builder("misc.global-debug", Integer.class)
.comment("This is our debug flag to help identify issues with Multiverse.")
.comment("If you are having issues with Multiverse, please set this to 3 and then post your log to pastebin.com")
.comment("Otherwise, there's no need to touch this. If not instructed by a wiki page or developer.")
@@ -190,7 +197,7 @@ class MVCoreConfigNodes {
})
.build());
- public final ConfigNode SILENT_START = node(ConfigNode.builder("misc.silent-start", Boolean.class)
+ final ConfigNode SILENT_START = node(ConfigNode.builder("misc.silent-start", Boolean.class)
.comment("")
.comment("If true, the startup console messages will no longer show.")
.defaultValue(false)
@@ -198,14 +205,14 @@ class MVCoreConfigNodes {
.onSetValue((oldValue, newValue) -> Logging.setShowingConfig(!newValue))
.build());
- public final ConfigNode SHOW_DONATION_MESSAGE = node(ConfigNode.builder("misc.show-donation-message", Boolean.class)
+ final ConfigNode SHOW_DONATION_MESSAGE = node(ConfigNode.builder("misc.show-donation-message", Boolean.class)
.comment("")
.comment("If you don't want to donate, you can set this to false and Multiverse will stop nagging you.")
.defaultValue(true)
.name("show-donation-message")
.build());
- public final ConfigNode VERSION = node(ConfigNode.builder("version", Double.class)
+ final ConfigNode VERSION = node(ConfigNode.builder("version", Double.class)
.comment("")
.comment("")
.comment("This just signifies the version number so we can see what version of config you have.")
@@ -213,4 +220,11 @@ class MVCoreConfigNodes {
.defaultValue(MVCoreConfig.CONFIG_VERSION)
.name(null)
.build());
+
+ // END CHECKSTYLE-SUPPRESSION: Javadoc
+ // END CHECKSTYLE-SUPPRESSION: MemberName
+ // END CHECKSTYLE-SUPPRESSION: Abbreviation
+ // END CHECKSTYLE-SUPPRESSION: VisibilityModifier
+ // END CHECKSTYLE-SUPPRESSION: MultipleStringLiterals
+ // END CHECKSTYLE-SUPPRESSION: LineLength
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/configuration/handle/CommentedYamlConfigHandle.java b/src/main/java/com/onarandombox/MultiverseCore/configuration/handle/CommentedYamlConfigHandle.java
index 04b989e1..23208c8d 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/configuration/handle/CommentedYamlConfigHandle.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/configuration/handle/CommentedYamlConfigHandle.java
@@ -29,7 +29,11 @@ public class CommentedYamlConfigHandle extends FileConfigHandle {
- Logging.warning("Failed to set node " + valueNode.getPath() + " to " + valueNode.getDefaultValue());
- setDefault(valueNode);
- });
+ //noinspection unchecked
+ set(valueNode, oldConfig.getObject(
+ valueNode.getPath(),
+ valueNode.getType(),
+ valueNode.getDefaultValue())).onFailure(e -> {
+ Logging.warning("Failed to set node " + valueNode.getPath()
+ + " to " + valueNode.getDefaultValue());
+ setDefault(valueNode);
+ });
}
});
}
@@ -81,6 +90,9 @@ public class CommentedYamlConfigHandle extends FileConfigHandle config.save());
}
+ /**
+ * Builder for {@link CommentedYamlConfigHandle}.
+ */
public static class Builder extends FileConfigHandle.Builder {
protected Builder(@NotNull Path configPath) {
diff --git a/src/main/java/com/onarandombox/MultiverseCore/configuration/handle/ConfigurationSectionHandle.java b/src/main/java/com/onarandombox/MultiverseCore/configuration/handle/ConfigurationSectionHandle.java
index 6a3bf1b4..7e7aeeef 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/configuration/handle/ConfigurationSectionHandle.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/configuration/handle/ConfigurationSectionHandle.java
@@ -13,6 +13,12 @@ import java.util.logging.Logger;
* Configuration handle for a single configuration section.
*/
public class ConfigurationSectionHandle extends GenericConfigHandle {
+ /**
+ * Creates a new builder for a {@link ConfigurationSectionHandle}.
+ *
+ * @param configurationSection The configuration section.
+ * @return The builder.
+ */
public static Builder extends Builder> builder(@NotNull ConfigurationSection configurationSection) {
return new Builder<>(configurationSection);
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/destination/DestinationsProvider.java b/src/main/java/com/onarandombox/MultiverseCore/destination/DestinationsProvider.java
index a430f537..0b043019 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/destination/DestinationsProvider.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/destination/DestinationsProvider.java
@@ -31,16 +31,13 @@ public class DestinationsProvider {
private static final String PERMISSION_PREFIX = "multiverse.teleport.";
private final PluginManager pluginManager;
- private final SafeTTeleporter safeTTeleporter;
+ private final SafeTTeleporter safetyTeleporter;
private final Map> destinationMap;
- /**
- * Creates a new destinations provider.
- */
@Inject
- public DestinationsProvider(@NotNull PluginManager pluginManager, @NotNull SafeTTeleporter safeTTeleporter) {
+ DestinationsProvider(@NotNull PluginManager pluginManager, @NotNull SafeTTeleporter safetyTeleporter) {
this.pluginManager = pluginManager;
- this.safeTTeleporter = safeTTeleporter;
+ this.safetyTeleporter = safetyTeleporter;
this.destinationMap = new HashMap<>();
}
@@ -66,9 +63,9 @@ public class DestinationsProvider {
* @param deststring The current destination string.
* @return A collection of tab completions.
*/
- public @NotNull Collection suggestDestinations(@NotNull BukkitCommandIssuer issuer,
- @Nullable String deststring
- ) {
+ public @NotNull Collection suggestDestinations(
+ @NotNull BukkitCommandIssuer issuer,
+ @Nullable String deststring) {
return destinationMap.values().stream()
.filter(destination -> issuer.hasPermission(PERMISSION_PREFIX + "self." + destination.getIdentifier())
|| issuer.hasPermission(PERMISSION_PREFIX + "other." + destination.getIdentifier()))
@@ -129,11 +126,12 @@ public class DestinationsProvider {
* @param teleporter The teleporter.
* @param teleportee The teleportee.
* @param destination The destination.
+ * @return The async teleport result.
*/
- public CompletableFuture playerTeleportAsync(@NotNull BukkitCommandIssuer teleporter,
- @NotNull Player teleportee,
- @NotNull ParsedDestination> destination
- ) {
+ public CompletableFuture playerTeleportAsync(
+ @NotNull BukkitCommandIssuer teleporter,
+ @NotNull Player teleportee,
+ @NotNull ParsedDestination> destination) {
if (!checkTeleportPermissions(teleporter, teleportee, destination)) {
return CompletableFuture.completedFuture(TeleportResult.FAIL_PERMISSION);
}
@@ -146,14 +144,15 @@ public class DestinationsProvider {
* @param teleporter The teleporter.
* @param teleportee The teleportee.
* @param destination The destination.
+ * @return The async teleport result.
*/
- public CompletableFuture teleportAsync(@NotNull BukkitCommandIssuer teleporter,
- @NotNull Entity teleportee,
- @NotNull ParsedDestination> destination
- ) {
+ public CompletableFuture teleportAsync(
+ @NotNull BukkitCommandIssuer teleporter,
+ @NotNull Entity teleportee,
+ @NotNull ParsedDestination> destination) {
Teleporter teleportHandler = destination.getDestination().getTeleporter();
if (teleportHandler == null) {
- teleportHandler = safeTTeleporter;
+ teleportHandler = safetyTeleporter;
}
return teleportHandler.teleportAsync(teleporter, teleportee, destination);
}
@@ -166,7 +165,8 @@ public class DestinationsProvider {
* @param destination The destination.
* @return True if the teleporter has permission, false otherwise.
*/
- public boolean checkTeleportPermissions(CommandIssuer teleporter, Entity teleportee, ParsedDestination> destination) {
+ public boolean checkTeleportPermissions(
+ CommandIssuer teleporter, Entity teleportee, ParsedDestination> destination) {
// TODO: Move permission checking to a separate class
String permission = PERMISSION_PREFIX
+ (teleportee.equals(teleporter.getIssuer()) ? "self" : "other") + "."
diff --git a/src/main/java/com/onarandombox/MultiverseCore/destination/core/AnchorDestination.java b/src/main/java/com/onarandombox/MultiverseCore/destination/core/AnchorDestination.java
index 273f7571..82a5645c 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/destination/core/AnchorDestination.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/destination/core/AnchorDestination.java
@@ -12,13 +12,16 @@ import org.jvnet.hk2.annotations.Service;
import java.util.Collection;
+/**
+ * {@link Destination} implementation for anchors.
+ */
@Service
public class AnchorDestination implements Destination {
private final AnchorManager anchorManager;
@Inject
- public AnchorDestination(AnchorManager anchorManager) {
+ AnchorDestination(AnchorManager anchorManager) {
this.anchorManager = anchorManager;
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/destination/core/AnchorDestinationInstance.java b/src/main/java/com/onarandombox/MultiverseCore/destination/core/AnchorDestinationInstance.java
index f0cc0bbd..ebcdb3a3 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/destination/core/AnchorDestinationInstance.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/destination/core/AnchorDestinationInstance.java
@@ -7,6 +7,9 @@ import org.bukkit.util.Vector;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
+/**
+ * Destination instance implementation for the {@link AnchorDestination}.
+ */
public class AnchorDestinationInstance implements DestinationInstance {
private final String anchorName;
private final Location anchorLocation;
@@ -17,7 +20,7 @@ public class AnchorDestinationInstance implements DestinationInstance {
* @param anchorName The name of the anchor.
* @param anchorLocation The location of the anchor.
*/
- public AnchorDestinationInstance(@NotNull String anchorName, @NotNull Location anchorLocation) {
+ AnchorDestinationInstance(@NotNull String anchorName, @NotNull Location anchorLocation) {
this.anchorName = anchorName;
this.anchorLocation = anchorLocation;
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/destination/core/BedDestination.java b/src/main/java/com/onarandombox/MultiverseCore/destination/core/BedDestination.java
index abb33afc..26a5a714 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/destination/core/BedDestination.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/destination/core/BedDestination.java
@@ -14,11 +14,14 @@ import java.util.Collection;
import java.util.List;
import java.util.stream.Collectors;
+/**
+ * {@link Destination} implementation for beds.
+ */
@Service
public class BedDestination implements Destination {
- public static final String OWN_BED_STRING = "playerbed";
+ static final String OWN_BED_STRING = "playerbed";
- public BedDestination() {
+ BedDestination() {
}
/**
diff --git a/src/main/java/com/onarandombox/MultiverseCore/destination/core/BedDestinationInstance.java b/src/main/java/com/onarandombox/MultiverseCore/destination/core/BedDestinationInstance.java
index 8e7c0edb..edfea1dc 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/destination/core/BedDestinationInstance.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/destination/core/BedDestinationInstance.java
@@ -8,6 +8,9 @@ import org.bukkit.util.Vector;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
+/**
+ * Destination instance implementation for the {@link BedDestination}.
+ */
public class BedDestinationInstance implements DestinationInstance {
private final Player player;
@@ -16,7 +19,7 @@ public class BedDestinationInstance implements DestinationInstance {
*
* @param player The player whose bed to use.
*/
- public BedDestinationInstance(Player player) {
+ BedDestinationInstance(Player player) {
this.player = player;
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/destination/core/CannonDestination.java b/src/main/java/com/onarandombox/MultiverseCore/destination/core/CannonDestination.java
index 2648e549..dc365cbb 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/destination/core/CannonDestination.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/destination/core/CannonDestination.java
@@ -15,13 +15,16 @@ import org.jvnet.hk2.annotations.Service;
import java.util.Collection;
import java.util.Collections;
+/**
+ * {@link Destination} implementation for cannons.
+ */
@Service
public class CannonDestination implements Destination {
private final WorldManager worldManager;
@Inject
- public CannonDestination(WorldManager worldManager) {
+ CannonDestination(WorldManager worldManager) {
this.worldManager = worldManager;
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/destination/core/CannonDestinationInstance.java b/src/main/java/com/onarandombox/MultiverseCore/destination/core/CannonDestinationInstance.java
index 8ceb8c80..33c55f14 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/destination/core/CannonDestinationInstance.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/destination/core/CannonDestinationInstance.java
@@ -7,6 +7,9 @@ import org.bukkit.util.Vector;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
+/**
+ * Destination instance implementation for the {@link CannonDestination}.
+ */
public class CannonDestinationInstance implements DestinationInstance {
private final Location location;
private final double speed;
@@ -17,7 +20,7 @@ public class CannonDestinationInstance implements DestinationInstance {
* @param location The location to teleport to.
* @param speed The speed to fire the player at.
*/
- public CannonDestinationInstance(@NotNull Location location, double speed) {
+ CannonDestinationInstance(@NotNull Location location, double speed) {
this.location = location;
this.speed = speed;
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/destination/core/ExactDestination.java b/src/main/java/com/onarandombox/MultiverseCore/destination/core/ExactDestination.java
index 7b70ebf7..6430e9e1 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/destination/core/ExactDestination.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/destination/core/ExactDestination.java
@@ -15,6 +15,9 @@ import org.jvnet.hk2.annotations.Service;
import java.util.Collection;
import java.util.Collections;
+/**
+ * {@link Destination} implementation for exact locations.
+ */
@Service
public class ExactDestination implements Destination {
diff --git a/src/main/java/com/onarandombox/MultiverseCore/destination/core/ExactDestinationInstance.java b/src/main/java/com/onarandombox/MultiverseCore/destination/core/ExactDestinationInstance.java
index e2235829..173122fe 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/destination/core/ExactDestinationInstance.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/destination/core/ExactDestinationInstance.java
@@ -7,6 +7,9 @@ import org.bukkit.util.Vector;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
+/**
+ * Destination instance implementation for the {@link ExactDestination}.
+ */
public class ExactDestinationInstance implements DestinationInstance {
private final Location location;
@@ -15,7 +18,7 @@ public class ExactDestinationInstance implements DestinationInstance {
*
* @param location The location to teleport to.
*/
- public ExactDestinationInstance(Location location) {
+ ExactDestinationInstance(Location location) {
this.location = location;
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/destination/core/PlayerDestination.java b/src/main/java/com/onarandombox/MultiverseCore/destination/core/PlayerDestination.java
index 04deceae..5b2d7fa2 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/destination/core/PlayerDestination.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/destination/core/PlayerDestination.java
@@ -13,12 +13,15 @@ import org.jvnet.hk2.annotations.Service;
import java.util.Collection;
import java.util.stream.Collectors;
+/**
+ * {@link Destination} implementation for players.s
+ */
@Service
public class PlayerDestination implements Destination {
/**
* Creates a new instance of the PlayerDestination.
*/
- public PlayerDestination() {
+ PlayerDestination() {
}
/**
diff --git a/src/main/java/com/onarandombox/MultiverseCore/destination/core/PlayerDestinationInstance.java b/src/main/java/com/onarandombox/MultiverseCore/destination/core/PlayerDestinationInstance.java
index fc31082f..c72c4962 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/destination/core/PlayerDestinationInstance.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/destination/core/PlayerDestinationInstance.java
@@ -8,6 +8,9 @@ import org.bukkit.util.Vector;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
+/**
+ * Destination instance implementation for the {@link PlayerDestination}.
+ */
public class PlayerDestinationInstance implements DestinationInstance {
private final Player player;
@@ -16,7 +19,7 @@ public class PlayerDestinationInstance implements DestinationInstance {
*
* @param player The player whose location to go to.
*/
- public PlayerDestinationInstance(Player player) {
+ PlayerDestinationInstance(Player player) {
this.player = player;
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/destination/core/WorldDestination.java b/src/main/java/com/onarandombox/MultiverseCore/destination/core/WorldDestination.java
index f9bc48f0..0239668d 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/destination/core/WorldDestination.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/destination/core/WorldDestination.java
@@ -14,6 +14,9 @@ import org.jvnet.hk2.annotations.Service;
import java.util.Collection;
import java.util.Collections;
+/**
+ * {@link Destination} implementation for exact locations.
+ */
@Service
public class WorldDestination implements Destination {
@@ -21,7 +24,7 @@ public class WorldDestination implements Destination {
private final LocationManipulation locationManipulation;
@Inject
- public WorldDestination(WorldManager worldManager, LocationManipulation locationManipulation) {
+ WorldDestination(WorldManager worldManager, LocationManipulation locationManipulation) {
this.worldManager = worldManager;
this.locationManipulation = locationManipulation;
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/destination/core/WorldDestinationInstance.java b/src/main/java/com/onarandombox/MultiverseCore/destination/core/WorldDestinationInstance.java
index e4d47c5b..18d92fe6 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/destination/core/WorldDestinationInstance.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/destination/core/WorldDestinationInstance.java
@@ -8,6 +8,9 @@ import org.bukkit.util.Vector;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
+/**
+ * Destination instance implementation for the {@link WorldDestination}.
+ */
public class WorldDestinationInstance implements DestinationInstance {
private final LoadedMultiverseWorld world;
private final String direction;
@@ -16,9 +19,11 @@ public class WorldDestinationInstance implements DestinationInstance {
/**
* Constructor.
*
- * @param world The world to teleport to.
+ * @param world The world to teleport to.
+ * @param direction The direction to face.
+ * @param yaw The yaw to face.
*/
- public WorldDestinationInstance(@NotNull LoadedMultiverseWorld world, @Nullable String direction, float yaw) {
+ WorldDestinationInstance(@NotNull LoadedMultiverseWorld world, @Nullable String direction, float yaw) {
this.world = world;
this.direction = direction;
this.yaw = yaw;
diff --git a/src/main/java/com/onarandombox/MultiverseCore/display/ContentDisplay.java b/src/main/java/com/onarandombox/MultiverseCore/display/ContentDisplay.java
index 7122554d..4679ad5b 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/display/ContentDisplay.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/display/ContentDisplay.java
@@ -28,7 +28,7 @@ public class ContentDisplay {
private final List contentParsers = new ArrayList<>();
private SendHandler sendHandler = DefaultSendHandler.getInstance();
- public ContentDisplay() {
+ ContentDisplay() {
}
/**
diff --git a/src/main/java/com/onarandombox/MultiverseCore/display/filters/DefaultContentFilter.java b/src/main/java/com/onarandombox/MultiverseCore/display/filters/DefaultContentFilter.java
index 590abe15..c0b51c8e 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/display/filters/DefaultContentFilter.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/display/filters/DefaultContentFilter.java
@@ -3,10 +3,15 @@ package com.onarandombox.MultiverseCore.display.filters;
/**
* Default implementation of {@link ContentFilter} that doesn't filter anything.
*/
-public class DefaultContentFilter implements ContentFilter {
+public final class DefaultContentFilter implements ContentFilter {
- public static DefaultContentFilter instance;
+ private static DefaultContentFilter instance;
+ /**
+ * Gets the singleton instance of this class.
+ *
+ * @return The singleton instance of this class.
+ */
public static DefaultContentFilter get() {
if (instance == null) {
instance = new DefaultContentFilter();
diff --git a/src/main/java/com/onarandombox/MultiverseCore/display/filters/RegexContentFilter.java b/src/main/java/com/onarandombox/MultiverseCore/display/filters/RegexContentFilter.java
index 59c17fce..44cd574d 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/display/filters/RegexContentFilter.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/display/filters/RegexContentFilter.java
@@ -18,7 +18,7 @@ public class RegexContentFilter implements ContentFilter {
/**
* Compile regex pattern to create a regex filter.
- *
+ *
* When prefixed with 'r=', filter string is used as the full regex pattern.
* Else, set to regex that contains the filterString.
*
@@ -40,7 +40,7 @@ public class RegexContentFilter implements ContentFilter {
private final String regexString;
private Pattern regexPattern;
- public RegexContentFilter(@Nullable String regexString) {
+ RegexContentFilter(@Nullable String regexString) {
this.regexString = regexString;
convertToPattern();
}
@@ -85,14 +85,29 @@ public class RegexContentFilter implements ContentFilter {
return hasValidRegex();
}
+ /**
+ * Check if the regex is valid.
+ *
+ * @return True if the regex is valid.
+ */
public boolean hasValidRegex() {
return regexPattern != null;
}
+ /**
+ * Get the regex string.
+ *
+ * @return The regex string.
+ */
public String getRegexString() {
return regexString;
}
+ /**
+ * Get the compiled regex pattern.
+ *
+ * @return The compiled regex pattern.
+ */
public Pattern getRegexPattern() {
return regexPattern;
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/display/handlers/BaseSendHandler.java b/src/main/java/com/onarandombox/MultiverseCore/display/handlers/BaseSendHandler.java
index 82c620c9..5afd56f6 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/display/handlers/BaseSendHandler.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/display/handlers/BaseSendHandler.java
@@ -18,8 +18,19 @@ import java.util.stream.Collectors;
*/
public abstract class BaseSendHandler> implements SendHandler {
+ /**
+ * Header to be displayed.
+ */
protected String header = "";
+
+ /**
+ * Filter to keep only contents that matches the filter.
+ */
protected ContentFilter filter = DefaultContentFilter.get();
+
+ /**
+ * Fallback message to be displayed when there is no content to display.
+ */
protected String noContentMessage = String.format("%sThere is no content to display.", ChatColor.RED);
/**
@@ -75,9 +86,9 @@ public abstract class BaseSendHandler> implements S
* @param replacements String formatting replacements.
* @return Same {@link T} for method chaining.
*/
- public T withHeader(@NotNull String header, @NotNull Object...replacements) {
+ public T withHeader(@NotNull String header, @NotNull Object... replacements) {
this.header = String.format(header, replacements);
- return (T) this;
+ return getT();
}
/**
@@ -88,7 +99,7 @@ public abstract class BaseSendHandler> implements S
*/
public T withFilter(@NotNull ContentFilter filter) {
this.filter = filter;
- return (T) this;
+ return getT();
}
/**
@@ -99,6 +110,11 @@ public abstract class BaseSendHandler> implements S
*/
public T noContentMessage(@Nullable String message) {
this.noContentMessage = message;
+ return getT();
+ }
+
+ @SuppressWarnings("unchecked")
+ private @NotNull T getT() {
return (T) this;
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/display/handlers/DefaultSendHandler.java b/src/main/java/com/onarandombox/MultiverseCore/display/handlers/DefaultSendHandler.java
index 38258d42..e2230eed 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/display/handlers/DefaultSendHandler.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/display/handlers/DefaultSendHandler.java
@@ -5,10 +5,18 @@ import org.jetbrains.annotations.NotNull;
import java.util.List;
-public class DefaultSendHandler implements SendHandler {
+/**
+ * Most basic implementation of {@link SendHandler} that just sends content with no formatting.
+ */
+public final class DefaultSendHandler implements SendHandler {
private static DefaultSendHandler instance;
+ /**
+ * Gets the singleton instance of this class.
+ *
+ * @return The singleton instance of this class.
+ */
public static DefaultSendHandler getInstance() {
if (instance == null) {
instance = new DefaultSendHandler();
diff --git a/src/main/java/com/onarandombox/MultiverseCore/display/handlers/InlineSendHandler.java b/src/main/java/com/onarandombox/MultiverseCore/display/handlers/InlineSendHandler.java
index 283d3891..62b06414 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/display/handlers/InlineSendHandler.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/display/handlers/InlineSendHandler.java
@@ -23,7 +23,7 @@ public class InlineSendHandler extends BaseSendHandler {
private String delimiter = ChatColor.WHITE + ", ";
private String prefix = null;
- public InlineSendHandler() {
+ InlineSendHandler() {
}
/**
diff --git a/src/main/java/com/onarandombox/MultiverseCore/display/handlers/PagedSendHandler.java b/src/main/java/com/onarandombox/MultiverseCore/display/handlers/PagedSendHandler.java
index c5d27d92..4bb62fa2 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/display/handlers/PagedSendHandler.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/display/handlers/PagedSendHandler.java
@@ -24,10 +24,10 @@ public class PagedSendHandler extends BaseSendHandler {
private boolean paginate = true;
private boolean paginateInConsole = false;
private boolean padEnd = true;
- private int linesPerPage = 8;
+ private int linesPerPage = 8; // SUPPRESS CHECKSTYLE: MagicNumberCheck
private int targetPage = 1;
- public PagedSendHandler() {
+ PagedSendHandler() {
}
/**
diff --git a/src/main/java/com/onarandombox/MultiverseCore/display/parsers/ContentProvider.java b/src/main/java/com/onarandombox/MultiverseCore/display/parsers/ContentProvider.java
index 628f8851..a86d627c 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/display/parsers/ContentProvider.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/display/parsers/ContentProvider.java
@@ -14,6 +14,7 @@ public interface ContentProvider {
* Parse the object to string(s) and add it to the content.
*
* @param issuer The target which the content will be displayed to.
+ * @return The parsed content list.
*/
Collection parse(@NotNull BukkitCommandIssuer issuer);
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/display/parsers/ListContentProvider.java b/src/main/java/com/onarandombox/MultiverseCore/display/parsers/ListContentProvider.java
index caaba140..a2767e27 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/display/parsers/ListContentProvider.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/display/parsers/ListContentProvider.java
@@ -29,7 +29,7 @@ public class ListContentProvider implements ContentProvider {
private String format = null;
- public ListContentProvider(List list) {
+ ListContentProvider(List list) {
this.list = list;
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/display/parsers/MapContentProvider.java b/src/main/java/com/onarandombox/MultiverseCore/display/parsers/MapContentProvider.java
index e8954d35..537493a5 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/display/parsers/MapContentProvider.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/display/parsers/MapContentProvider.java
@@ -35,7 +35,7 @@ public class MapContentProvider implements ContentProvider {
private ChatColor valueColor = ChatColor.WHITE;
private String separator = ": ";
- public MapContentProvider(Map map) {
+ MapContentProvider(Map map) {
this.map = map;
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/economy/ItemEconomy.java b/src/main/java/com/onarandombox/MultiverseCore/economy/ItemEconomy.java
index 31b77dea..1155a526 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/economy/ItemEconomy.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/economy/ItemEconomy.java
@@ -7,6 +7,7 @@ import org.bukkit.inventory.ItemStack;
import java.util.HashMap;
+// TODO: Make thsi no static
class ItemEconomy {
private static final String ECONOMY_NAME = "Simple Item Economy";
diff --git a/src/main/java/com/onarandombox/MultiverseCore/economy/MVEconomist.java b/src/main/java/com/onarandombox/MultiverseCore/economy/MVEconomist.java
index 832cb031..814b6934 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/economy/MVEconomist.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/economy/MVEconomist.java
@@ -103,7 +103,7 @@ public class MVEconomist {
}
/**
- * Pays for a given amount of currency either from the player's economy account or inventory if the currency
+ * Pays for a given amount of currency either from the player's economy account or inventory if the currency.
*
* @param player the player to take currency from.
* @param price the amount to take.
diff --git a/src/main/java/com/onarandombox/MultiverseCore/economy/VaultHandler.java b/src/main/java/com/onarandombox/MultiverseCore/economy/VaultHandler.java
index d00c3261..a26aaf01 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/economy/VaultHandler.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/economy/VaultHandler.java
@@ -17,15 +17,16 @@ public class VaultHandler implements Listener {
private Economy economy;
- public VaultHandler(final Plugin plugin) {
+ VaultHandler(final Plugin plugin) {
Bukkit.getPluginManager().registerEvents(new VaultListener(), plugin);
setupVaultEconomy();
}
private boolean setupVaultEconomy() {
if (Bukkit.getPluginManager().getPlugin("Vault") != null) {
- final RegisteredServiceProvider economyProvider =
- Bukkit.getServicesManager().getRegistration(net.milkbowl.vault.economy.Economy.class);
+ final RegisteredServiceProvider economyProvider = Bukkit
+ .getServicesManager()
+ .getRegistration(net.milkbowl.vault.economy.Economy.class);
if (economyProvider != null) {
Logging.fine("Vault economy enabled.");
economy = economyProvider.getProvider();
@@ -38,7 +39,7 @@ public class VaultHandler implements Listener {
economy = null;
}
- return (economy != null);
+ return economy != null;
}
/**
@@ -62,7 +63,7 @@ public class VaultHandler implements Listener {
/**
* Listens for Vault plugin events.
*/
- private class VaultListener implements Listener {
+ private final class VaultListener implements Listener {
@EventHandler
private void vaultEnabled(PluginEnableEvent event) {
if (event.getPlugin() != null && event.getPlugin().getName().equals("Vault")) {
diff --git a/src/main/java/com/onarandombox/MultiverseCore/inject/PluginInjection.java b/src/main/java/com/onarandombox/MultiverseCore/inject/PluginInjection.java
index 638905fe..312acb2b 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/inject/PluginInjection.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/inject/PluginInjection.java
@@ -30,7 +30,7 @@ public final class PluginInjection {
* {@link org.bukkit.plugin.java.JavaPlugin}.
*
* @param pluginBinder The plugin binder for the plugin.
- * @return
+ * @return A {@link ServiceLocator} for the plugin.
*/
@NotNull
public static Try createServiceLocator(@NotNull PluginBinder> pluginBinder) {
@@ -74,8 +74,7 @@ public final class PluginInjection {
private PluginInjection(
@NotNull PluginBinder> pluginBinder,
@NotNull ServiceLocatorFactory serviceLocatorFactory,
- @NotNull ServiceLocator serverServiceLocator
- ) {
+ @NotNull ServiceLocator serverServiceLocator) {
this.pluginBinder = pluginBinder;
plugin = pluginBinder.getPlugin();
pluginServiceLocator = serviceLocatorFactory.create(plugin.getName(), serverServiceLocator);
@@ -89,16 +88,14 @@ public final class PluginInjection {
@NotNull
private static Try createServerServiceLocator(
@NotNull ServiceLocatorFactory serviceLocatorFactory,
- @NotNull ServiceLocator systemServiceLocator
- ) {
+ @NotNull ServiceLocator systemServiceLocator) {
return Try.of(() -> serviceLocatorFactory.create("server", systemServiceLocator))
.andThenTry(locator -> ServiceLocatorUtilities.bind(locator, new ServerBinder()));
}
@NotNull
private static Try createSystemServiceLocator(
- @NotNull ServiceLocatorFactory serviceLocatorFactory
- ) {
+ @NotNull ServiceLocatorFactory serviceLocatorFactory) {
ServiceLocator serviceLocator = serviceLocatorFactory.create("system");
return Try.of(() -> serviceLocator.getService(DynamicConfigurationService.class))
@@ -111,15 +108,12 @@ public final class PluginInjection {
@NotNull
private static Try populatePluginServiceLocator(
@NotNull ServiceLocator serviceLocator,
- @NotNull Plugin plugin
- ) {
+ @NotNull Plugin plugin) {
return Try.of(() -> serviceLocator.getService(DynamicConfigurationService.class))
.mapTry(dynamicConfigurationService -> {
- dynamicConfigurationService
- .getPopulator()
- .populate(new ClasspathDescriptorFileFinder(
- plugin.getClass().getClassLoader(),
- plugin.getName()));
+ dynamicConfigurationService.getPopulator().populate(new ClasspathDescriptorFileFinder(
+ plugin.getClass().getClassLoader(),
+ plugin.getName()));
return serviceLocator;
});
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/listeners/MVChatListener.java b/src/main/java/com/onarandombox/MultiverseCore/listeners/MVChatListener.java
index 6c750d80..6823765b 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/listeners/MVChatListener.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/listeners/MVChatListener.java
@@ -19,11 +19,10 @@ public class MVChatListener implements InjectableListener {
private final MVPlayerListener playerListener;
@Inject
- public MVChatListener(
+ MVChatListener(
MVCoreConfig config,
WorldManager worldManager,
- MVPlayerListener playerListener
- ) {
+ MVPlayerListener playerListener) {
this.config = config;
this.worldManager = worldManager;
this.playerListener = playerListener;
@@ -52,7 +51,7 @@ public class MVChatListener implements InjectableListener {
}
String prefix = this.worldManager.getLoadedWorld(world)
- .map((mvworld) -> mvworld.isHidden() ? "" : mvworld.getAlias())
+ .map(mvworld -> mvworld.isHidden() ? "" : mvworld.getAlias())
.getOrElse("");
String chat = event.getFormat();
diff --git a/src/main/java/com/onarandombox/MultiverseCore/listeners/MVEntityListener.java b/src/main/java/com/onarandombox/MultiverseCore/listeners/MVEntityListener.java
index b014d8f8..6a8bea53 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/listeners/MVEntityListener.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/listeners/MVEntityListener.java
@@ -32,10 +32,9 @@ public class MVEntityListener implements InjectableListener {
private final WorldPurger worldPurger;
@Inject
- public MVEntityListener(
+ MVEntityListener(
@NotNull WorldManager worldManager,
- @NotNull WorldPurger worldPurger
- ) {
+ @NotNull WorldPurger worldPurger) {
this.worldManager = worldManager;
this.worldPurger = worldPurger;
}
@@ -53,7 +52,7 @@ public class MVEntityListener implements InjectableListener {
return;
}
worldManager.getLoadedWorld(player.getWorld())
- .peek((world) -> {
+ .peek(world -> {
if (!world.getHunger() && event.getFoodLevel() < player.getFoodLevel()) {
event.setCancelled(true);
}
@@ -70,7 +69,7 @@ public class MVEntityListener implements InjectableListener {
return;
}
worldManager.getLoadedWorld(event.getEntity().getWorld())
- .peek((world) -> {
+ .peek(world -> {
if (!world.getAutoHeal()) {
event.setCancelled(true);
}
@@ -96,7 +95,7 @@ public class MVEntityListener implements InjectableListener {
}
worldManager.getLoadedWorld(event.getEntity().getWorld())
- .peek((world) -> {
+ .peek(world -> {
if (this.worldPurger.shouldWeKillThisCreature(world, event.getEntity())) {
Logging.finer("Cancelling Creature Spawn Event for: " + event.getEntity());
event.setCancelled(true);
diff --git a/src/main/java/com/onarandombox/MultiverseCore/listeners/MVPlayerListener.java b/src/main/java/com/onarandombox/MultiverseCore/listeners/MVPlayerListener.java
index e5ccfcfa..c635565b 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/listeners/MVPlayerListener.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/listeners/MVPlayerListener.java
@@ -68,7 +68,7 @@ public class MVPlayerListener implements InjectableListener {
private final Map playerWorld = new ConcurrentHashMap();
@Inject
- public MVPlayerListener(
+ MVPlayerListener(
MultiverseCore plugin,
MVCoreConfig config,
Provider worldManagerProvider,
@@ -79,8 +79,7 @@ public class MVPlayerListener implements InjectableListener {
WorldEntryCheckerProvider worldEntryCheckerProvider,
Provider commandManagerProvider,
CorePermissionsChecker permissionsChecker,
- DestinationsProvider destinationsProvider
- ) {
+ DestinationsProvider destinationsProvider) {
this.plugin = plugin;
this.config = config;
this.worldManagerProvider = worldManagerProvider;
@@ -103,6 +102,8 @@ public class MVPlayerListener implements InjectableListener {
}
/**
+ * Gets the map of player and the world name they are in.
+ *
* @return the playerWorld-map
*/
public Map getPlayerWorld() {
@@ -111,6 +112,7 @@ public class MVPlayerListener implements InjectableListener {
/**
* This method is called when a player respawns.
+ *
* @param event The Event that was fired.
*/
@EventHandler(priority = EventPriority.LOW)
diff --git a/src/main/java/com/onarandombox/MultiverseCore/listeners/MVPortalListener.java b/src/main/java/com/onarandombox/MultiverseCore/listeners/MVPortalListener.java
index 1e4650e3..629babef 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/listeners/MVPortalListener.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/listeners/MVPortalListener.java
@@ -34,7 +34,7 @@ public class MVPortalListener implements InjectableListener {
private final WorldManager worldManager;
@Inject
- public MVPortalListener(@NotNull MVCoreConfig config, @NotNull WorldManager worldManager) {
+ MVPortalListener(@NotNull MVCoreConfig config, @NotNull WorldManager worldManager) {
this.config = config;
this.worldManager = worldManager;
}
@@ -118,6 +118,7 @@ public class MVPortalListener implements InjectableListener {
/**
* Handles portal search radius adjustment.
+ *
* @param event The Event that was fired.
*/
@EventHandler
diff --git a/src/main/java/com/onarandombox/MultiverseCore/listeners/MVWeatherListener.java b/src/main/java/com/onarandombox/MultiverseCore/listeners/MVWeatherListener.java
index c4310304..0da82eed 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/listeners/MVWeatherListener.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/listeners/MVWeatherListener.java
@@ -25,12 +25,13 @@ public class MVWeatherListener implements InjectableListener {
private final WorldManager worldManager;
@Inject
- public MVWeatherListener(WorldManager worldManager) {
+ MVWeatherListener(WorldManager worldManager) {
this.worldManager = worldManager;
}
/**
* This method is called when the weather changes.
+ *
* @param event The Event that was fired.
*/
@EventHandler
@@ -39,7 +40,7 @@ public class MVWeatherListener implements InjectableListener {
return;
}
worldManager.getLoadedWorld(event.getWorld())
- .peek((world) -> {
+ .peek(world -> {
if (!world.getAllowWeather()) {
Logging.fine("Cancelling weather for %s as getAllowWeather is false", world.getName());
event.setCancelled(true);
@@ -49,6 +50,7 @@ public class MVWeatherListener implements InjectableListener {
/**
* This method is called when a big storm is going to start.
+ *
* @param event The Event that was fired.
*/
@EventHandler
@@ -57,7 +59,7 @@ public class MVWeatherListener implements InjectableListener {
return;
}
worldManager.getLoadedWorld(event.getWorld())
- .peek((world) -> {
+ .peek(world -> {
if (!world.getAllowWeather()) {
Logging.fine("Cancelling thunder for %s as getAllowWeather is false", world.getName());
event.setCancelled(true);
diff --git a/src/main/java/com/onarandombox/MultiverseCore/listeners/MVWorldListener.java b/src/main/java/com/onarandombox/MultiverseCore/listeners/MVWorldListener.java
index 8e36ca05..55804bd1 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/listeners/MVWorldListener.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/listeners/MVWorldListener.java
@@ -29,7 +29,7 @@ public class MVWorldListener implements InjectableListener {
private final WorldManager worldManager;
@Inject
- public MVWorldListener(WorldManager worldManager) {
+ MVWorldListener(WorldManager worldManager) {
this.worldManager = worldManager;
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/utils/webpaste/GitHubPasteService.java b/src/main/java/com/onarandombox/MultiverseCore/utils/webpaste/GitHubPasteService.java
index e9680183..d17062bd 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/utils/webpaste/GitHubPasteService.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/utils/webpaste/GitHubPasteService.java
@@ -20,6 +20,7 @@ class GitHubPasteService extends PasteService {
GitHubPasteService(boolean isPrivate) {
super(GITHUB_POST_REQUEST, ACCESS_TOKEN);
this.isPrivate = isPrivate;
+ //noinspection ConstantValue - this is a placeholder that should be replaced with a real access token
if (ACCESS_TOKEN.endsWith("access-token")) {
throw new UnsupportedOperationException();
}
@@ -60,8 +61,8 @@ class GitHubPasteService extends PasteService {
@Override
public String postData(String data) throws PasteFailedException {
try {
- String stringJSON = this.exec(encodeData(data), ContentType.JSON);
- return (String) ((JSONObject) new JSONParser().parse(stringJSON)).get("html_url");
+ String stringJson = this.exec(encodeData(data), ContentType.JSON);
+ return (String) ((JSONObject) new JSONParser(JSONParser.MODE_PERMISSIVE).parse(stringJson)).get("html_url");
} catch (IOException | ParseException e) {
throw new PasteFailedException(e);
}
@@ -74,7 +75,7 @@ class GitHubPasteService extends PasteService {
public String postData(Map data) throws PasteFailedException {
try {
String stringJSON = this.exec(encodeData(data), ContentType.JSON);
- return (String) ((JSONObject) new JSONParser().parse(stringJSON)).get("html_url");
+ return (String) ((JSONObject) new JSONParser(JSONParser.MODE_PERMISSIVE).parse(stringJSON)).get("html_url");
} catch (IOException | ParseException e) {
throw new PasteFailedException(e);
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/world/configuration/AllowedPortalType.java b/src/main/java/com/onarandombox/MultiverseCore/world/configuration/AllowedPortalType.java
index 8a3ba778..26dceeb9 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/world/configuration/AllowedPortalType.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/world/configuration/AllowedPortalType.java
@@ -38,12 +38,19 @@ public enum AllowedPortalType {
/**
* Gets the text.
+ *
* @return The text.
*/
public PortalType getActualPortalType() {
return this.type;
}
+ /**
+ * Checks if the given portal type is allowed.
+ *
+ * @param portalType The portal type.
+ * @return True if allowed, else false.
+ */
public boolean isPortalAllowed(PortalType portalType) {
return this != NONE && (getActualPortalType() == portalType || this == ALL);
}
diff --git a/src/main/java/com/onarandombox/MultiverseCore/worldnew/MultiverseWorld.java b/src/main/java/com/onarandombox/MultiverseCore/worldnew/MultiverseWorld.java
index 4a7df261..49b817fc 100644
--- a/src/main/java/com/onarandombox/MultiverseCore/worldnew/MultiverseWorld.java
+++ b/src/main/java/com/onarandombox/MultiverseCore/worldnew/MultiverseWorld.java
@@ -19,8 +19,14 @@ import java.util.List;
* Represents a world handled by Multiverse which has all the custom properties provided by Multiverse.
*/
public class MultiverseWorld {
-
+ /**
+ * This world's name.
+ */
protected final String worldName;
+
+ /**
+ * This world's configuration.
+ */
protected WorldConfig worldConfig;
MultiverseWorld(String worldName, WorldConfig worldConfig) {
@@ -49,14 +55,33 @@ public class MultiverseWorld {
return worldConfig.hasMVWorld();
}
+ /**
+ * Gets the properties that can be configured on this world. Can be used for {@link #getProperty(String)} and
+ * {@link #setProperty(String, Object)}.
+ *
+ * @return A collection of property names.
+ */
public Collection getConfigurablePropertyNames() {
return worldConfig.getConfigurablePropertyNames();
}
+ /**
+ * Gets a property on this world.
+ *
+ * @param name The name of the property.
+ * @return The value of the property.
+ */
public Try