package network.protocol; import network.protocol.packets.ChatMessagePacket; import network.protocol.packets.CreateRoomPacket; import network.protocol.packets.JoinRoomPacket; import network.protocol.packets.LeaveRoomPacket; import network.protocol.packets.LoginPacket; import network.protocol.packets.RequestRoomListPacket; import network.protocol.packets.RoomListPacket; import network.protocol.packets.SendChatMessagePacket; import network.protocol.packets.ServerResponsePacket; public interface PacketVisitor { default void visit(Packet packet) { packet.accept(this); } void visitPacket(ChatMessagePacket packet); void visitPacket(CreateRoomPacket packet); void visitPacket(JoinRoomPacket packet); void visitPacket(LeaveRoomPacket packet); void visitPacket(LoginPacket packet); void visitPacket(RequestRoomListPacket packet); void visitPacket(RoomListPacket packet); void visitPacket(SendChatMessagePacket packet); void visitPacket(ServerResponsePacket packet); }