Package Comunicacion

Source Code of Comunicacion.Protocolo

package Comunicacion;

import java.util.ArrayList;
import java.util.List;
import java.util.Observable;
import java.util.Observer;

import Modelo.FachadaModelo;

import Comunicacion.RecibirCliente;


public class Protocolo implements Observer
{
  public static final int CREAR_OBJETO = 1;
  public static final int LANZAR = 2;
  public static final int MOVER_OBJETO = 3;
  public static final int VALORES_MAXIMOS = 4;
  public static final int INFORMAR_CREACION_OBJETO_VISTA = 5;
  public static final int INGRESAR_BARRA = 6;
  public static final int RETORNO_CREAR_OBJETO = 7;
  public static final int NO_SE_PUEDE = 8;
  public static final int ACTUALIZAR = 9;
  public static final int INICIAR_ENVIO_SERVIDOR = 10;
 
  private RecibirCliente conexion;
  private List<Objeto> objSockets;
 
  private FachadaModelo fm;
 
  public Protocolo()
  {
    objSockets = new ArrayList<Objeto>();
    this.conexion = new RecibirCliente(this);
  }
 
  public void iniciarServidorEscucha()
  {
    this.conexion.iniciarEscucha();
  }
 
  public void informarCreacionObjVista(double posX, double posY, List<Double> parametros, int idObjeto, int tipoObjeto)
  {
    List<Object> parametrosEnviar = new ArrayList<Object>();
    parametrosEnviar.add(posX);
    parametrosEnviar.add(posY);
    parametrosEnviar.add(parametros);
    parametrosEnviar.add(idObjeto);
    parametrosEnviar.add(tipoObjeto);
    Objeto aEnviar = new Objeto(parametrosEnviar, this.INFORMAR_CREACION_OBJETO_VISTA);
    aEnviar.setRetorna(false);
    this.conexion.enviarFlujoNoRetorno(aEnviar);
   
  }
 
  public void noSePuede()
  {
    Objeto aEnviar = new Objeto(null, this.NO_SE_PUEDE);
    aEnviar.setRetorna(false);
    this.conexion.enviarFlujoNoRetorno(aEnviar);
  }
 
  public void actualizar(double posX,double posY, double idObjeto)
  {
    List<Object> parametrosEnviar = new ArrayList<Object>();
    parametrosEnviar.add(posX);
    parametrosEnviar.add(posY);
    parametrosEnviar.add(idObjeto);
    Objeto aEnviar = new Objeto(parametrosEnviar, this.ACTUALIZAR);
    aEnviar.setRetorna(false);
    this.conexion.enviarFlujoNoRetorno(aEnviar);
   
  }
  public void recibirFlujo(Objeto c) {
    List<Object> retorno = new ArrayList<Object>();
    retorno = c.getParametros();
    if(c.getTipoInvocacion() == this.CREAR_OBJETO)
    {
      this.fm.crearObjeto(Integer.parseInt(retorno.get(0).toString()),Double.parseDouble(retorno.get(1).toString()),Double.parseDouble(retorno.get(2).toString()), (List<Object>)retorno.get(3));     
    }
    else if(c.getTipoInvocacion() == this.VALORES_MAXIMOS)
    {
      System.out.println("Me enviaron los valores del Canvas");
      System.out.println("Valores " + Double.parseDouble(retorno.get(0).toString()) + " " + Double.parseDouble(retorno.get(1).toString()));
      this.fm = new FachadaModelo(this);
      this.fm.valoresMaximosCanvas(Double.parseDouble(retorno.get(0).toString()), Double.parseDouble(retorno.get(1).toString()));     
    }
    else if(c.getTipoInvocacion() == this.LANZAR)
    {
      System.out.println("id: " + retorno.get(0).toString() + " Velocidad: " + retorno.get(1).toString() + " Angulo: " + retorno.get(2).toString());
      this.fm.lanzar(Integer.parseInt(retorno.get(0).toString()), Double.parseDouble(retorno.get(1).toString()),Double.parseDouble(retorno.get(2).toString()));     
    }
    else if(c.getTipoInvocacion() == this.MOVER_OBJETO)
    {
      this.fm.moverObjeto(Integer.parseInt(retorno.get(0).toString()), Double.parseDouble(retorno.get(1).toString()),Double.parseDouble(retorno.get(2).toString()))
    }else if(c.getTipoInvocacion() == this.INFORMAR_CREACION_OBJETO_VISTA)
    {
      this.fm.informarCreacionObjVista(Integer.parseInt(retorno.get(0).toString()));     
    }
    else if(c.getTipoInvocacion()==this.INICIAR_ENVIO_SERVIDOR)
    {
      this.conexion.abrirPuertoCliente(this.conexion.getPuertoLlamo());
      this.fm.ingresarBarra();
      System.out.println("Ya creeee la Barra!!!!!!!!!!!!");
    }
  }
 
  public void update(Observable arg0, Object arg1) {
    // TODO Auto-generated method stub
   
  }


  public void setFm(FachadaModelo fm) {
    this.fm = fm;
  }

  public RecibirCliente getConexion() {
    return conexion;
  }

 
 
 
 
}
TOP

Related Classes of Comunicacion.Protocolo

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.