Esempio n. 1
0
        public static LancoltLista <IKuldemeny> ReadPackages()
        {
            LancoltLista <IKuldemeny> lista = new LancoltLista <IKuldemeny>();
            StreamReader sr = new StreamReader("InputFiles/kuldemenyek.txt");

            while (!sr.EndOfStream)
            {
                string line = sr.ReadLine();
                if (line == null)
                {
                    continue;
                }

                var parts = line.Split('-');
                //Tipus Prioritas Tomeg
                string tipus = parts[0];
                int    prio  = int.Parse(parts[1]);
                int    tomeg = int.Parse(parts[2]);

                KuldemenyBase kuldemeny;
                switch (tipus)
                {
                case nameof(NormalLevel):
                    kuldemeny = new NormalLevel(prio, tomeg);
                    break;

                case nameof(ElsobbsegiLevel):
                    kuldemeny = new ElsobbsegiLevel(prio, tomeg);
                    break;

                case nameof(NormalCsomag):
                    kuldemeny = new NormalCsomag(prio, tomeg);
                    break;

                case nameof(ElsobbsegiCsomag):
                    kuldemeny = new ElsobbsegiCsomag(prio, tomeg);
                    break;

                default:
                    throw new NincsIlyenKuldemenyException($"Nem létezik ilyen Küldemény: {tipus}");
                }

                lista.BeszurasElejere(kuldemeny);
            }

            return(lista);
        }
Esempio n. 2
0
        private static void Csomagfelvetel(LancoltLista <IKuldemeny> kuldemenyek)
        {
            Console.WriteLine("Szeretne csomagot felvenni a rendszerbe?");
            string igenNem;

            do
            {
                igenNem = Console.ReadLine();
            } while (igenNem != "Nem" && igenNem != "Igen");

            if (igenNem == "Nem")
            {
                Console.Clear();
                return;
            }

            Console.WriteLine($"Kérem a típusát: ({nameof(NormalLevel)} - {nameof(ElsobbsegiLevel)} - {nameof(NormalCsomag)} - {nameof(ElsobbsegiCsomag)})");
            string tipus = Console.ReadLine();

            Console.WriteLine("Mennyire sűrgös: (1-10)");
            string prioStr;
            int    prio;

            do
            {
                prioStr = Console.ReadLine();
            } while (int.TryParse(prioStr, out prio));

            Console.WriteLine("Kérem a tömegét: (grammban)");
            string tomegStr;
            int    tomeg;

            do
            {
                tomegStr = Console.ReadLine();
            } while (int.TryParse(tomegStr, out tomeg));


            KuldemenyBase kuldemeny;

            switch (tipus)
            {
            case nameof(NormalLevel):
                kuldemeny = new NormalLevel(tomeg, tomeg);
                break;

            case nameof(ElsobbsegiLevel):
                kuldemeny = new ElsobbsegiLevel(tomeg, tomeg);
                break;

            case nameof(NormalCsomag):
                kuldemeny = new NormalCsomag(tomeg, tomeg);
                break;

            case nameof(ElsobbsegiCsomag):
                kuldemeny = new ElsobbsegiCsomag(tomeg, tomeg);
                break;

            default:
                throw new NincsIlyenKuldemenyException($"Nem létezik ilyen Küldemény: {tipus}");
            }

            kuldemenyek.BeszurasElejere(kuldemeny);

            Console.Clear();
        }