Advertisement
Guest User

Untitled

a guest
Oct 24th, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.35 KB | None | 0 0
  1. import java.io.IOException;
  2. import java.net.DatagramPacket;
  3. import java.net.InetAddress;
  4. import java.net.MulticastSocket;
  5. import java.sql.Connection;
  6. import java.sql.DriverManager;
  7. import java.util.concurrent.CopyOnWriteArrayList;
  8.  
  9. public class MulticastServer extends Thread {
  10.     private String MULTICAST_ADDRESS = "224.1.224.0";
  11.     public static int PORT = 6666;
  12.     private Connection c;
  13.     private MulticastSocket socket = null;
  14.     public static InetAddress group;
  15.     public static CopyOnWriteArrayList<Integer> messages = new CopyOnWriteArrayList<>();
  16.  
  17.     public MulticastServer() {
  18.         super("Server " + (long) (Math.random() * 1000));
  19.         dbConnect();
  20.         try {
  21.             socket = new MulticastSocket(PORT);
  22.             group = InetAddress.getByName(MULTICAST_ADDRESS);
  23.         }
  24.         catch(IOException e) {
  25.             e.printStackTrace();
  26.         }
  27.     }
  28.  
  29.     private void dbConnect() {
  30.         try {
  31.             Class.forName("org.postgresql.Driver");
  32.             c = DriverManager.getConnection("jdbc:postgresql://localhost:5432/dropmusic", "postgres", "Almofadex123");
  33.         } catch (Exception e) {
  34.             e.printStackTrace();
  35.             System.err.println(e.getClass().getName()+": "+e.getMessage());
  36.             System.exit(0);
  37.         }
  38.         System.out.println("Opened database successfully");
  39.     }
  40.  
  41.     public static void main(String args[]) {
  42.         MulticastServer server = new MulticastServer();
  43.         server.start();
  44.         System.out.println("FIM DO MAIN");
  45.  
  46.     }
  47.     public void run() {
  48.         System.out.println(this.getName() + " running...");
  49.         try {
  50.             socket.joinGroup(group);
  51.             while (true) {
  52.                 byte[] buffer = new byte[256];
  53.                 DatagramPacket packet = new DatagramPacket(buffer, buffer.length);
  54.                 socket.receive(packet);
  55.                 String messageReceived = new String(packet.getData(), 0, packet.getLength());
  56.                 System.out.println("Received packet from " + packet.getAddress().getHostAddress() + ":" + packet.getPort() + " with message:" + messageReceived);
  57.                 ReadMessageThread t = new ReadMessageThread("1", messageReceived, c, socket, packet.getAddress().getHostAddress());
  58.             }
  59.         } catch (IOException e) {
  60.             e.printStackTrace();
  61.         }
  62.     }
  63.  
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement