1 public class TTTServerSocket {
2 // TTTServerSocket flags
14 public TTTServerSocket(){
15 System.printString("Constructing TTTServerSocket....\n");
18 public int receive(Socket s)
20 byte b1[] = new byte[1024];
22 request = new String(b1);
23 System.printString("request: ");
24 System.printString(request);
25 if (parseTransaction() == 1) {
26 System.printString(request);
29 System.printString("Error receiving...\n");
34 public int parseTransaction(){
35 int start = request.indexOf('_');
36 //System.printString("start parse");
37 String s = request.subString(start+1);
38 //System.printString("before checking the string");
40 if (s.startsWith("move")==true){
42 int i1 = s.indexOf(':');
43 String rowStr = new String(s.subString(i1+1, i1+2));
44 row = Integer.parseInt(rowStr);
46 //System.printString("row");
49 String s2 = new String(s.subString(i1+2));
50 int i2 = s2.indexOf(':');
51 String colStr = new String(s2.subString(i2+1, i2+2));
52 col = Integer.parseInt(colStr);
69 public void sendBoardDisplay(Board theBoard, Socket s) {
70 StringBuffer line1 = new StringBuffer("\n\n");
72 for (int i = 0; i < 3; i++) {
73 for (int j = 0; j < 3; j++) {
74 if (theBoard.board[i][j] == 1)
76 else if (theBoard.board[i][j] == 2)
83 String towrite = new String(line1);
84 s.write(towrite.getBytes());
88 public void sendDone(int winner, Socket s) {
89 StringBuffer line1 = new StringBuffer ("done_");
93 line1.append("player");
95 line1.append("computer");
97 String towrite = new String(line1);
98 s.write(towrite.getBytes());
102 public void sendError(Socket s) {
103 StringBuffer line1 = new StringBuffer ("error_wrongmove");
105 String towrite = new String(line1);
106 s.write(towrite.getBytes());