package tictactoeclient; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.InputStream; import java.util.Scanner; /** * * @author roland */ public class JogoDaVelhaWSCliente { /** * @param args the command line arguments * @throws java.io.FileNotFoundException */ public static void main(String[] args) throws FileNotFoundException { // Apenas para execução dentro do NetBeans FileInputStream is = new FileInputStream(new File("testfiles\\teste-003.in")); System.setIn(is); Scanner leitura = new Scanner(System.in); int numOp = leitura.nextInt(); for (int i = 0; i < numOp; ++i) { int op = leitura.nextInt(); String parametros = leitura.next(); String param[] = parametros.split(":", -1); for(int paramI = 0 ; paramI < param.length; paramI++){ // System.out.println(paramI + " " + param[paramI]); } switch (op) { case 0: // preRegistro if (param.length != 2) { erro(op + 1); } else { System.out.println(preRegistro(param[0], Integer.parseInt(param[1]))); } break; case 1: // registraJogador if (param.length != 1) { erro(op + 1); } else { System.out.println(registraJogador(param[0])); } break; case 2: // temPartida if (param.length != 1) { erro(op + 1); } else { System.out.println(temPartida(Integer.parseInt(param[0]))); } break; case 3: // ehMinhaVez if (param.length != 1) { erro(op + 1); } else { System.out.println(ehMinhaVez(Integer.parseInt(param[0]))); } break; case 4: // obtemGrade if (param.length != 1) { erro(op + 1); } else { System.out.println(obtemGrade(Integer.parseInt(param[0]))); } break; case 5: // enviaJogada if (param.length != 2) { erro(op + 1); } else { System.out.println(enviaJogada(Integer.parseInt(param[0]), Integer.parseInt(param[1]))); } break; case 6: // obtemOponente if (param.length != 1) { erro(op + 1); } else { System.out.println(obtemOponente(Integer.parseInt(param[0]))); } break; default: erro(op + 1); } } } private static void erro(int operacao) { System.err.println("Entrada invalida: erro na operacao " + operacao + "."); System.exit(1); } private static String preRegistro(java.lang.String name, java.lang.Integer id) { tictactoeclient.TicTacToeWS_Service service = new tictactoeclient.TicTacToeWS_Service(); tictactoeclient.TicTacToeWS port = service.getTicTacToeWSPort(); port.preRegistro(name, id); return "0"; } private static Integer registraJogador(java.lang.String name) { tictactoeclient.TicTacToeWS_Service service = new tictactoeclient.TicTacToeWS_Service(); tictactoeclient.TicTacToeWS port = service.getTicTacToeWSPort(); return port.registraJogador(name); } private static Integer temPartida(int parseInt) { tictactoeclient.TicTacToeWS_Service service = new tictactoeclient.TicTacToeWS_Service(); tictactoeclient.TicTacToeWS port = service.getTicTacToeWSPort(); return port.temPartida(parseInt); } private static Integer ehMinhaVez(int id) { tictactoeclient.TicTacToeWS_Service service = new tictactoeclient.TicTacToeWS_Service(); tictactoeclient.TicTacToeWS port = service.getTicTacToeWSPort(); return port.ehMinhaVez(id); } private static String obtemGrade(int id) { tictactoeclient.TicTacToeWS_Service service = new tictactoeclient.TicTacToeWS_Service(); tictactoeclient.TicTacToeWS port = service.getTicTacToeWSPort(); return port.obtemGrade(id); } private static Integer enviaJogada(int id, int jogada) { tictactoeclient.TicTacToeWS_Service service = new tictactoeclient.TicTacToeWS_Service(); tictactoeclient.TicTacToeWS port = service.getTicTacToeWSPort(); return port.enviaJogada(id, jogada); } private static String obtemOponente(int parseInt) { tictactoeclient.TicTacToeWS_Service service = new tictactoeclient.TicTacToeWS_Service(); tictactoeclient.TicTacToeWS port = service.getTicTacToeWSPort(); return port.obtemOponente(parseInt); } }