format ClientConnection.java

This commit is contained in:
LOOHP 2022-02-10 01:57:52 +00:00
parent 4353859951
commit ea7d33a0e3
1 changed files with 475 additions and 475 deletions

View File

@ -1,29 +1,5 @@
package com.loohp.limbo.network;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.InetAddress;
import java.net.Socket;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Optional;
import java.util.Random;
import java.util.Set;
import java.util.Timer;
import java.util.TimerTask;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicLong;
import java.util.stream.Collectors;
import com.loohp.limbo.network.protocol.packets.PacketIn;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import com.loohp.limbo.Limbo;
import com.loohp.limbo.events.player.PlayerJoinEvent;
import com.loohp.limbo.events.player.PlayerLoginEvent;
@ -34,8 +10,8 @@ import com.loohp.limbo.events.player.PlayerSelectedSlotChangeEvent;
import com.loohp.limbo.events.status.StatusPingEvent;
import com.loohp.limbo.file.ServerProperties;
import com.loohp.limbo.location.Location;
import com.loohp.limbo.network.protocol.packets.Packet;
import com.loohp.limbo.network.protocol.packets.PacketHandshakingIn;
import com.loohp.limbo.network.protocol.packets.PacketIn;
import com.loohp.limbo.network.protocol.packets.PacketLoginInLoginStart;
import com.loohp.limbo.network.protocol.packets.PacketLoginInPluginMessaging;
import com.loohp.limbo.network.protocol.packets.PacketLoginOutDisconnect;
@ -86,27 +62,39 @@ import com.loohp.limbo.utils.MojangAPIUtils;
import com.loohp.limbo.utils.MojangAPIUtils.SkinResponse;
import com.loohp.limbo.world.BlockPosition;
import com.loohp.limbo.world.World;
import net.kyori.adventure.text.Component;
import net.md_5.bungee.api.ChatColor;
import net.md_5.bungee.api.chat.BaseComponent;
import net.md_5.bungee.api.chat.TextComponent;
import net.md_5.bungee.api.chat.TranslatableComponent;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.InetAddress;
import java.net.Socket;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Optional;
import java.util.Random;
import java.util.Set;
import java.util.Timer;
import java.util.TimerTask;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicLong;
import java.util.stream.Collectors;
public class ClientConnection extends Thread {
public static enum ClientState {
LEGACY,
HANDSHAKE,
STATUS,
LOGIN,
PLAY,
DISCONNECTED;
}
private final Random random = new Random();
private final Socket client_socket;
protected Channel channel;
private boolean running;
private ClientState state;
@ -114,11 +102,7 @@ public class ClientConnection extends Thread {
private TimerTask keepAliveTask;
private AtomicLong lastPacketTimestamp;
private AtomicLong lastKeepAlivePayLoad;
protected Channel channel;
private InetAddress inetAddress;
private boolean ready;
public ClientConnection(Socket client_socket) {
@ -193,10 +177,12 @@ public class ClientConnection extends Thread {
try {
PacketPlayOutDisconnect packet = new PacketPlayOutDisconnect(reason);
sendPacket(packet);
} catch (IOException ignored) {}
} catch (IOException ignored) {
}
try {
client_socket.close();
} catch (IOException ignored) {}
} catch (IOException ignored) {
}
}
private void disconnectDuringLogin(BaseComponent[] reason) {
@ -207,10 +193,12 @@ public class ClientConnection extends Thread {
try {
PacketLoginOutDisconnect packet = new PacketLoginOutDisconnect(reason);
sendPacket(packet);
} catch (IOException ignored) {}
} catch (IOException ignored) {
}
try {
client_socket.close();
} catch (IOException ignored) {}
} catch (IOException ignored) {
}
}
@SuppressWarnings("deprecation")
@ -467,7 +455,8 @@ public class ClientConnection extends Thread {
try {
sendPacket(keepAlivePacket);
setLastKeepAlivePayLoad(now);
} catch (Exception e) {}
} catch (Exception e) {
}
}
} else {
this.cancel();
@ -581,12 +570,14 @@ public class ClientConnection extends Thread {
}
} catch (Exception ignored) {}
} catch (Exception ignored) {
}
try {
channel.close();
client_socket.close();
} catch (Exception ignored) {}
} catch (Exception ignored) {
}
state = ClientState.DISCONNECTED;
if (player != null) {
@ -596,4 +587,13 @@ public class ClientConnection extends Thread {
running = false;
}
public static enum ClientState {
LEGACY,
HANDSHAKE,
STATUS,
LOGIN,
PLAY,
DISCONNECTED;
}
}