예제 #1
0
 public static void removeDiet(Diet diet)
 {
     if (dietList != null)
     {
         dietList.Remove(diet);
     }
 }
예제 #2
0
 //obsługa ekstensji
 private static void addDiet(Diet diet)
 {
     if (dietList == null)
     {
         dietList = new List <Diet>();
     }
 }
예제 #3
0
 public void addDietType(Diet diet)
 {
     if (!this.diets.ContainsKey(diet.getId()))
     {
         this.diets.Add(diet.getId(), diet);
         diet.changeDiet(this);
     }
 }
예제 #4
0
        public void removeDietType(Diet diet)
        {
            if (this.diets.ContainsKey(diet.getId()))
            {
                this.diets.Remove(diet.getId());

                if (diet.getDietType() == this)
                {
                    diet.changeDiet(null);
                }
            }
        }
예제 #5
0
        public static ISet <EventDiet> getConnector(Event event1, Diet diet)
        {
            ISet <EventDiet> eventDiet = null;

            foreach (EventDiet set1 in set)
            {
                if (set1.getEventId() == event1.getId() && set1.getDietId() == diet.getId())
                {
                    if (eventDiet == null)
                    {
                        eventDiet = new HashSet <EventDiet>();
                        eventDiet.Add(set1);
                    }
                }
            }
            return(eventDiet);
        }
예제 #6
0
        public static ISet <EventDiet> getConnector(Diet diet)
        {
            ISet <EventDiet> set1 = null;

            foreach (EventDiet sets in set)
            {
                if (sets.getDietId() == diet.getId())
                {
                    if (set1 == null)
                    {
                        set1 = new HashSet <EventDiet>();
                        set1.Add(sets);
                    }
                }
            }
            return(set1);
        }
예제 #7
0
 public void setSpecialDiet(Diet diet)
 {
     this.specialDiet = diet;
 }
예제 #8
0
 public static void removeDiets(Diet diet)
 {
     dietList.Remove(diet);
 }
예제 #9
0
        static void Main(string[] args)
        {
            //Asocjacja kwalifikowana Diet - DietType
            //Kompozycja MainHall - Estate

            //Asocjacja z atrybutem Event - Diet
            //Asocjacja binarna Event - MainHall licznoœci 1 i 0...1

            //klasa Estate- opisuje obiekt jako nieruchomoϾ
            //klasa MainHall - opsuje salê eventow¹

            Event    ev1, ev2, ev3, ev4;
            Diet     d1, d2, d3;
            Estate   e1, e2, e3 = null;
            DietType dt1, dt2;
            MainHall mh1, mh2, mh3;


            e1 = new Estate("Pa³ac nad rzek¹");
            e2 = new Estate("Hotel L3");

            try
            {
                mh1 = new MainHall(e1); // licznoœc 0...1 asocjacja binarna
                mh2 = new MainHall(e2);
                mh3 = new MainHall(e2);
                try
                {
                    mh3 = new MainHall(e3); // kompozycja
                } catch (Exception ex)
                {
                    Console.WriteLine("B³¹d: kopozycja");
                }

                Console.WriteLine("Ekstesja MainHall przed usuniêciem obiektu Estate");
                foreach (MainHall hall in MainHall.getHall())
                {
                    Console.WriteLine(hall.ToString());
                }

                //usuwanie obiektu Estate
                if (Estate.removeEstate(e2))
                {
                    Console.WriteLine("Obiekt Estete e2 usuniêty (Hotel L3)");
                }
                Console.WriteLine("Obiekt po usuniêciu: ");
                //MainHall po usuniêciu
                foreach (MainHall hall in MainHall.getHall())
                {
                    Console.WriteLine(hall.ToString());
                }
                Console.WriteLine();

                e3  = new Estate("Zagroda Os");
                ev1 = new Event("Wesele Maciek i Estera", mh1);
                ev2 = new Event("Konferencja Google", mh2);
                mh1 = new MainHall(e3, ev2);
                mh2 = new MainHall(e3);
                ev3 = new Event("Komunia Kacpra", mh2);
                try
                {
                    ev4 = new Event("Wigilia firmy POLBAN", mh3); //asocjacja binarna o licznoœci 1
                }catch (Exception ex)
                {
                    Console.WriteLine("B³¹d: asocjacja binarna");
                }


                //asocjacja kwalifikowana
                Console.WriteLine("asocjacja kwalifikowana: ");
                dt1 = new DietType(1, "Bezglutenowa");
                dt2 = new DietType(2, "Wegañska");
                d1  = new Diet("Kuchnia w³oska", dt1);
                d2  = new Diet("Kuchnia tajska", dt2);
                d3  = new Diet("Kuchnia polska");
                dt2.addDietType(d2);
                d2.changeDiet(dt1);
                Console.WriteLine(dt1.checkDiet(d2.getId()).ToString());
            }catch (Exception ex)
            {
                Console.WriteLine(ex);
            }

            Console.ReadLine();
        }
예제 #10
0
 private void setDiet(Diet diet)
 {
     this.diet = diet;
 }
예제 #11
0
        private Diet diet;                                               //asocjacja o liczności 1

        private EventDiet(Event event1, Diet diet)
        {
        }
예제 #12
0
        static void Main(string[] args)
        {
            //impementacja ekstensji
            Event e1 = new Event();


            //utworzenie przyk³adowych diet
            Diet glutenFreeDiet  = new Diet("Gluten Free", "soy sos gluten free", 10);
            Diet lactoseFreeDiet = new Diet("Lactose Free", "-", 5);
            Diet test            = new Diet("Dieta testowa");


            //atrybut klasowy
            Event.setEventName("Wesele Estery i Macka");
            // Console.WriteLine("Event name: " + Event.getEventName());

            e1.setEventNetPrice(10000);

            Console.WriteLine("Ekstensje klasy Event: ");
            Event.showEvents(null);

            Console.WriteLine("Ekstensje klasy Diet: ");
            Diet.showEvents();

            //atrybut z³o¿ony
            e1.setSpecialDiet(glutenFreeDiet);
            Console.WriteLine(e1.getSpecialDiet().ToString());

            //atrybut powtarzalny
            e1.addPreviousEventsPrice(12000);
            e1.addPreviousEventsPrice(13000);
            e1.addPreviousEventsPrice(12000);
            e1.addPreviousEventsPrice(25000);

            Console.WriteLine("Previous events prices: ");
            foreach (double x in e1.getPreviousEventsPrice())
            {
                Console.WriteLine(x.ToString() + " PLN");
            }



            //atrybut prosty i od niego pochodny

            e1.setEventNetPrice(13500);                                                //atrybut prosty
            Console.WriteLine("Cena brutto (do zap³aty): " + e1.getEventGrossPrice()); // atrybut pochodny



            //serializacja - trwa³oœæ ekstensji
            string path = @"data.bin";

            BinarySerializer <Event> .Serialize(path, e1);

            Event e = null;

            e = BinarySerializer <Event> .Deserialize(path);

            Console.WriteLine("Serializacja udana");



            Console.ReadLine();
        }