private void opcaoExibirPerfilCandidatoPorNumero() throws IOException {
   System.out.println("Número Candidato: ");
   BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
   String numero = reader.readLine();
   List<AgenteEleitoral> candidatos =
       Facade.getInstanceFacade().consultarCandidatosPorNumero(numero);
   int count = 0;
   for (AgenteEleitoral c : candidatos) {
     Candidato ca = (Candidato) c.getPessoa();
     System.out.println(
         count++ + " " + c.getPessoa().getNome() + " - " + ca.getSequencialCandidato());
   }
   if (count > 0) {
     System.out.println("Escolha um candidato para visualizar o perfil: ");
     numero = reader.readLine();
     try {
       int op = Integer.valueOf(numero);
       if (op >= 0 && op < count) {
         PerfilCandidato perfil = new PerfilCandidato(candidatos.get(op));
         System.out.println(perfil.gerarInformacaoAdicional());
       } else {
         System.out.println("Opção inválida!!");
       }
     } catch (Exception e) {
       System.out.println("Opção inválida!!");
     }
   }
 }
  private void opcaoExibirGrafico4() {
    String json = Facade.getInstanceFacade().visualizarGraficoCandidatos();
    System.out.println(json);
    Gson gson = new Gson();
    GraficoFinal graficoParse = gson.fromJson(json, GraficoFinal.class);
    System.out.println(graficoParse.getClass());

    System.out.println(graficoParse.getNome());
    GraficoBarra view1 = new GraficoBarra(graficoParse);
    view1.pack();
    RefineryUtilities.centerFrameOnScreen(view1);
    view1.setVisible(true);
  }
  private void opcaoExibirGrafico2() {
    String json = Facade.getInstanceFacade().visualizarGraficoDoadoresPF();

    Gson gson = new Gson();
    GraficoFinal graficoParse = gson.fromJson(json, GraficoFinal.class);
    System.out.println(graficoParse.getClass());

    System.out.println(graficoParse.getNome());
    GraficoPizza view2 = new GraficoPizza(graficoParse);
    view2.pack();
    RefineryUtilities.centerFrameOnScreen(view2);
    view2.setVisible(true);
  }
 private void opcaoRealizarParser() {
   final ProgressBarTraditional progressBar = new ProgressBarTraditional();
   //		ProgressBarRotating progress = new ProgressBarRotating();
   progressBar.start();
   Facade.getInstanceFacade()
       .realizarParser(
           new OnProgressListener() {
             @Override
             public void onProgressChange(
                 String job, String message, float progress, float taskProgress) {
               //				System.out.println(job+" "+message+" "+Util.round(progress, 4)+"%");
               progressBar.update(progress, taskProgress, job + " " + message);
             }
           });
   progressBar.finish();
 }
 private void opcaoResetarParser() {
   Facade.getInstanceFacade().resetarParser();
 }
 private void opcaoConsultaCandidatos() {
   List<AgenteEleitoral> candidatos = Facade.getInstanceFacade().consultarCandidatos();
   for (AgenteEleitoral c : candidatos) {
     System.out.println(c.getPessoa().getNome());
   }
 }