thufir

service

Jul 10th, 2014
205
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.73 KB | None | 0 0
  1. package net.bounceme.dur.client;
  2.  
  3. import java.io.IOException;
  4. import java.io.ObjectInputStream;
  5. import java.io.ObjectOutputStream;
  6. import java.net.Socket;
  7. import java.util.Properties;
  8. import java.util.concurrent.ArrayBlockingQueue;
  9. import java.util.concurrent.BlockingQueue;
  10. import java.util.concurrent.ConcurrentLinkedQueue;
  11. import java.util.concurrent.Executor;
  12. import java.util.logging.Logger;
  13. import net.bounceme.dur.data.Title;
  14.  
  15. public class ProducerConsumerService implements Executor {
  16.  
  17.     private static final Logger log = Logger.getLogger(ProducerConsumerService.class.getName());
  18.     private final BlockingQueue<Title> queue = new ArrayBlockingQueue<>(1);
  19.     private Producer producer = null;
  20.     private Consumer consumer = null;
  21.  
  22.     public void ProducerConsumerService() {
  23.     }
  24.  
  25.     public void produce() {
  26.     }
  27.  
  28.     public void startService() throws IOException {
  29.         ConcurrentLinkedQueue cq = new ConcurrentLinkedQueue();
  30.         Properties props = PropertiesReader.getProps();
  31.         int portNumber = Integer.parseInt(props.getProperty("port"));
  32.         String host = props.getProperty("server");
  33.         Socket socket = new Socket(host, portNumber);
  34.         ObjectInputStream objectInputStream = new ObjectInputStream(socket.getInputStream());
  35.         ObjectOutputStream objectOutputStream = new ObjectOutputStream(socket.getOutputStream());
  36.         producer = new Producer(queue, objectInputStream);
  37.         consumer = new Consumer(queue, objectOutputStream);
  38.         new Thread((Runnable) producer).start();
  39.         new Thread((Runnable) consumer).start();
  40.         log.info("started...");
  41.     }
  42.  
  43.     @Override
  44.     public void execute(Runnable command) {
  45.         new Thread(command).start();
  46.     }
  47. }
Advertisement
Add Comment
Please, Sign In to add comment