Skip to content
Snippets Groups Projects
Select Git revision
  • c239b089746c144b1ef1d522a01aeb2a1ef36251
  • master default protected
2 results

DstoreConnection.java

Blame
  • DstoreConnection.java 1.01 KiB
    import java.io.*;
    import java.net.*;
    import java.lang.Runnable;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.util.HashMap;
    import java.util.Collection;
    
    public class DstoreConnection {
    	protected Socket socket;
    	protected BufferedReader reader;
    	protected PrintWriter writer;
    	
    	public DstoreConnection(Socket socket) {
    		this.socket = socket;
    		reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
    		writer = new PrintWriter(socket.getOutputStream());
    	}
    	
    	public String sendAndReceive(String message) {
    		synchronized(this) {
    			try {
    				writer.println(message);
    				writer.flush();
    			}
    			catch(IOException e) {
    				e.printStackTrace();
    				return "";
    			}
    			return localReceive();
    		}
    	}
    	
    	public String receive() {
    		synchronized(this) {
    			return localReceive();
    		}
    	}
    	
    	protected String localReceive() {
    		try {
    			String returnMessage = reader.readLine();
    			return returnMessage;
    		}
    		catch(IOException e) {
    			e.printStackTrace();
    			return "";
    		}
    	}
    }