package webCAPPCombd_teste;

import infoUsinagem.*;
import webCAPPCombd.*;

//Exemplo de determinação de condições de usinagem.
public class TesteDeterminacaoDeTecDeUsinagem{

  public static void main(String a[]){

    //obtém o obj. determinador de ferramenta passando a url onde o servlet está.
    DeterminadorDeFerramenta det = new DeterminadorDeFerramenta("http://fmc1.graco.unb.br");
    //determina as ferramesntas disponíveis para uma certa usinagem.
    Ferramenta[] ferramentas =
        det.determinaFerramentaDesbaste(30,
                                        DeterminadorDeFerramenta.NAO_SE_APLICA,
                                        DeterminadorDeFerramenta.NAO_SE_APLICA);

    //Imprime os dados das ferramentas.
    System.out.println("");
    for(int i=0; i < ferramentas.length; i++){

      if(ferramentas[i] == null) continue;
      System.out.println(ferramentas[i]);
    }

    //Saber se a primeira ferramenta é uma ferramenta utilizada
    if(ferramentas[0] instanceof FerramentaUtilizada){

      FerramentaUtilizada ferramenta = (FerramentaUtilizada)ferramentas[0];
      System.out.println("A primeira ferramenta está montada no magazine: " + ferramenta.getNumMagazine());
    }

    //obtém o obj. determinador de tec. de usinagem passando a url onde o servlet está.
    DeterminadorDeTecUsinagem detTec =
        new DeterminadorDeTecUsinagem("http://fmc1.graco.unb.br");

    long t = System.currentTimeMillis();//marcando tempo decorrido...
    //Calcula as condições de usinagem para desbaste utilizando a ferramenta que está no torno.
    TecnologiaDeUsinagem[] arrayTec = detTec.calculaCondicaoDeUsinagem_TorneamentoDesbaste(
      detTec.TG_DESBASTE_PESADO, "1025", ferramentas[0], 50, 60, 60, 5000, 30, 10);

    System.out.println("Tempo de operação: " + (System.currentTimeMillis() - t) + " ms");
    System.out.println("Condições de usinagem possíveis para a ferramenta:\n" + ferramentas[0]);
    for(int i=0; i < arrayTec.length; i++){

      System.out.println(arrayTec[i]);
    }
  }
}
