public void AddLineStation(DO.LineStation lineStation) { var lineStationList = XmlTools.LoadListFromXMLSerializer <DO.LineStation>(lineStationsPath); var ls = lineStationList.FirstOrDefault(s => s.Station == lineStation.Station && s.LineId == lineStation.LineId); if (ls != null && !ls.IsDeleted) { throw new DO.BadLineStationException(lineStation.Station, lineStation.LineId, "Duplicate line station"); } var line = GetLine(lineStation.LineId); foreach (var s in lineStationList) { if (s.LineId == line.Id) { if (lineStation.PrevStation == s.Station) { lineStation.LineStationIndex = s.LineStationIndex + 1; continue; } if (lineStation.LineStationIndex != -1) { s.LineStationIndex += 1; UpdateLineStation(s); } } } lineStationList.Add(lineStation); XmlTools.SaveListToXMLSerializer(lineStationList, lineStationsPath); }
public IEnumerable <DO.LineTrip> GetAllLineTrips() { var lineTripList = XmlTools.LoadListFromXMLSerializer <DO.LineTrip>(linesTripPath); return(from lineTrip in lineTripList select lineTrip); }
public IEnumerable <DO.LineTrip> GetAllLineTripsBy(Predicate <DO.LineTrip> predicate) { var lineTripList = XmlTools.LoadListFromXMLSerializer <DO.LineTrip>(linesTripPath); return(from lineTrip in lineTripList where predicate(lineTrip) select lineTrip); }
public IEnumerable <DO.Line> GetAllLinesBy(Predicate <DO.Line> predicate) { var lineList = XmlTools.LoadListFromXMLSerializer <DO.Line>(linesPath); return(from line in lineList where predicate(line) && !line.IsDeleted select line); }
public IEnumerable <DO.Station> GetAllStationsBy(Predicate <DO.Station> predicate) { var stationList = XmlTools.LoadListFromXMLSerializer <DO.Station>(stationPath); return(from station in stationList where predicate(station) && !station.IsDeleted select station); }
public IEnumerable <DO.User> GetAllUsersBy(Predicate <DO.User> predicate) { var userList = XmlTools.LoadListFromXMLSerializer <DO.User>(usersPath); return(from user in userList where predicate(user) && !user.IsDeleted select user); }
public IEnumerable <DO.LineStation> GetAllLineStation() { var lineStationList = XmlTools.LoadListFromXMLSerializer <DO.LineStation>(lineStationsPath); return(from lineStation in lineStationList where !lineStation.IsDeleted select lineStation); }
public IEnumerable <DO.AdjacentStations> GetAllAdjacentStationsBy(Predicate <DO.AdjacentStations> predicate) { var adjacentStationsList = XmlTools.LoadListFromXMLSerializer <DO.AdjacentStations>(adjacentStationsPath); return(from adst in adjacentStationsList where !adst.IsDeleted && predicate(adst) select adst); }
public IEnumerable <DO.LineStation> GetAllLineStationBy(Predicate <DO.LineStation> predicate) { var lineStationList = XmlTools.LoadListFromXMLSerializer <DO.LineStation>(lineStationsPath); return(from lineStation in lineStationList where predicate(lineStation) && !lineStation.IsDeleted orderby lineStation.LineId, lineStation.LineStationIndex select lineStation); }
public void AddStation(DO.Station station) { var stationList = XmlTools.LoadListFromXMLSerializer <DO.Station>(stationPath); var st = stationList.Find(s => s.Code == station.Code); if (st != null && !station.IsDeleted) { throw new DO.BadStationException(station.Code, "Duplicate Station"); } stationList.Add(station); XmlTools.SaveListToXMLSerializer(stationList, stationPath); }
public void AddUser(DO.User newUser) { var userList = XmlTools.LoadListFromXMLSerializer <DO.User>(usersPath); var user = userList.FirstOrDefault(u => u.UserName == newUser.UserName); if (user != null && !newUser.IsDeleted) { throw new DO.BadUsernameException(newUser.UserName, "Duplicate user username"); } userList.Add(newUser); XmlTools.SaveListToXMLSerializer(userList, usersPath); }
public DO.AdjacentStations GetAdjacentStations(int station1, int station2) { var adjacentStationsList = XmlTools.LoadListFromXMLSerializer <DO.AdjacentStations>(adjacentStationsPath); var adst = adjacentStationsList.Find(s => s.Station1 == station1 && s.Station2 == station2); if (adst != null && !adst.IsDeleted) { return(adst); } throw new DO.BadAdjacentStationsException(station1, station2, "Adjacent stations not found"); }
public DO.User GetUser(string userName) { var userList = XmlTools.LoadListFromXMLSerializer <DO.User>(usersPath); var user = userList.Find(u => u.UserName == userName); if (user != null && !user.IsDeleted) { return(user); } else { throw new DO.BadUsernameException(userName, $"User not found {userName}"); } }
public void RemoveLineStationOnRemoveline(DO.LineStation lineStation) { var lineStationList = XmlTools.LoadListFromXMLSerializer <DO.LineStation>(lineStationsPath); var ls = lineStationList.Find(s => s.Station == lineStation.Station && s.LineId == lineStation.LineId); if (ls != null && !ls.IsDeleted) { lineStationList.Remove(ls); ls.IsDeleted = true; lineStationList.Add(ls); XmlTools.SaveListToXMLSerializer(lineStationList, lineStationsPath); } }
public DO.Line GetLine(int lineId) { var lineList = XmlTools.LoadListFromXMLSerializer <DO.Line>(linesPath); var line = lineList.Find(l => l.Id == lineId); if (line != null && !line.IsDeleted) { return(line); } else { throw new DO.BadLineException(lineId, "Line not found"); } }
public DO.LineTrip GetLineTrip(int id) { var lineTripList = XmlTools.LoadListFromXMLSerializer <DO.LineTrip>(linesTripPath); var lineTrip = lineTripList.Find(b => b.Id == id); if (lineTrip != null) { return(lineTrip); } else { throw new DO.BadLineTripException(id, "line trip not found"); } }
public DO.Station GetStation(int code) { var stationList = XmlTools.LoadListFromXMLSerializer <DO.Station>(stationPath); var station = stationList.Find(s => s.Code == code); if (station != null && !station.IsDeleted) { return(station); } else { throw new DO.BadStationException(code, "Station not found"); } }
public DO.LineStation GetLineStation(int stationCode, int lineId) { var lineStationList = XmlTools.LoadListFromXMLSerializer <DO.LineStation>(lineStationsPath); var lineStation = lineStationList.Find(s => s.Station == stationCode && s.LineId == lineId); if (lineStation != null && !lineStation.IsDeleted) { return(lineStation); } else { throw new DO.BadLineStationException(stationCode, lineId, "Station Line not found"); } }
public void UpdateLine(DO.Line line) { var lineList = XmlTools.LoadListFromXMLSerializer <DO.Line>(linesPath); var lineToUp = lineList.Find(l => l.Id == line.Id); if (lineToUp != null && !lineToUp.IsDeleted) { lineList.Remove(lineToUp); lineList.Add(line); XmlTools.SaveListToXMLSerializer(lineList, linesPath); } else { throw new DO.BadLineException(line.Id, "Line not found"); } }
public void UpdateStation(DO.Station station) { var stationList = XmlTools.LoadListFromXMLSerializer <DO.Station>(stationPath); var stationToUp = stationList.Find(s => s.Code == station.Code); if (stationToUp != null && !stationToUp.IsDeleted) { stationList.Remove(stationToUp); stationList.Add(station); XmlTools.SaveListToXMLSerializer(stationList, stationPath); } else { throw new DO.BadStationException(station.Code, "Station not found"); } }
public void UpdateUser(DO.User user) { var userList = XmlTools.LoadListFromXMLSerializer <DO.User>(usersPath); var findUser = userList.Find(u => u.UserName == user.UserName); if (findUser != null && !findUser.IsDeleted) { userList.Remove(findUser); userList.Add(user); XmlTools.SaveListToXMLSerializer(userList, usersPath); } else { throw new DO.BadUsernameException(user.UserName, $"User not found {user.UserName}"); } }
public int AddLineTrip(DO.LineTrip lineTrip) { var counters = XmlTools.LoadListFromXMLSerializer <int>(countersPath); DalApi.Counters.LineTripCounter = counters[1]; lineTrip.Id = DalApi.Counters.LineTripCounter; counters[1] = lineTrip.Id; XmlTools.SaveListToXMLSerializer(counters, countersPath); var lineTripList = XmlTools.LoadListFromXMLSerializer <DO.LineTrip>(linesTripPath); lineTripList.Add(lineTrip); XmlTools.SaveListToXMLSerializer(lineTripList, linesTripPath); return(lineTrip.Id); }
public void AddAdjacentStations(DO.AdjacentStations adjacentStations) { var adjacentStationsList = XmlTools.LoadListFromXMLSerializer <DO.AdjacentStations>(adjacentStationsPath); var adst = adjacentStationsList.Find(s => s.Station1 == adjacentStations.Station1 && s.Station2 == adjacentStations.Station2); if (adst != null) { if (!adst.IsDeleted) { throw new DO.BadAdjacentStationsException(adjacentStations.Station1, adjacentStations.Station2, "Duplicate adjacent stations"); } } adjacentStationsList.Add(adjacentStations); XmlTools.SaveListToXMLSerializer(adjacentStationsList, adjacentStationsPath); }
public void UpdateLineStation(DO.LineStation lineStation) { var lineStationList = XmlTools.LoadListFromXMLSerializer <DO.LineStation>(lineStationsPath); var ls = lineStationList.Find(s => s.Station == lineStation.Station && s.LineId == lineStation.LineId); if (ls != null && !ls.IsDeleted) { lineStationList.Remove(ls); lineStationList.Add(lineStation); XmlTools.SaveListToXMLSerializer(lineStationList, lineStationsPath); } else { throw new DO.BadLineStationException(lineStation.Station, lineStation.LineId, "Station line not found"); } }
public void RemoveLine(DO.Line line) { var lineList = XmlTools.LoadListFromXMLSerializer <DO.Line>(linesPath); var lineToRem = lineList.Find(l => l.Id == line.Id); if (lineToRem != null && !lineToRem.IsDeleted) { GetAllLineStationBy(ls => ls.LineId == lineToRem.Id).ToList().ForEach(RemoveLineStationOnRemoveline); lineList.Remove(lineToRem); lineToRem.IsDeleted = true; lineList.Add(lineToRem); XmlTools.SaveListToXMLSerializer(lineList, linesPath); } else { throw new DO.BadLineException(line.Id, "Line not found"); } }
public int AddLine(DO.Line line) { var counters = XmlTools.LoadListFromXMLSerializer <int>(countersPath); DalApi.Counters.LineCounter = counters[0]; line.Id = DalApi.Counters.LineCounter; counters[0] = line.Id; XmlTools.SaveListToXMLSerializer(counters, countersPath); var lineList = XmlTools.LoadListFromXMLSerializer <DO.Line>(linesPath); lineList.Add(line); XmlTools.SaveListToXMLSerializer(lineList, linesPath); return(line.Id); }
public void UpdateAdjacentStations(DO.AdjacentStations adjacentStations) { var adjacentStationsList = XmlTools.LoadListFromXMLSerializer <DO.AdjacentStations>(adjacentStationsPath); var adst = adjacentStationsList.Find(s => s.Station1 == adjacentStations.Station1 && s.Station2 == adjacentStations.Station2); if (adst != null && !adst.IsDeleted) { adjacentStationsList.Remove(adst); adjacentStationsList.Add(adjacentStations); XmlTools.SaveListToXMLSerializer(adjacentStationsList, adjacentStationsPath); } else { throw new DO.BadAdjacentStationsException(adjacentStations.Station1, adjacentStations.Station2 , "Adjacent Stations not found"); } }
public void RemoveStation(DO.Station station) { var stationList = XmlTools.LoadListFromXMLSerializer <DO.Station>(stationPath); var stationToRem = stationList.Find(s => s.Code == station.Code); if (stationToRem != null && !stationToRem.IsDeleted) { GetAllLineStationBy(s => s.Station == stationToRem.Code).ToList().ForEach(RemoveLineStation); GetAllAdjacentStationsBy(s => s.Station1 == stationToRem.Code || s.Station2 == stationToRem.Code).ToList().ForEach(RemoveAdjacentStations); stationList.Remove(stationToRem); stationToRem.IsDeleted = true; stationList.Add(stationToRem); XmlTools.SaveListToXMLSerializer(stationList, stationPath); } else { throw new DO.BadStationException(station.Code, "Station not found"); } }