public static void PatronTemplateMethod() { Transeunte transeunte = new Transeunte(); IResponsable re = null; FabricaMedico medico = new FabricaMedico(re); ICuartel cuartel = crearHeroe(medico); cuartel.getPersonal().AtenderInfarto(transeunte); }
public static void PatronAdapter() { Passerby extranjero = new Passerby(30, 30, 30); IInfartable transeunte = new Adapter(extranjero); IResponsable re = null; FabricaMedico medico = new FabricaMedico(re); ICuartel cuartel = crearHeroe(medico); cuartel.getPersonal().AtenderInfarto(transeunte); }
public override void AtenderInfarto(IInfartable transeunte) { if (medicoReal == null) { fabrica = new FabricaMedico(siguiente); medicoReal = (Medico)fabrica.crearHeroe(); medicoReal.Herramienta = fabrica.crearHerramienta(); medicoReal.Vehiculo = fabrica.crearVehiculo(); } medicoReal.AtenderInfarto(transeunte); }
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); }