Beispiel #1
0
        internal BoatListItem NewBoatInput(int boatID)
        {
            //System.Console.Clear();
            int length;
            int MemberID;
            string boatType = "Other";
            Console.Write("Enter member ID (from the list):");
            MemberID = Int32.Parse(Console.ReadLine());
            Console.WriteLine("Enter boatType (1-4)");
            Console.WriteLine("1 for Sailboat");
            Console.WriteLine("2 for Motorsailer");
            Console.WriteLine("3 for Kayak/Canoe");
            Console.WriteLine("4 for Other");
            int input;
            do
            {
                input=Int32.Parse(Console.ReadLine());

            } while (input>4 && input<1);

            switch(input)
                {
                    case 1:
                        boatType = "Sailboat";
                            break;
                    case 2:
                         boatType = "Motorsailer";
                            break;
                    case 3:
                            boatType = "KayakCanoe";
                            break;
                    case 4:
                         boatType = "Other";
                            break;
                }
            Boat.BoatType type = (Boat.BoatType)Enum.Parse(typeof(Boat.BoatType), boatType);
            Console.Write("Enter boat length:");
            length = Int32.Parse(Console.ReadLine());
            Boat newBoat = new Boat(type, length);

            return new BoatListItem(MemberID, boatID + 1, newBoat);
        }
Beispiel #2
0
 // Delete the specified boat from the member's boatlist
 public void DeleteBoat(Boat boatToDelete)
 {
     _boats.Remove(boatToDelete);
 }
Beispiel #3
0
 public BoatListItem(int memberID, int boatID, Boat boat)
 {
     BoatID = boatID;
     MemberID = memberID;
     Boat = boat;
 }
Beispiel #4
0
 // Add boat to the member's boatlist, can have similar boat type and size
 public void AddBoat(Boat boatToRegister)
 {
     _boats.Add(boatToRegister);
 }
        private void Load()
        {
            try
            {
                // Creates a list that can contain references to member object.
                List<Member> members = new List<Member>();

                Member member = null;
                Boat boat = null;

                using (StreamReader reader = new StreamReader(_path))
                {
                    string line;
                    while ((line = reader.ReadLine()) != null)
                    {
                        if (line != "")
                        {
                            // Divide the line into parts.
                            string[] values = line.Split(';');

                            // If there is a section for new member. (status,memberid,name,personalnumber)
                            if (values[0] == _sectionMember)
                            {
                                int memberId = int.Parse(values[1]);
                                string name = values[2];
                                string personalNumber = values[3];
                                member = new Member(memberId, name, personalNumber);
                                members.Add(member);
                            }
                            // If there is a section for boat. (status,type,length,registrationdate)
                            else if (values[0] == _sectionBoat)
                            {
                                Boat.BoatType type;
                                Enum.TryParse(values[1], out type);
                                double length = double.Parse(values[2]);
                                DateTime registrationDate = DateTime.Parse(values[3]);
                                boat = new Boat(type, length, registrationDate);
                                member.AddBoat(boat);
                            }
                            else
                            {
                                throw new FileLoadException();
                            }
                        }
                    }
                }
                _members = members.OrderBy(r => r.MemberId).ToList();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
Beispiel #6
0
 public void DeleteBoat(Boat boat)
 {
     if (!m_boats.Contains(boat))
     {
         throw new ArgumentException("That boat doesn't exist");
     }
     else
     {
         m_boats.Remove(boat);
     }
 }
Beispiel #7
0
        public void UpdateBoat(double length, BoatCategory category, int id)
        {
            Boat boatToRegister = new Boat(length, category, id);

            foreach (Boat boat in m_boats)
            {
                if (boat.BoatId == boatToRegister.BoatId)
                {
                    throw new InvalidOperationException("Boat is already registered");
                }
            }
            m_boats.Add(boatToRegister);
        }
Beispiel #8
0
        public void RegisterBoat(double length, BoatCategory category)
        {
            Random random = new Random();
            int boatId = random.Next(0, 100);

            //Make sure member ID is unique
            while (true)
            {
                foreach (Boat boat in m_boats)
                {
                    if (boat.BoatId == boatId)
                    {
                        continue;
                    }
                }
                break;
            }
            Boat boatToRegister = new Boat(length, category, boatId);
            m_boats.Add(boatToRegister);
        }