public static Empresa retrieveEmpresa(String usuario, String password)
        {
            if (usuario != null && password != null) {
            AppClient appClient = new AppClient();
            AutenticacionEmpresaRQ aerq = new AutenticacionEmpresaRQ();

            aerq.Password=password;
            aerq.UserId=usuario;

            MensajeRQ mensajeRQ = new MensajeRQ("raul", Mensaje.ID_MENSAJE_AUTENTICACIONCLIENTE);
            mensajeRQ.Cuerpo=aerq;
            MensajeRS mensajeRS = appClient.sendRequest(mensajeRQ);
            AutenticacionEmpresaRS aers;
            if (mensajeRS != null)
                aers = (AutenticacionEmpresaRS)mensajeRS.Cuerpo;
            else
            {
                aers = new AutenticacionEmpresaRS();
                aers.Resultado = "2";
            }

            if (aers.Resultado.Equals("1")) {
                Console.Out.WriteLine(""+aers.Empresa);
                return aers.Empresa;
            }
            }
            return null;
        }
        public override bool build(string input)
        {
            Boolean result = true;
            if (validate(input))
            {
                this.cabecera = new Cabecera();

                if (this.cabecera.build(input.Substring(0, Cabecera.HEADER_LENGTH)))
                {
                    String cuerpo = input.Substring(Cabecera.HEADER_LENGTH);

                    if (this.cabecera.TipoMensaje.Equals(Mensaje.TIPO_MENSAJE_RESPONSE))
                    {
                        if (this.cabecera.IdMensaje.Equals(ID_MENSAJE_AUTENTICACIONCLIENTE))
                        {

                            AutenticacionEmpresaRS autenticacionClienteRS = new AutenticacionEmpresaRS();
                            autenticacionClienteRS.build(cuerpo);
                            this.cuerpo = autenticacionClienteRS;
                        }
                        else if (this.cabecera.IdMensaje.Equals(ID_MENSAJE_INGRESOCLIENTE))
                        {

                            IngresoClienteRS ingresoClienteRS = new IngresoClienteRS();
                            ingresoClienteRS.build(cuerpo);
                            this.cuerpo = ingresoClienteRS;
                        }
                        else if (this.cabecera.IdMensaje.Equals(ID_MENSAJE_CONSULTACLIENTE))
                        {
                            ConsultaClienteRS consultaClienteRS = new ConsultaClienteRS();
                            consultaClienteRS.build(cuerpo);
                            this.cuerpo = consultaClienteRS;
                        }
                        else if (this.cabecera.IdMensaje.Equals(ID_MENSAJE_CONSULTAPRODUCTO))
                        {
                            ConsultaProductoRS consultaProductoRS = new ConsultaProductoRS();
                            consultaProductoRS.build(cuerpo);
                            this.cuerpo = consultaProductoRS;
                        }
                        else if (this.cabecera.IdMensaje.Equals(ID_MENSAJE_INGRESOFACTURA))
                        {
                            IngresoFacturaRS ingresoFacturaRS = new IngresoFacturaRS();
                            ingresoFacturaRS.build(cuerpo);
                            this.cuerpo = ingresoFacturaRS;
                        }
                        else
                        {
                            result=false;
                        }

                    }
                    else
                    {
                        result = false;
                    }
                }
                else
                {
                    result = false;
                }
            }
            else
            {
                result = false;
            }
            return result;
        }