Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.net.*;
- import java.util.HashSet;
- import java.io.*;
- public class UDPServer
- {
- private static HashSet<Integer> allPorts = new HashSet<Integer>();
- private GUIForServer gfs;
- public UDPServer(GUIForServer gfs)
- {
- this.gfs = gfs;
- }
- public static void main(String args[]) throws Exception
- {
- int sport = 29841;
- if (args.length < 1)
- {
- System.out.println("UDPServer is now on port: " + sport);
- }
- else
- {
- sport = Integer.valueOf(args[0]).intValue();
- System.out.println("UDPServer is now on port: " + sport);
- }
- DatagramSocket ds = null;
- ds = new DatagramSocket(sport);
- System.out.println("The server has started! \n");
- while(true)
- {
- byte[] receivedData = new byte[1024];
- DatagramPacket dp = new DatagramPacket(receivedData, receivedData.length);
- ds.receive(dp);
- String messageFromClient = (new String(dp.getData())).trim();
- System.out.println("A client has connected, the IP address and port number of the client is: " + dp.getSocketAddress());
- System.out.println("The message sent from the client was: \"" + messageFromClient + "\"");
- InetAddress ip = dp.getAddress();
- System.out.println("Client IP Address: " + ip + "\n");
- int cport = dp.getPort();
- System.out.println("Adding port number: " + cport);
- allPorts.add(cport);
- String message = messageFromClient;
- System.out.println("The message sent from the server was: " + message);
- byte[] sentData = new byte[1024];
- sentData = message.getBytes();
- for(Integer port : allPorts)
- {
- if(port != cport)
- {
- DatagramPacket dp1 = new DatagramPacket(sentData, sentData.length, ip, port);
- System.out.println("The message is sending...");
- ds.send(dp1);
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement