public static void PatronTemplateMethod()
        {
            Transeunte    transeunte = new Transeunte();
            IResponsable  re         = null;
            FabricaMedico medico     = new FabricaMedico(re);
            ICuartel      cuartel    = crearHeroe(medico);

            cuartel.getPersonal().AtenderInfarto(transeunte);
        }
Example #2
0
        public static void TestChainOfResposability()
        {
            Manejador manejador = new Medico(null);

            manejador = new Policia(manejador);
            manejador = new Electricista(manejador);
            manejador = new Bombero(manejador);

            Transeunte paciente = new Transeunte();


            Operador911 operador = new Operador911(manejador);


            //LUGARES
            Calle   calle = new Calle(100, 4, 100);
            Casa    a = new Casa(1, 20, 3);       Plaza f = new Plaza("", 40, 50, 20);
            Casa    b = new Casa(2, 20, 3);       Plaza g = new Plaza("", 40, 50, 20);
            Casa    c = new Casa(3, 20, 3);       Plaza h = new Plaza("", 40, 50, 20);
            Casa    d = new Casa(4, 20, 3);       Plaza i = new Plaza("", 40, 50, 20);
            Casa    e = new Casa(5, 20, 3);       Plaza j = new Plaza("", 40, 50, 20);
            Esquina esquina = new Esquina(4);

            a.Calle = calle; b.Calle = calle; c.Calle = calle; d.Calle = calle; e.Calle = calle; f.Calle = calle; g.Calle = calle; h.Calle = calle; i.Calle = calle; j.Calle = calle;


            //DENUNCIA POR WHATSAPP
            Passerby        passerby         = new Passerby(0.35, 0.45, 0.35);
            AdapterPasserby pacientaAdaptado = new AdapterPasserby(passerby);


            MensajeWhatsapp lista = null;

            //DENUNCIAS DE INCENDIO
            lista = new MensajeWhatsapp(new DenunciaDeIncendios(a), lista);
            lista = new MensajeWhatsapp(new DenunciaDeIncendios(b), lista);
            lista = new MensajeWhatsapp(new DenunciaDeIncendios(c), lista);
            //DENUNCIAS DE INFARTO
            lista = new MensajeWhatsapp(new DenunciaDeInfarto(paciente), lista);
            lista = new MensajeWhatsapp(new DenunciaDeInfarto(pacientaAdaptado), lista);
            //DENUNCIAS DE ROBO
            lista = new MensajeWhatsapp(new DenunciaDeRobo(esquina), lista);
            lista = new MensajeWhatsapp(new DenunciaDeRobo(d), lista);
            lista = new MensajeWhatsapp(new DenunciaDeRobo(e), lista);
            //DENUNCIAS DE LAMPARAS QUEMADAS
            lista = new MensajeWhatsapp(new DenunciaDeLamparaQuemada(f), lista);
            lista = new MensajeWhatsapp(new DenunciaDeLamparaQuemada(g), lista);
            lista = new MensajeWhatsapp(new DenunciaDeLamparaQuemada(h), lista);
            lista = new MensajeWhatsapp(new DenunciaDeLamparaQuemada(i), lista);
            lista = new MensajeWhatsapp(new DenunciaDeLamparaQuemada(j), lista);


            DenunciaPorWhatsapp dpw = new DenunciaPorWhatsapp(lista);


            operador.atenderDenuncias(dpw);
        }
Example #3
0
        public static void TestTemplatedMethod()
        {
            Transeunte paciente = new Transeunte();

            Medico medico = new Medico(null);

            //ProtocoloRCP rcpB= new RCP_B();
            //medico.Rcp=rcpB;

            medico.atenderInfarto(paciente);
        }
        public static void PatronAbstractFactory()
        {
            Director     director    = new Director();
            var          builder     = new BuilderFavorable();
            Casa         casa        = new Casa(10, 4, 12, director, builder);
            IStrategy    estrategia  = new Secuencial();
            Decorator    pasto       = new PastoSeco(casa.crearSector(10, 10, 10));
            Transeunte   persona     = new Transeunte();
            Esquina      esquina     = new Esquina(12);
            IResponsable responsable = null;

            responsable = new Electricista(responsable);
            FabricaElectricista FElectricista = new FabricaElectricista(responsable);
            FabricaBombero      FBombero      = new FabricaBombero(estrategia, pasto, responsable);

            crearHeroe(FElectricista).getPersonal().Revisar(esquina);
            crearHeroe(FBombero);
        }
        public static void PatronChainOfResponsability()
        {
            Casa        casa       = new Casa();
            IOrden      aviso      = new VozDeAlto();
            IInfartable transeunte = new Transeunte();
            IIluminable esquina    = new Esquina(10);



            DenunciaDeInfarto        infarto = new DenunciaDeInfarto(transeunte);
            DenunciaDeRobo           robo    = new DenunciaDeRobo(casa);
            DenunciaDeLamparaQuemada lampara = new DenunciaDeLamparaQuemada(esquina);
            MensajeWhatsapp          mensaje = null;

            mensaje = new MensajeWhatsapp(infarto, mensaje);
            mensaje = new MensajeWhatsapp(robo, mensaje);
            mensaje = new MensajeWhatsapp(lampara, mensaje);
            DenunciaPorWhatsapp denunciaWhatsapp = new DenunciaPorWhatsapp(mensaje);

            IResponsable resposable = null;

            FabricaMedico       Fmedico       = new FabricaMedico(resposable);
            FabricaPolicia      Fpolicia      = new FabricaPolicia(aviso, casa, resposable);
            FabricaElectricista Felectricista = new FabricaElectricista(resposable);

            ICuartel cuartelEle = crearHeroe(Felectricista);
            ICuartel cuartelPo  = crearHeroe(Fpolicia);
            ICuartel cuartelMe  = crearHeroe(Fmedico);

            resposable = cuartelMe.getPersonal();
            resposable = cuartelPo.getPersonal();
            resposable = cuartelEle.getPersonal();

            Operador911 operador = new Operador911(resposable);

            operador.atenderDenuncias(denunciaWhatsapp);
        }
Example #6
0
        public void Desobstrucción()
        {
            if (Transeunte.tenesRitmoCardiaco())
            {
                Console.WriteLine("Está estable.");
            }

            if (Transeunte.estasConciente() == false)
            {

                //Medic.LlamarAmbulancia(); NO DEPENDE DE MEDICO
                //Medic.DescubrirTorax(); NO DEPENDE DE MEDICO
                //Medic.AcomodarCabeza(); NO DEPENDE DE MEDICO
                int i = 0;
                while (Transeunte.estasConciente() == false && i < 5)
                {
                    //Medic.Compresiones(); NO DEPENDE DE MEDICO
                    //Medic.Insuflasiones(); NO DEPENDE DE MEDICO
                    if (!Transeunte.tenesRitmoCardiaco())
                        Medic.UsarDesfibrilador();
                    i++;
                }
            }
        }
Example #7
0
        public static void TestAbstractFactory()
        {
            IFabricaDeHeroes fabrica_electricista = new FabricaDeElectricista();
            IFabricaDeHeroes fabrica_policia      = new FabricaDePolicia();
            IFabricaDeHeroes fabrica_bombero      = new FabricaDeBombero();
            IFabricaDeHeroes fabrica_medico       = new FabricaDeMedico();

            ICuartel central_electrica   = crearHeroe(fabrica_electricista);
            ICuartel comisaria           = crearHeroe(fabrica_policia);
            ICuartel cuartel_de_bomberos = crearHeroe(fabrica_bombero);
            ICuartel hospital            = crearHeroe(fabrica_medico);


            IResponsable electricista = central_electrica.getPersonal();

            IResponsable bombero = cuartel_de_bomberos.getPersonal();

            IResponsable medico = hospital.getPersonal();

            IResponsable policia = comisaria.getPersonal();



            Plaza       plaza = new Plaza("luz", 40, 19, 10);
            Esquina     esquina = new Esquina(4);
            Casa        casa = new Casa(1, 40, 5); Calle calle = new Calle(100, 4, 85); casa.Calle = calle;
            IInfartable trauseunte = new Transeunte();

            Console.ForegroundColor = ConsoleColor.Red;
            ((Electricista)electricista).revisar(plaza);


            //guardando electricista al cuartel, su herramienta y vehiculo
            central_electrica.agregarherramienta(((Electricista)electricista).Herramienta);
            central_electrica.agregarVehiculo(((Electricista)electricista).Vehiculo);

            ((Electricista)electricista).Herramienta = null;
            ((Electricista)electricista).Vehiculo    = null;
            central_electrica.agregarPersonal(electricista);
            electricista = null;


            Console.ForegroundColor = ConsoleColor.Green;
            ((Policia)policia).patrullarCalles(esquina);

            //guardando policia al cuartel, su herramienta y vehiculo
            comisaria.agregarherramienta(((Policia)policia).Herramienta);
            comisaria.agregarVehiculo(((Policia)policia).Vehiculo);
            ((Policia)policia).Herramienta = null;
            ((Policia)policia).Vehiculo    = null;
            comisaria.agregarPersonal(policia);
            policia = null;


            Console.ForegroundColor = ConsoleColor.Cyan;
            ((Bombero)bombero).apagarIncendio(casa, casa.Calle);


            //guardando bombero al cuartel, su herramienta y vehiculo
            cuartel_de_bomberos.agregarherramienta(((Bombero)bombero).Herramienta);
            cuartel_de_bomberos.agregarVehiculo(((Bombero)bombero).Vehiculo);
            ((Bombero)bombero).Herramienta = null;
            ((Bombero)bombero).Vehiculo    = null;
            cuartel_de_bomberos.agregarPersonal(bombero);
            bombero = null;

            Console.ForegroundColor = ConsoleColor.DarkYellow;
            ((Medico)medico).atenderInfarto(trauseunte);

            //guardando medico al cuartel, su herramienta y vehiculo
            hospital.agregarherramienta(((Medico)medico).Herramienta);
            hospital.agregarVehiculo(((Medico)medico).Vehiculo);
            ((Medico)medico).Herramienta = null;
            ((Medico)medico).Vehiculo    = null;
            hospital.agregarPersonal(medico);
            medico = null;
        }