Esempio n. 1
0
        public static void DogDoorTestPath(int dogOutsideTime, bool ownersResponsive)
        {
            DogDoor        door       = new DogDoor();
            BarkRecognizer recognizer = new BarkRecognizer(door);
            Remote         remote     = new Remote(door);

            Console.WriteLine("\nFido barks to go outside ...");
            InitiateDoorOpen(ownersResponsive, remote, recognizer);

            Console.WriteLine("\nFido has gone outside for " + dogOutsideTime / 1000 + " seconds ...");
            System.Threading.Thread.Sleep(dogOutsideTime);
            Console.WriteLine("\nFido's all done ...");

            bool firstBark = true;

            while (!door.isOpen)
            {
                if (firstBark)
                {
                    Console.WriteLine("\n... But he's stuck outside!");
                    Console.WriteLine("\nFido starts barking ...");
                    firstBark = false;
                    InitiateDoorOpen(ownersResponsive, remote, recognizer);
                }
            }

            Console.WriteLine("\nFido's back inside ...");

            while (door.isOpen)
            {
                // Wait
            }
        }
        public static void DogDoorTestPath(int dogOutsideTime, bool ownersResponsive)
        {
            DogDoor door = new DogDoor();
            BarkRecognizer recognizer = new BarkRecognizer(door);
            Remote remote = new Remote(door);

            Console.WriteLine("\nFido barks to go outside ...");
            InitiateDoorOpen(ownersResponsive, remote, recognizer);

            Console.WriteLine("\nFido has gone outside for " + dogOutsideTime/1000 + " seconds ...");
            System.Threading.Thread.Sleep(dogOutsideTime);
            Console.WriteLine("\nFido's all done ...");

            bool firstBark = true;
            while (!door.isOpen)
            {
                if (firstBark)
                {
                    Console.WriteLine("\n... But he's stuck outside!");
                    Console.WriteLine("\nFido starts barking ...");
                    firstBark = false;
                    InitiateDoorOpen(ownersResponsive, remote, recognizer);
                }
            }

            Console.WriteLine("\nFido's back inside ...");

            while(door.isOpen)
            {
                // Wait
            }
        }
Esempio n. 3
0
        public static int DogDoorTestPath(int dogOutsideTime, bool ownersResponsive)
        {
            DogDoor door = new DogDoor();

            door.AddAllowedBark(new Bark("rowlf"));
            door.AddAllowedBark(new Bark("rooowlf"));
            door.AddAllowedBark(new Bark("rawlf"));
            door.AddAllowedBark(new Bark("woof"));
            BarkRecognizer recognizer = new BarkRecognizer(door);
            Remote         remote     = new Remote(door);

            bool isOwnersDog = true;

            Console.WriteLine("\nBruce barks to go outside ...");
            InitiateDoorOpen(ownersResponsive, isOwnersDog, remote, recognizer);

            Console.WriteLine("\nBruce has gone outside for " + dogOutsideTime / 1000 + " seconds ...");
            System.Threading.Thread.Sleep(dogOutsideTime);
            Console.WriteLine("\nBruce is all done ...");

            bool firstBark = true;

            while (!door.isOpen)
            {
                if (firstBark)
                {
                    Console.WriteLine("\n... But he's stuck outside!");
                    firstBark = false;

                    // A different dog barks
                    if (!ownersResponsive)
                    {
                        InitiateDoorOpen(ownersResponsive, !isOwnersDog, remote, recognizer);
                        if (door.isOpen)
                        {
                            Console.WriteLine("\nAnother dog besides Bruce has come inside! ...");
                            return(1);
                        }
                        Console.WriteLine("\nThis dog is not allowed ...");
                    }


                    // Bruce barks
                    InitiateDoorOpen(ownersResponsive, isOwnersDog, remote, recognizer);
                    if (door.isOpen)
                    {
                        Console.WriteLine("\nBruce is back inside ...");
                    }
                }
            }

            while (door.isOpen)
            {
                // Wait
            }

            return(0);
        }
        public static int DogDoorTestPath(int dogOutsideTime, bool ownersResponsive)
        {
            DogDoor door = new DogDoor();
            door.AddAllowedBark(new Bark("rowlf"));
            door.AddAllowedBark(new Bark("rooowlf"));
            door.AddAllowedBark(new Bark("rawlf"));
            door.AddAllowedBark(new Bark("woof"));
            BarkRecognizer recognizer = new BarkRecognizer(door);
            Remote remote = new Remote(door);

            bool isOwnersDog = true;

            Console.WriteLine("\nBruce barks to go outside ...");
            InitiateDoorOpen(ownersResponsive, isOwnersDog, remote, recognizer);

            Console.WriteLine("\nBruce has gone outside for " + dogOutsideTime/1000 + " seconds ...");
            System.Threading.Thread.Sleep(dogOutsideTime);
            Console.WriteLine("\nBruce is all done ...");

            bool firstBark = true;
            while (!door.isOpen)
            {
                if (firstBark)
                {
                    Console.WriteLine("\n... But he's stuck outside!");
                    firstBark = false;

                    // A different dog barks
                    if (!ownersResponsive)
                    {
                        InitiateDoorOpen(ownersResponsive, !isOwnersDog, remote, recognizer);
                        if (door.isOpen)
                        {
                            Console.WriteLine("\nAnother dog besides Bruce has come inside! ...");
                            return 1;
                        }
                        Console.WriteLine("\nThis dog is not allowed ...");
                    }
                    

                    // Bruce barks
                    InitiateDoorOpen(ownersResponsive, isOwnersDog, remote, recognizer);
                    if (door.isOpen)
                    {
                        Console.WriteLine("\nBruce is back inside ...");
                    }
                }
            }

            while(door.isOpen)
            {
                // Wait
            }

            return 0;
        }
Esempio n. 5
0
 private static void InitiateDoorOpen(bool ownersResponsive, Remote remote, BarkRecognizer recognizer)
 {
     if (ownersResponsive)
     {
         Console.WriteLine("\nSo Gina grabs the remote control ...");
         remote.pressButton();
     }
     else
     {
         recognizer.recognize("Woof");
         Console.WriteLine("\nThe door hears the dog and opens ...");
     }
 }
 private static void InitiateDoorOpen(bool ownersResponsive, Remote remote, BarkRecognizer recognizer)
 {
     if (ownersResponsive)
     {
         Console.WriteLine("\nSo Gina grabs the remote control ...");
         remote.pressButton();
     }
     else
     {
         recognizer.recognize("Woof");
         Console.WriteLine("\nThe door hears the dog and opens ...");
     }
 }
        static void Main(string[] args)
        {
            Models.DogDoor door = new Models.DogDoor();
            door.AddAllowedBark(new Bark("hauu"));
            door.AddAllowedBark(new Bark("Hrauu"));
            door.AddAllowedBark(new Bark("hauhauu"));
            door.AddAllowedBark(new Bark("hauuuuuu"));
            BarkRecognizer recognizer = new BarkRecognizer(door);
            Remote         remote     = new Remote(door);

            Console.WriteLine("Azor szczeka, by wyjść na spacer...");
            Console.WriteLine();
            recognizer.Recognize(new Bark("hauu"));

            Console.WriteLine("Azor wyszedł na specer");
            Console.WriteLine("Azor załatwił co trzeba...");
            try
            {
                Thread.Sleep(10000);
            }
            catch (Exception ex) { }

            Console.WriteLine(".. ale Azor utknął na zewnątrz!");

            Bark smallDogBark = new Bark("hiauu");

            Console.WriteLine("Mały pies zaczął szczekać");
            recognizer.Recognize(smallDogBark);

            try
            {
                Thread.Sleep(5000);
            }
            catch (Exception ex) { }

            Console.WriteLine("\nAzor zaczyna szczekać...");
            recognizer.Recognize(new Bark("hauu"));

            Console.WriteLine("Azor wrócił do domu");

            Console.ReadLine();
        }
 private static void InitiateDoorOpen(bool ownersResponsive, bool isOwnersDog, Remote remote, BarkRecognizer recognizer)
 {
     if (ownersResponsive)
     {
         Console.WriteLine("\nSo Gina grabs the remote control ...");
         remote.pressButton();
     }
     else
     {
         if (isOwnersDog)
         {
             // Now Bruce starts barking
             Console.WriteLine("\nBruce starts barking ...");
             recognizer.recognize(new Bark("rooowlf"));
         }
         else
         {
             // Begin with another dog barking
             Bark smallDogBark = new Bark("yip");
             Console.WriteLine("\nBitsie starts barking ...");
             recognizer.recognize(smallDogBark);
         }
     }
 }
Esempio n. 9
0
 private static void InitiateDoorOpen(bool ownersResponsive, bool isOwnersDog, Remote remote, BarkRecognizer recognizer)
 {
     if (ownersResponsive)
     {
         Console.WriteLine("\nSo Gina grabs the remote control ...");
         remote.pressButton();
     }
     else
     {
         if (isOwnersDog)
         {
             // Now Bruce starts barking
             Console.WriteLine("\nBruce starts barking ...");
             recognizer.recognize(new Bark("rooowlf"));
         }
         else
         {
             // Begin with another dog barking
             Bark smallDogBark = new Bark("yip");
             Console.WriteLine("\nBitsie starts barking ...");
             recognizer.recognize(smallDogBark);
         }
     }
 }