Advertisement
Guest User

Untitled

a guest
Jan 16th, 2018
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.23 KB | None | 0 0
  1. import java.io.*;
  2. import java.net.*;
  3.  
  4. class UDPServer
  5. {
  6. private static boolean isPresent(InetAddress client_addr)
  7. {
  8. return false;
  9. }
  10.  
  11. public static void main(String args[]) throws Exception
  12. {
  13. DatagramSocket serverSocket = new DatagramSocket(6788);
  14. int tickets = 0;
  15. byte[] bufferIN = new byte[1024]; // buffer di spedizione e ricezione
  16. byte[] bufferOUT = new byte[1024];
  17. InetAddress[] clients = new InetAddress[25];
  18.  
  19. System.out.println("SERVER avviato...");
  20.  
  21. while(tickets < 24)
  22. {
  23. // definizione del datagramma
  24. DatagramPacket receivePacket = new DatagramPacket(bufferIN,bufferIN.length);
  25. //attesa della ricezione dato dal client
  26. serverSocket.receive(receivePacket);
  27.  
  28. System.out.println("CLIENT");
  29.  
  30. // analisi del pacchetto ricevuto
  31. String ricevuto = new String(receivePacket.getData());
  32. String daSpedire = "";
  33. int numCaratteri = receivePacket.getLength();
  34. ricevuto = ricevuto.substring(0,numCaratteri); // elimina i caratteri in eccesso
  35. System.out.println("RICEVUTO: " + ricevuto);
  36.  
  37. // riconoscimento dei parametri del socket del client
  38. InetAddress IPClient = receivePacket.getAddress();
  39.  
  40. /*
  41. if(!isPresent(IPClient))
  42. {
  43. clients[tickets] = IPClient;
  44. tickets++;
  45. }
  46. */
  47.  
  48. int portaClient = receivePacket.getPort();
  49.  
  50. System.out.println("conn addr: " + receivePacket.getAddress().toString() + ":" + portaClient);
  51.  
  52. // preparo il dato da spedire
  53. daSpedire= ricevuto.toUpperCase();
  54. bufferOUT = daSpedire.getBytes();
  55.  
  56. // invio del Datagramma
  57. DatagramPacket sendPacket = new DatagramPacket(bufferOUT, bufferOUT.length, IPClient, portaClient);
  58. serverSocket.send(sendPacket);
  59.  
  60. // controllo termine esecuzione del server
  61. if (ricevuto.equals("fine"))
  62. System.out.println("SERVER IN CHIUSURA. Buona serata.");
  63. }
  64.  
  65. serverSocket.close();
  66. }
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement