public override void AceptaVisitante(IVisitante visitante) { visitante.Visita(this); foreach (Empresa filial in filiales) { filial.AceptaVisitante(visitante); } }
public override void AceptaVisitante(IVisitante visitante) { visitante.Visita(this); foreach (Editorial editorialFilial in EditorialesFiliales) { editorialFilial.AceptaVisitante(visitante); } }
private static void Main(string[] args) { MIGrafo = new Grafo(); List<Nodo> Nodos = new List<Nodo>(); Nodo nodo1 = new Ciudad("Medellin", 4500000); Nodo nodo2 = new LugarTurismo("Pueblito_paisa", new double[] { 0.20, 0.15 }); Nodo nodo3 = new Industria("Coltejer", new double[] { 5.25, 10.15 }); Nodo nodo4 = new Industria("Colcafe", new double[] { 6.30, 14.5 }); Enlace enlace1 = new Enlace { Origen = nodo3, Destino = nodo2 }; Enlace enlace2 = new Enlace() { Origen = nodo2, Destino = nodo3 }; Enlace enlace3 = new Enlace() { Origen = nodo4, Destino = nodo3 }; nodo1.enlaces = new Enlace[] { enlace1, enlace2 }.ToList(); nodo2.enlaces = new Enlace[] { enlace3 }.ToList(); Nodos.AddRange(new Nodo[] { nodo1, nodo2, nodo3, nodo4 }); MIGrafo.Nodos = Nodos; MIGrafo.Enlaces = new Enlace[] { enlace1, enlace2 }.ToList(); //Imprimir funciones geograficas foreach (var nodoi in MIGrafo.Nodos) nodoi.FuncionGeo(); ExportarBuilder builder = new ExportarBuilder(TipoArchivo.XML); visitante = new CVisitante(MIGrafo,builder.CrearExportador()); string output = JsonConvert.SerializeObject(MIGrafo); Console.WriteLine("-----------------"); }
//sino hicieramos este override Aceptar cuando se fuera el elementoL c iria como elemento (CElemento) y no como elementoL(CELementoL) //es decir se irir como la clase padre //con el override y this ya nos mandamos como tipo CElementoL public override void Aceptar(IVisitante pVisitante) { //Nos Mandamos como parametro para q l visitante procese lo necesario //base.Aceptar(pVisitante); es lo mismo q abajo pVisitante.Visitar(this); }
public abstract void AceptaVisitante(IVisitante visitante);
//Metodo para aceptar el visitor public void Accept(IVisitante visitor) { visitor.VisitorDomicilio(this); visitor.VisitorTelefono(this); visitor.VisitorCorreo(this); }
public void Accept(IVisitante visitante) { visitante.Visitar(this); }
/// <summary> /// Remove visitante da fila de atendimento exclusivo. /// </summary> /// <param name="visitante">Visitante a ser removido.</param> private void RemoverFila(IVisitante visitante) { foreach (ListaVisitantesItem item in listaFila.Itens) if (item.Visitante == visitante) { listaFila.Itens.Remove(item); return; } }
///// <summary> ///// Ocorre ao observar uma ação do funcionário atual. ///// </summary> ///// <param name="ação">Ação do funcionário.</param> ///// <param name="dados">Dados da ação.</param> //protected override void AoObservarFuncionário(Negócio.Observador.AçãoFuncionário ação, object dados) //{ // base.AoObservarFuncionário(ação, dados); // switch (ação) // { // case AçãoFuncionário.EnfileirouCliente: // AdicionarFila((IVisitante) dados); // break; // case AçãoFuncionário.DesenfileirouCliente: // RemoverFila((IVisitante) dados); // break; // } //} /// <summary> /// Adiciona visitante na lista de atendimento exclusivo. /// </summary> /// <param name="visitante">Visitante na espera.</param> private void AdicionarFila(IVisitante visitante) { listaFila.Invoke(adicionarVisitanteFila, new object [] { visitante }); }
public override void AceptaVisitante(IVisitante visitante) { visitante.Visita(this); }