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); }
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(); }