public Gift ParceCandyToGift(string[] sweet, Gift gift)
        {
            try
            {

                switch (sweet[1])
                {
                    case "Chocolate Candy":
                        {

                            gift.AddSweet(new ChocolateCandy(sweet[3], sweet[5], int.Parse(sweet[7]), double.Parse(sweet[9]),
                                sweet[11], sweet[13]));

                            break;
                        }
                    case "Caramel":
                        {
                            gift.AddSweet(new Caramel(sweet[3], sweet[5], int.Parse(sweet[7]), double.Parse(sweet[9]),
                                sweet[11], sweet[13], sweet[15]));

                            break;
                        }
                    case "Iris":
                        {
                            gift.AddSweet(new Iris(sweet[3], sweet[5], int.Parse(sweet[7]), double.Parse(sweet[9]),
                                sweet[11], sweet[13]));

                            break;
                        }
                    case "JellyBean":
                        {
                            gift.AddSweet(new JellyBean(sweet[3], sweet[5], int.Parse(sweet[7]), double.Parse(sweet[9]),
                                sweet[11], sweet[13]));

                            break;
                        }
                    case "Grilyazh":
                        {
                            gift.AddSweet(new Roasting(sweet[3], sweet[5], int.Parse(sweet[7]), double.Parse(sweet[9]),
                                sweet[11]));

                            break;
                        }
                }
            }

                //my exception
            catch (TooMuchParametersException ex)
            {
                Console.WriteLine("Exception occured" + ex);
            }
            catch (IndexOutOfRangeException ex)
            {
                Console.WriteLine("Exception occured" + ex);
            }
            return gift;
        }
Example #2
0
        static void Main(string[] args)
        {
            IGift        gift          = new Gift("Gift 1", new List <ISweetness>());
            Candy        candy1        = new Candy("Сhupa Chups XXL 4D", 29, 0.65, 91, 370, TypeOfCandy.Lollipop, Stuffing.Without_Stuffing);
            Candy        candy2        = new Candy("Аэрофлотские", 150, 1.95, 64.3, 483, TypeOfCandy.Chocolate, Stuffing.With_Waffle_Сrumb_Stuffing);
            Chocolate    choco1        = new Chocolate("Спартак", 75, 1.45, 48, 540, TypeOfChocolate.Dark, DriedFruits.Contains_Nut, 59, VariantsOfChocolateProducts.Porous_Chocolate);
            Chocolate    choco2        = new Chocolate("Любимая Алёнка", 200, 2.99, 51.5, 550, TypeOfChocolate.Milk, DriedFruits.Without_Dried_Fruits, 40, VariantsOfChocolateProducts.Chocolate);
            Halva        halva1        = new Halva("Бобруйская", 60, 0.55, 45, 530, TypeOfHalva.Sunflower_Based, WithNuts.Without_Nuts);
            Halva        halva2        = new Halva("Азовская", 250, 2.20, 29.1, 545, TypeOfHalva.Peanut_Butter_Based, WithNuts.Without_Nuts);
            Marshmallows Marshmallows1 = new Marshmallows("Удалить", 150, 115, 250, 450, TypeOfMarshmallows.White_Pink, DriedFruits.Contains_Peanut, Thickener.AgarAgar);
            Marshmallows Marshmallows2 = new Marshmallows("Первый Бобруйский", 250, 2.19, 81, 310, TypeOfMarshmallows.White_Pink, DriedFruits.Contains_Candied_Fruit, Thickener.AgarAgar);
            Marshmallows Marshmallows3 = new Marshmallows("Чаровей", 80, 0.89, 74, 340, TypeOfMarshmallows.Vanilla, DriedFruits.Without_Dried_Fruits, Thickener.Pectin);

            gift.AddSweet(candy1);
            gift.AddSweet(candy2);
            gift.AddSweet(choco1);
            gift.AddSweet(choco2);
            gift.AddSweet(halva1);
            gift.AddSweet(halva2);
            gift.AddSweet(Marshmallows1);
            gift.AddSweet(Marshmallows2);
            gift.AddSweet(Marshmallows3);
            gift.RemoveSweet(Marshmallows1);
            gift.ShowItems();
        }
        public Gift ReadData(string filename)
        {
            Sweets[] sweets = {};
            Gift gift = new Gift();
            BinaryFormatter formatter = new BinaryFormatter();
            if (File.Exists(filename))
            {
                Console.WriteLine("File Exist");
                try
                {
                    using (FileStream fs = new FileStream(filename, FileMode.OpenOrCreate))
                    {
                        Sweets[] deserializeSweets = (Sweets[]) formatter.Deserialize(fs);
                        foreach (Sweets s in deserializeSweets)
                        {
                            switch (s.Type)
                            {
                                case "Chocolate Candy":
                                    {
                                        gift.AddSweet(new ChocolateCandy(s.SubType, s.Name, s.Price, s.Weight, s.Param1, s.Param2));
                                        break;
                                    }
                                case "Caramel":
                                    {
                                        gift.AddSweet(new Caramel(s.SubType, s.Name, s.Price, s.Weight, s.Param1, s.Param2, s.Param3));
                                        break;
                                    }
                                case "Iris":
                                    {
                                        gift.AddSweet(new Iris(s.SubType, s.Name, s.Price, s.Weight, s.Param1, s.Param2));
                                        break;
                                    }
                                case "JellyBean":
                                    {
                                        gift.AddSweet(new JellyBean(s.SubType, s.Name, s.Price, s.Weight, s.Param1, s.Param2));
                                        break;
                                    }
                                case "Grilyazh":
                                    {
                                        gift.AddSweet(new Roasting(s.SubType, s.Name, s.Price, s.Weight, s.Param1));
                                        break;
                                    }
                            }
                        }
                    }
                }

                catch (DirectoryNotFoundException ex)
                {
                    Console.WriteLine("Exception occured" + ex);
                }
                catch (FileNotFoundException ex)
                {
                    Console.WriteLine("Exception occured" + ex);
                }
                catch (FileLoadException ex)
                {
                    Console.WriteLine("Exception occured" + ex);
                }

                catch (IndexOutOfRangeException ex)
                {
                    Console.WriteLine("Exception occured" + ex);
                }

                catch (IOException ex)
                {
                    Console.WriteLine("Exception occured" + ex);
                }
            }
            else throw new FileNotEsistException("Exception: File does not exist ");

            return gift;
        }