From d7b9c2efc67246e4a26d4c1a1cc4d01495af20ab Mon Sep 17 00:00:00 2001 From: Bixilon Date: Tue, 25 Aug 2020 18:16:32 +0200 Subject: [PATCH] move final HashSets, ArrayList, HashMap, ... initialisation from constructor to class --- .../minosoft/game/datatypes/entities/Entity.java | 10 ++++------ .../game/datatypes/scoreboard/ScoreboardManager.java | 8 ++------ .../datatypes/scoreboard/ScoreboardObjective.java | 3 +-- .../bixilon/minosoft/game/datatypes/world/World.java | 9 +++------ .../minosoft/protocol/network/Connection.java | 12 ++++-------- .../bixilon/minosoft/protocol/network/Network.java | 7 +++---- 6 files changed, 17 insertions(+), 32 deletions(-) diff --git a/src/main/java/de/bixilon/minosoft/game/datatypes/entities/Entity.java b/src/main/java/de/bixilon/minosoft/game/datatypes/entities/Entity.java index c3eaec95d..63f7f6203 100644 --- a/src/main/java/de/bixilon/minosoft/game/datatypes/entities/Entity.java +++ b/src/main/java/de/bixilon/minosoft/game/datatypes/entities/Entity.java @@ -19,15 +19,15 @@ import de.bixilon.minosoft.game.datatypes.inventory.Slot; import de.bixilon.minosoft.game.datatypes.objectLoader.effects.MobEffect; import de.bixilon.minosoft.game.datatypes.objectLoader.entities.Entities; -import java.util.ArrayList; import java.util.HashMap; +import java.util.HashSet; import java.util.UUID; public abstract class Entity implements EntityInterface { final int entityId; final UUID uuid; - final HashMap equipment; - final ArrayList effectList; + final HashMap equipment = new HashMap<>(); + final HashSet effectList = new HashSet<>(); Location location; int yaw; int pitch; @@ -53,8 +53,6 @@ public abstract class Entity implements EntityInterface { this.location = location; this.yaw = yaw; this.pitch = pitch; - this.equipment = new HashMap<>(); - this.effectList = new ArrayList<>(); } public int getEntityId() { @@ -114,7 +112,7 @@ public abstract class Entity implements EntityInterface { return EntityMetaData.class; } - public ArrayList getEffectList() { + public HashSet getEffectList() { return effectList; } diff --git a/src/main/java/de/bixilon/minosoft/game/datatypes/scoreboard/ScoreboardManager.java b/src/main/java/de/bixilon/minosoft/game/datatypes/scoreboard/ScoreboardManager.java index 1048ea7d7..388d20c28 100644 --- a/src/main/java/de/bixilon/minosoft/game/datatypes/scoreboard/ScoreboardManager.java +++ b/src/main/java/de/bixilon/minosoft/game/datatypes/scoreboard/ScoreboardManager.java @@ -16,13 +16,9 @@ package de.bixilon.minosoft.game.datatypes.scoreboard; import java.util.HashMap; public class ScoreboardManager { - final HashMap teams; - final HashMap objectives; + final HashMap teams = new HashMap<>(); + final HashMap objectives = new HashMap<>(); - public ScoreboardManager() { - teams = new HashMap<>(); - objectives = new HashMap<>(); - } public void addTeam(Team team) { teams.put(team.getName(), team); diff --git a/src/main/java/de/bixilon/minosoft/game/datatypes/scoreboard/ScoreboardObjective.java b/src/main/java/de/bixilon/minosoft/game/datatypes/scoreboard/ScoreboardObjective.java index 15fdabec0..71492201c 100644 --- a/src/main/java/de/bixilon/minosoft/game/datatypes/scoreboard/ScoreboardObjective.java +++ b/src/main/java/de/bixilon/minosoft/game/datatypes/scoreboard/ScoreboardObjective.java @@ -19,13 +19,12 @@ import java.util.HashMap; public class ScoreboardObjective { final String objectiveName; - final HashMap scores; + final HashMap scores = new HashMap<>(); TextComponent objectiveValue; public ScoreboardObjective(String objectiveName, TextComponent objectiveValue) { this.objectiveName = objectiveName; this.objectiveValue = objectiveValue; - this.scores = new HashMap<>(); } public String getObjectiveName() { diff --git a/src/main/java/de/bixilon/minosoft/game/datatypes/world/World.java b/src/main/java/de/bixilon/minosoft/game/datatypes/world/World.java index 247288fbf..422e5a11a 100644 --- a/src/main/java/de/bixilon/minosoft/game/datatypes/world/World.java +++ b/src/main/java/de/bixilon/minosoft/game/datatypes/world/World.java @@ -26,19 +26,16 @@ import java.util.Map; * Collection of ChunkColumns */ public class World { - final HashMap chunks; - final HashMap entities; + final HashMap chunks = new HashMap<>(); + final HashMap entities = new HashMap<>(); final String name; - final HashMap blockEntityMeta; + final HashMap blockEntityMeta = new HashMap<>(); boolean hardcore; boolean raining; Dimension dimension; // used for sky color, etc public World(String name) { this.name = name; - chunks = new HashMap<>(); - entities = new HashMap<>(); - blockEntityMeta = new HashMap<>(); } public String getName() { diff --git a/src/main/java/de/bixilon/minosoft/protocol/network/Connection.java b/src/main/java/de/bixilon/minosoft/protocol/network/Connection.java index ffe3f2987..216978c30 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/network/Connection.java +++ b/src/main/java/de/bixilon/minosoft/protocol/network/Connection.java @@ -40,10 +40,10 @@ import java.util.ArrayList; public class Connection { final ArrayList addresses; - final Network network; - final PacketHandler handler; - final PacketSender sender; - final ArrayList handlingQueue; + final Network network = new Network(this); + final PacketHandler handler = new PacketHandler(this); + final PacketSender sender = new PacketSender(this); + final ArrayList handlingQueue = new ArrayList<>(); final VelocityHandler velocityHandler = new VelocityHandler(this); final int connectionId; ServerAddress address; @@ -66,10 +66,6 @@ public class Connection { e.printStackTrace(); throw new RuntimeException(e); } - network = new Network(this); - handlingQueue = new ArrayList<>(); - handler = new PacketHandler(this); - sender = new PacketSender(this); } /** diff --git a/src/main/java/de/bixilon/minosoft/protocol/network/Network.java b/src/main/java/de/bixilon/minosoft/protocol/network/Network.java index 2040c04c6..9f4386539 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/network/Network.java +++ b/src/main/java/de/bixilon/minosoft/protocol/network/Network.java @@ -38,7 +38,7 @@ import java.util.ArrayList; public class Network { final Connection connection; - final ArrayList queue; + final ArrayList queue = new ArrayList<>(); Thread socketThread; int compressionThreshold = -1; Socket socket; @@ -49,9 +49,8 @@ public class Network { SecretKey secretKey; boolean connected; - public Network(Connection c) { - this.connection = c; - this.queue = new ArrayList<>(); + public Network(Connection connection) { + this.connection = connection; } public void connect(ServerAddress address) {