/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package senhafortev2; import com.senhaforte.action.Utils; import com.senhaforte.classes.ChallengeRetorno; import com.senhaforte.classes.Grupo; import com.senhaforte.classes.Retorno; import com.senhaforte.classes.Usuario; import com.senhaforte.security.Challenge; import java.util.logging.Level; import java.util.logging.Logger; import static senhafortev2.AuthenticationStressUnit.UserCorrelative; import static senhafortev2.AuthenticationStressUnit.creaUsuario; /** * * @author user */ public class Simulación { public static final String UserCorrelative = "12345679"; public static void main(String[] args){ do { Simulación qts = new Simulación(); synchronized (qts) { qts.fail(); try { Thread.currentThread().join(10000l); } catch (InterruptedException ex) { Logger.getLogger(Simulación.class.getName()).log(Level.SEVERE, null, ex); } } } while (true); } public void fail() { Grupo g = Grupo.BuscaGrupo("NotSelADM", "VdJRYHFK"); final String userSerial = "dcuentas"; Usuario usr = Usuario.buscaUsuario(g, userSerial);//<- encuentra a dcuentas final String UserCorrelative = String.valueOf(Utils.CriaSerial());//<- crea un nuevo usuario creaUsuario(g, UserCorrelative, UserCorrelative+"@spam4.me", UserCorrelative); g = Grupo.BuscaGrupo("NotSelADM", "VdJRYHFK");//<-la lista de usuarios de g no tiene el nuevo usuario creado usr = Usuario.buscaUsuario(g, UserCorrelative);//<- aqui usr es nullo ChallengeRetorno rt = Challenge.GeraChallenge(g, UserCorrelative);//<- aqui la aplicación muere String[] pod = rt.getDesafio(); System.out.println("Serial cartao - " + rt.getSerial_grid()); for (String pod1 : pod) { System.out.println(" -" + pod1); } // Usuario.DesbloquearUsuario(g, usr, 10); char[] validCoords = AuthenticationStressUnit.getValidCoords(Usuario.RetornaGrid(usr.getCartaoGrid()), rt.getDesafio()); String resp = Challenge.RespostaChallenge('Ñ', 'Ñ', 'Ñ', usr); System.out.println(resp); resp = Challenge.RespostaChallenge(validCoords[0], validCoords[1], validCoords[2], usr); System.out.println(resp); } public static void printCartao(String cartao) { //Retorno grid em matriz char[][] grid = Usuario.RetornaGrid(cartao); System.out.println((char) 27 + "[31m A B C D E F G H I J" + (char) 27 + "[0m"); for (int i = 0; i < 5; i++) { System.out.print((char) 27 + "[31m" + (i + 1) + (char) 27 + "[0m"); System.out.print(" "); for (int j = 0; j < 10; j++) { System.out.print(grid[i][j] + " "); } System.out.println(" "); } } public static boolean creaUsuario(Grupo grupo, String dni, String email, String fullName) { Usuario usuario = new Usuario(); usuario.setAdministrator(true); usuario.setCartaoGrid(Utils.CriaGrid()); usuario.setDocumento(dni); usuario.setEmail(email); usuario.setGrupo(grupo); usuario.setNome(fullName); final int criaSerial = Utils.CriaSerial(); usuario.setSerial(criaSerial); usuario.setTlr(10); usuario.setUsuario(dni); Retorno retorno = Usuario.NovoUsuario(usuario, grupo); printCartao(usuario.getCartaoGrid()); if (retorno.getRetorno().equals("Adicionado com sucesso!")) {// Usuario.EnviaGrid(usuario); //If Usuario for adicionado ao banco - debería enviar grilla a Domicilio. return true; } else { System.out.println("Error al conectarse con Servicio de Brasil Mercantil: " + retorno.getRetorno()); } return false; } }