diff --git a/fabric/src/main/java/dev/architectury/networking/fabric/NetworkManagerImpl.java b/fabric/src/main/java/dev/architectury/networking/fabric/NetworkManagerImpl.java index b0684e34..c7a4483b 100644 --- a/fabric/src/main/java/dev/architectury/networking/fabric/NetworkManagerImpl.java +++ b/fabric/src/main/java/dev/architectury/networking/fabric/NetworkManagerImpl.java @@ -19,6 +19,7 @@ package dev.architectury.networking.fabric; +import com.mojang.logging.LogUtils; import dev.architectury.networking.NetworkManager; import dev.architectury.networking.NetworkManager.NetworkReceiver; import dev.architectury.networking.transformers.PacketSink; @@ -38,10 +39,12 @@ import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.thread.BlockableEventLoop; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.player.Player; +import org.slf4j.Logger; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Objects; public class NetworkManagerImpl { private static final Map C2S_RECEIVER = new HashMap<>(); @@ -49,7 +52,12 @@ public class NetworkManagerImpl { private static final Map C2S_TRANSFORMERS = new HashMap<>(); private static final Map S2C_TRANSFORMERS = new HashMap<>(); + private static final Logger LOGGER = LogUtils.getLogger(); + public static void registerReceiver(NetworkManager.Side side, ResourceLocation id, List packetTransformers, NetworkReceiver receiver) { + Objects.requireNonNull(id, "Cannot register receiver with a null ID!"); + packetTransformers = Objects.requireNonNullElse(packetTransformers, List.of()); + Objects.requireNonNull(receiver, "Cannot register a null receiver!"); if (side == NetworkManager.Side.C2S) { registerC2SReceiver(id, packetTransformers, receiver); } else if (side == NetworkManager.Side.S2C) { @@ -58,6 +66,7 @@ public class NetworkManagerImpl { } private static void registerC2SReceiver(ResourceLocation id, List packetTransformers, NetworkReceiver receiver) { + LOGGER.info("Registering C2S receiver with id {}", id); C2S_RECEIVER.put(id, receiver); PacketTransformer transformer = PacketTransformer.concat(packetTransformers); ServerPlayNetworking.registerGlobalReceiver(id, (server, player, handler, buf, sender) -> { @@ -76,6 +85,7 @@ public class NetworkManagerImpl { @SuppressWarnings("Convert2Lambda") @Environment(EnvType.CLIENT) private static void registerS2CReceiver(ResourceLocation id, List packetTransformers, NetworkReceiver receiver) { + LOGGER.info("Registering S2C receiver with id {}", id); S2C_RECEIVER.put(id, receiver); PacketTransformer transformer = PacketTransformer.concat(packetTransformers); ClientPlayNetworking.registerGlobalReceiver(id, new ClientPlayNetworking.PlayChannelHandler() { diff --git a/forge/src/main/java/dev/architectury/networking/forge/NetworkManagerImpl.java b/forge/src/main/java/dev/architectury/networking/forge/NetworkManagerImpl.java index a431f038..51db81fc 100644 --- a/forge/src/main/java/dev/architectury/networking/forge/NetworkManagerImpl.java +++ b/forge/src/main/java/dev/architectury/networking/forge/NetworkManagerImpl.java @@ -21,6 +21,7 @@ package dev.architectury.networking.forge; import com.google.common.collect.*; +import com.mojang.logging.LogUtils; import dev.architectury.forge.ArchitecturyForge; import dev.architectury.networking.NetworkManager; import dev.architectury.networking.NetworkManager.NetworkReceiver; @@ -47,18 +48,17 @@ import net.minecraftforge.network.NetworkHooks; import net.minecraftforge.network.NetworkRegistry; import net.minecraftforge.network.event.EventNetworkChannel; import org.apache.commons.lang3.tuple.Pair; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; +import org.slf4j.Logger; -import java.util.Collections; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; import java.util.function.Consumer; @Mod.EventBusSubscriber(modid = ArchitecturyForge.MOD_ID) public class NetworkManagerImpl { public static void registerReceiver(NetworkManager.Side side, ResourceLocation id, List packetTransformers, NetworkReceiver receiver) { + Objects.requireNonNull(id, "Cannot register receiver with a null ID!"); + packetTransformers = Objects.requireNonNullElse(packetTransformers, List.of()); + Objects.requireNonNull(receiver, "Cannot register a null receiver!"); if (side == NetworkManager.Side.C2S) { registerC2SReceiver(id, packetTransformers, receiver); } else if (side == NetworkManager.Side.S2C) { @@ -84,7 +84,7 @@ public class NetworkManagerImpl { } } - private static final Logger LOGGER = LogManager.getLogger(); + private static final Logger LOGGER = LogUtils.getLogger(); private static final ResourceLocation CHANNEL_ID = new ResourceLocation("architectury:network"); static final ResourceLocation SYNC_IDS = new ResourceLocation("architectury:sync_ids"); static final EventNetworkChannel CHANNEL = NetworkRegistry.newEventChannel(CHANNEL_ID, () -> "1", version -> true, version -> true); @@ -159,12 +159,14 @@ public class NetworkManagerImpl { @OnlyIn(Dist.CLIENT) public static void registerS2CReceiver(ResourceLocation id, List packetTransformers, NetworkReceiver receiver) { + LOGGER.info("Registering S2C receiver with id {}", id); S2C.put(id, receiver); PacketTransformer transformer = PacketTransformer.concat(packetTransformers); S2C_TRANSFORMERS.put(id, transformer); } public static void registerC2SReceiver(ResourceLocation id, List packetTransformers, NetworkReceiver receiver) { + LOGGER.info("Registering C2S receiver with id {}", id); C2S.put(id, receiver); PacketTransformer transformer = PacketTransformer.concat(packetTransformers); C2S_TRANSFORMERS.put(id, transformer);