Newer
Older
democall3 / src / network / RequestSender.java
Mark on 18 Aug 2011 1 KB Whole bunch of stuff:
package network;

import constants.Constants;
import java.io.ObjectInputStream;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.Socket;
import java.util.Collections;
import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author Mark
 */
public class RequestSender {

   private final String destinationIp;

   public RequestSender(String destinationIp) {
      this.destinationIp = destinationIp;
   }

   public void sendRequest(String request) {
      try {
         Socket socket = new Socket(destinationIp, Constants.PORT);
         PrintWriter writer = new PrintWriter(new OutputStreamWriter(socket.getOutputStream()));
         writer.println(request);
         writer.flush();
         writer.close();
         socket.close();
      } catch (Exception ex) {
         Logger.getLogger(RequestSender.class.getName()).log(Level.SEVERE, null, ex);
      }
   }

   @SuppressWarnings({"rawtypes", "unchecked"})
   public Set<Integer> requestQueue() {
      try {
         Socket socket = new Socket(destinationIp, Constants.PORT);
         PrintWriter writer = new PrintWriter(new OutputStreamWriter(socket.getOutputStream()));
         writer.println(new MessageGenerator().requestQueue());
         writer.flush();
         ObjectInputStream ois = new ObjectInputStream(socket.getInputStream());
         Set<Integer> response = (Set<Integer>) ois.readObject();
         writer.close();
         ois.close();
         socket.close();
         return response;
      } catch (Exception ex) {
         Logger.getLogger(RequestSender.class.getName()).log(Level.SEVERE, null, ex);
      }
      return Collections.EMPTY_SET;
   }

}