diff --git a/build.xml b/build.xml index 92f7504..8c8f4a5 100644 --- a/build.xml +++ b/build.xml @@ -33,6 +33,22 @@ + + + + + + + + + + + + + + + + diff --git a/src/ch/epfl/lca/sc250/ServentClient.java b/src/ch/epfl/lca/sc250/ServentClient.java index f208b2e..98101e2 100644 --- a/src/ch/epfl/lca/sc250/ServentClient.java +++ b/src/ch/epfl/lca/sc250/ServentClient.java @@ -3,6 +3,9 @@ import ch.epfl.lca.sc250.gui.CnFrameP2P; import ch.epfl.lca.sc250.gui.ITCPSender; +import java.net.*; +import java.io.*; + /** * @author Christophe Trefois */ @@ -13,6 +16,12 @@ */ CnFrameP2P myGui; + private Socket sock; + private int targetport = 13371; + private BufferedReader inReader; + private DataOutputStream outStream; + + /** * Constructor of the Client part of the Servent for * @@ -42,10 +51,30 @@ System.out.println("Message sent to " + ipAddress + " : " + moneyAmount + ", " + letterPosition); // Opening Socket, Sending Request, Fetching answer - // Put the answer in String message = theAnswer; - // Call this method to unblock the GUI - - // myGui.receivedMessage(message); + try { + sock = new Socket(ipAddress, targetport); + + outStream = new DataOutputStream(sock.getOutputStream()); + + inReader = new BufferedReader(new InputStreamReader(sock.getInputStream())); + } catch ( UnknownHostException uhe ) { + System.out.println("Unknown host"); + } catch ( IOException ioe ) { + System.out.println("IO-Error"); + } + + try { + outStream.writeBytes(moneyAmount + ", " + letterPosition + "\n"); + + // Put the answer in String message = theAnswer; + // Call this method to unblock the GUI + String response = inReader.readLine(); + + myGui.receivedMessage(response); + } catch ( IOException ioe ) { + System.out.println("IO-Error"); + } + } } diff --git a/src/ch/epfl/lca/sc250/ServentServer.java b/src/ch/epfl/lca/sc250/ServentServer.java index 44be898..d432e23 100644 --- a/src/ch/epfl/lca/sc250/ServentServer.java +++ b/src/ch/epfl/lca/sc250/ServentServer.java @@ -2,20 +2,51 @@ import javax.swing.JOptionPane; +import java.io.*; +import java.net.*; + /** * @author Christophe Trefois * */ public class ServentServer { - public static void main(String[] args) { + + public static void main(String[] args) throws IOException { // Open a Socket and listen on incoming offer requests. + // + boolean result; + String message; + ServerSocket knockSock; + Socket sock; + int targetport = 13371; + BufferedReader inReader; + DataOutputStream outStream; - // We suppose we got and parsed an offer, we then want the pop-up to display - boolean result = getOfferResult("127.0.0.1", "15", "5"); - if(result) { - System.out.println("Yes"); - } else { - System.out.println("No"); + knockSock = new ServerSocket(targetport); + + while ( true ) { + + sock = knockSock.accept(); + + outStream = new DataOutputStream(sock.getOutputStream()); + inReader = new BufferedReader(new InputStreamReader(sock.getInputStream())); + + message = inReader.readLine(); + + String[] parsed = message.split(", "); + + // We suppose we got and parsed an offer, we then want the pop-up to display + result = getOfferResult(sock.getInetAddress().toString(), parsed[0], parsed[1]); + + if(result) { + System.out.println("Yes"); + outStream.writeBytes("Yes\n"); + } else { + System.out.println("No"); + outStream.writeBytes("No\n"); + } + + sock.close(); } }