示例#1
0
        public static IEfectivoDeGot crear(string opcion, string nombre, IEfectivoDeGot siguiente)
        {
            FabricaDeEfectivos f = null;

            switch (opcion)
            {
            case "Operador": f = new FabricaDeOperador(); break;

            case "Cientifica": f = new FabricaDeCientifica(); break;

            case "Oficial": f = new FabricaDeOficial(); break;

            case "FuezaEspecial": f = new FabricaDeFuerzaEspecial(); break;

            case "Comisario": f = new FabricaDeComisario(); break;

            case "Perito": f = new FabricaDePerito(); break;

            case "DetectiveSY": f = new FabricaDeDetectiveSY(); break;

            case "DetectiveM": f = new FabricaDeDetectiveM(); break;

            case "DetectiveD": f = new FabricaDeDetectiveD(); break;
            }
            return(f.crear(nombre, siguiente));
        }
示例#2
0
        private static IEfectivoDeGot CrearDepartamentoDePolicia()
        {
            // Este método puede ser modificado si se desea probar con otra cadena de responsabilidades

            IEfectivoDeGot eg = null;

            // Con esta cadena, todos los casos deberán ser atendidos
            eg = FabricaDeEfectivos.crear("Operador", "Tyrion Lannister", eg);
            eg = FabricaDeEfectivos.crear("Cientifica", "Daenerys Targaryen", eg);
            eg = FabricaDeEfectivos.crear("Oficial", "Arya Stark", eg);
            eg = FabricaDeEfectivos.crear("Oficial", "Jon Snow", eg);
            eg = FabricaDeEfectivos.crear("DetectiveM", "Eddard Stark", eg);
            eg = FabricaDeEfectivos.crear("FuezaEspecial", "Jaime Lannister", eg);
            eg = FabricaDeEfectivos.crear("Oficial", "Cersei Lannister", eg);
            eg = FabricaDeEfectivos.crear("Comisario", "Sansa Stark", eg);
            eg = FabricaDeEfectivos.crear("Perito", "Robb Stark", eg);
            eg = FabricaDeEfectivos.crear("Oficial", "Khal Drogo", eg);
            eg = FabricaDeEfectivos.crear("DetectiveSY", "Sam Tarly", eg);
            eg = FabricaDeEfectivos.crear("FuezaEspecial", "Varys", eg);
            eg = FabricaDeEfectivos.crear("Oficial", "Bran Stark", eg);
            eg = FabricaDeEfectivos.crear("DetectiveD", "Petyr Baelish", eg);
            eg = FabricaDeEfectivos.crear("Oficial", "Tywin Lannister", eg);

            /*
             *          // Con esta cadena, los robos, asesinatos, secuestros y amenazas de bomba no son atendidos
             *
             *          eg	= FabricaDeEfectivos.crear("Operador", "Theon Greyjoy", eg);
             *          eg = FabricaDeEfectivos.crear("Cientifica", "Joffrey Baratheon", eg);
             *          eg = FabricaDeEfectivos.crear("Oficial", "Aemon Targaryen", eg);
             *          eg = FabricaDeEfectivos.crear("FuezaEspecial", "Hodor", eg);
             *          eg = FabricaDeEfectivos.crear("FuezaEspecial", "Stannis Baratheon", eg);
             *          eg = FabricaDeEfectivos.crear("Oficial", "Robert Baratheon", eg);
             */

            return(eg);
        }