public override void Print()
        {
            Console.Write("\n" + this.GetName());
            Console.WriteLine(", " + this.GetDescription());
            Console.WriteLine("---------------------");

            IEnumerator iterator = this.menuComponents.GetEnumerator();

            while (iterator.MoveNext())
            {
                MenuComponent menuComponent = iterator.Current as MenuComponent;

                menuComponent.Print();
            }
        }
        public void PrintVegetarianMenu()
        {
            IEnumerator iterator = this.allMenus.CreateIterator();

            Console.WriteLine("\nVEGETARIAN MENU\n---------------");

            while (iterator.MoveNext())
            {
                MenuComponent menuComponent = iterator.Current as MenuComponent;

                try
                {
                    if (menuComponent.IsVegetarian())
                    {
                        menuComponent.Print();
                    }
                }
                catch (InvalidOperationException) {}
            }
        }