Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.IOException;
- import java.net.DatagramPacket;
- import java.net.InetAddress;
- import java.net.MulticastSocket;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.util.concurrent.CopyOnWriteArrayList;
- public class MulticastServer extends Thread {
- private String MULTICAST_ADDRESS = "224.1.224.0";
- public static int PORT = 6666;
- private Connection c;
- private MulticastSocket socket = null;
- public static InetAddress group;
- public static CopyOnWriteArrayList<Integer> messages = new CopyOnWriteArrayList<>();
- public MulticastServer() {
- super("Server " + (long) (Math.random() * 1000));
- dbConnect();
- try {
- socket = new MulticastSocket(PORT);
- group = InetAddress.getByName(MULTICAST_ADDRESS);
- }
- catch(IOException e) {
- e.printStackTrace();
- }
- }
- private void dbConnect() {
- try {
- Class.forName("org.postgresql.Driver");
- c = DriverManager.getConnection("jdbc:postgresql://localhost:5432/dropmusic", "postgres", "Almofadex123");
- } catch (Exception e) {
- e.printStackTrace();
- System.err.println(e.getClass().getName()+": "+e.getMessage());
- System.exit(0);
- }
- System.out.println("Opened database successfully");
- }
- public static void main(String args[]) {
- MulticastServer server = new MulticastServer();
- server.start();
- System.out.println("FIM DO MAIN");
- }
- public void run() {
- System.out.println(this.getName() + " running...");
- try {
- socket.joinGroup(group);
- while (true) {
- byte[] buffer = new byte[256];
- DatagramPacket packet = new DatagramPacket(buffer, buffer.length);
- socket.receive(packet);
- String messageReceived = new String(packet.getData(), 0, packet.getLength());
- System.out.println("Received packet from " + packet.getAddress().getHostAddress() + ":" + packet.getPort() + " with message:" + messageReceived);
- ReadMessageThread t = new ReadMessageThread("1", messageReceived, c, socket, packet.getAddress().getHostAddress());
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement