You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
972 B

  1. package xyz.nextn;
  2. import java.io.BufferedReader;
  3. import java.io.IOException;
  4. import java.io.PrintWriter;
  5. import java.net.ServerSocket;
  6. import java.net.Socket;
  7. public class Server {
  8. private ServerSocket serverSocket;
  9. public void start(int port){
  10. try {
  11. serverSocket = new ServerSocket(port);
  12. } catch (IOException e) {
  13. e.printStackTrace();
  14. }
  15. while (true) {
  16. try {
  17. new EchoClientHandler(serverSocket.accept()).start();
  18. } catch (IOException e) {
  19. e.printStackTrace();
  20. }
  21. }
  22. }
  23. public void stop() throws IOException {
  24. serverSocket.close();
  25. }
  26. private static class EchoClientHandler extends Thread {
  27. private Socket clientSocket;
  28. private PrintWriter out;
  29. private BufferedReader in;
  30. public EchoClientHandler(Socket socket) {
  31. this.clientSocket = socket;
  32. }
  33. }
  34. }