Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.BufferedReader;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.io.PrintWriter;
- import java.net.InetSocketAddress;
- import java.util.*;
- public class Test {
- static BufferedReader reader;
- static PrintWriter writer;
- static MulticastQueueFifoOnly<String> peer;
- static List<Object> messages = new ArrayList<Object>();
- public static void main(String[] args) {
- reader = new BufferedReader(new InputStreamReader(System.in));
- try {
- peer = new MulticastQueueFifoOnly<String>();
- peer.printLog();
- if (args.length == 0) {
- peer.createGroup(44440, MulticastQueue.DeliveryGuarantee.FIFO);
- } else if (args.length == 1) {
- int localPort = (int) (Math.random()*1000+40000);
- System.out.println("Running at "+localPort);
- peer.joinGroup(localPort,
- new InetSocketAddress(args[0], 44440),
- MulticastQueue.DeliveryGuarantee.FIFO);
- Thread t = new Thread(new Runnable() {
- public void run() {
- MulticastMessage msg;
- int i = 0;
- while (true) {
- while ((msg = peer.get()) != null)
- {
- if (msg instanceof MulticastMessageJoin)
- {
- System.out.println("got a join");
- //for (Object o : messages)
- // peer.put(o.toString());
- }
- /*System.out.println("\t"+ ++i +" "+ msg);
- messages.add(msg);
- if (msg instanceof MulticastMessagePayload) {
- ((MulticastMessagePayload<String>) msg).getPayload();
- }*/
- }
- }
- }
- });
- t.start();
- }
- while (true) {
- String s = reader.readLine();
- if (s.equals("exit")) {
- peer.leaveGroup();
- System.exit(0);
- }
- peer.put(s);
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
Add Comment
Please, Sign In to add comment