コード例 #1
0
 public Cage(int capacity, bool clean, IList <Animal> animal, Maintainer maintainer = null) : this(capacity, clean)
 {
     AnimalsInCage = animal;
     Maintainer    = maintainer;
 }
コード例 #2
0
        static void Main(string[] args)
        {
            Zoo    zoo        = new Zoo("Slaski ogrod zoologiczny");
            Animal dog        = new Mammal("flesh", 4, "Europe", "Gray Wolf", "Europe");
            Animal cow        = new Mammal("grass", 4, "Europe", "B. taurus", "Europe");
            Animal crocodile1 = new Reptile("flesh", 4, "Africa", "C. niloticus", false);
            var    animals1   = zoo.Set <Animal, Zoo>().AddRange(new List <Animal>
            {
                dog, cow, crocodile1
            });
            Cage cage1 = new Cage(4, false, animals1);

            cage1.DisplayInfo();
            Animal horse = new Mammal("Grass", 4, "North America, Europe", "E. ferus", "Europe");

            Animal falcon   = new Bird("flesh", 2, "Europe", "Falconidae", 1.2, 125);
            var    animals2 = zoo.Set <Animal, Zoo>().AddRange(new List <Animal>()
            {
                horse,
                falcon
            });

            Cage cage2 = new Cage(3, false, animals2);

            cage2.DisplayInfo();

            Cage cage3  = new Cage(10, false, new List <Animal>());
            var  cages1 = zoo.Set <Cage, Zoo>().AddRange(new List <Cage>()
            {
                cage1,
                cage2
            });
            var cages2 = zoo.Set <Cage, Zoo>().AddRange(new List <Cage>()
            {
                cage3
            });
            Employee employee1 = new Maintainer("Jan", "Kowalski", new DateTime(1990, 1, 1), DateTime.Now, cages1);
            Employee employee2 = new Maintainer("Adam", "Nowak", new
                                                DateTime(1988, 1, 1), DateTime.Now, cages2);
            var employees = zoo.Set <Employee, Zoo>().AddRange(new List <Employee>()
            {
                employee1,
                employee2
            });
            Animal cobra      = new Reptile("flesh", 0, "Africa", "Serpentes", true);
            Cage   cage4      = zoo.ConstructCage(10, false);
            var    newEmploee = zoo.HireEmployee("Robert", "Kowalczyk", new DateTime(1988, 1, 1));

            ((Maintainer)newEmploee).Set <Cage, Maintainer>().Add(cage4);
            cage4.Set <Animal, Cage>().Add(cobra);
            zoo.Set <Cage, Zoo>().Add(cage4);
            zoo.ExpandCage(cage4, 5);
            Console.WriteLine();
            Console.WriteLine("+++++++++++++++++++++++++++++++++++++++");
            Console.WriteLine();
            employees.PrintInfo();
            Console.WriteLine();
            Console.WriteLine("+++++++++++++++++++++++++++++++++++++++");
            Console.WriteLine();
            Console.WriteLine();
            zoo.Print();
            Console.WriteLine();
            Console.WriteLine("+++++++++++++++++++++++++++++++++++++++");
            Console.WriteLine();
            zoo.DisplayAllCages();
            Console.WriteLine();
            Console.WriteLine("+++++++++++++++++++++++++++++++++++++++");
            Console.WriteLine();
            zoo.Print();
            Console.ReadKey();
        }