public void NotifyObservers(Object form, RouteRequestEventArgs args) { if (RouteRequestEvent != null) { RouteRequestEvent(form, args); } }
protected void EmitRouteEvent(Object sender, RouteRequestEventArgs args) { if (RouteRequestEvent != null) { RouteRequestEvent(sender, args); } }
public override List <Link> FindShortestRouteBetween(string fromCity, string toCity, TransportModes mode) { RouteRequestEventArgs routeRequestEventArgs = new RouteRequestEventArgs(fromCity, toCity, mode); if (RouteRequestEvent != null) { RouteRequestEvent(this, routeRequestEventArgs); } var citiesBetween = FindCitiesBetween(fromCity, toCity); if (citiesBetween == null || citiesBetween.Count < 1 || routes == null || routes.Count < 1) { return(null); } var source = citiesBetween[0]; var target = citiesBetween[citiesBetween.Count - 1]; Dictionary <City, double> dist; Dictionary <City, City> previous; var q = FillListOfNodes(citiesBetween, out dist, out previous); dist[source] = 0.0; // the actual algorithm previous = SearchShortestPath(mode, q, dist, previous); // create a list with all cities on the route var citiesOnRoute = GetCitiesOnRoute(source, target, previous); // prepare final list if links return(FindPath(citiesOnRoute, mode)); }
public void LogRouteRequests(object _sender, RouteRequestEventArgs _e) { setCityRequests(_e.ToCity); Console.WriteLine("Current Request State"); Console.WriteLine("---------------------"); foreach (KeyValuePair<City, int> entry in DictionaryCities) Console.WriteLine("ToCity: {0} has been requested {1} times", entry.Key.Name, entry.Value); }
public void LogRouteRequests(object sender, RouteRequestEventArgs args) { if (!requestCountList.ContainsKey(args.FromCity.Name)) requestCountList.Add(args.FromCity.Name, 0); if (requestCountList.ContainsKey(args.ToCity.Name)) requestCountList[args.ToCity.Name]++; else requestCountList.Add(args.ToCity.Name, 1); Status(); }
// Define what actions to take when the event is raised. public void LogRouteRequests(object sender, RouteRequestEventArgs e) { if (!(CityRequests.ContainsKey(e.ToCity))) { CityRequests[e.ToCity] = 1; } else { int number; CityRequests.TryGetValue(e.ToCity, out number); number++; CityRequests[e.ToCity] = number; } }
public void LogRouteRequests(object sender, RouteRequestEventArgs e) { if (e.ToCity != null) { string toCityLowered = e.ToCity.ToLower(); if (routeCounter.ContainsKey(toCityLowered)) { routeCounter[toCityLowered]++; } else { routeCounter[toCityLowered] = 1; } } }
public void OnRaiseRouteRequestEvent(RouteRequestEventArgs routeRequestEventArgs) { // Make a temporary copy of the event to avoid possibility of // a race condition if the last subscriber unsubscribes // immediately after the null check and before the event is raised. RouteRequestHandler handler = RouteRequestEvent; // Event will be null if there are no subscribers if (handler != null) { // Format the string to send inside the CustomEventArgs parameter //routeRequestEventArgs.FromCity += String.Format("bla"); //routeRequestEventArgs.ToCity += String.Format("Zürich"); // Use the () operator to raise the event. handler(this, routeRequestEventArgs); } }
public void LogRouteRequests(object sender, RouteRequestEventArgs args) { string toCity = args.ToCity.Name; if (requests.ContainsKey(toCity)) { requests[toCity] += 1; } else { requests.Add(args.ToCity.Name, 1); } Console.WriteLine("Current Request state"); Console.WriteLine("---------------------"); foreach(string cityName in requests.Keys) { Console.WriteLine("ToCity: {0} has been requested {1} times", cityName, GetCityRequests(cityName)); } Console.WriteLine(); }
public void LogRouteRequests(object sender, RouteRequestEventArgs args) { if (requests.ContainsKey(args.ToCity)) { requests[args.ToCity] += 1; } else { requests.Add(args.ToCity, 1); } Console.WriteLine("Current Request State"); Console.WriteLine("---------------------"); foreach (var r in requests) { Console.WriteLine("ToCity: ${r.Key.Name} has been requested ${r.Value} times"); } }
/// <summary> /// observer: increases number of requests for city /// if city hasn't been requested before, new entry in CityRequests is made /// </summary> public void LogRouteRequests(object sender, RouteRequestEventArgs args) { string toCity = args.ToCity.Name; if (CityRequests.ContainsKey(toCity)) { CityRequests[toCity] += 1; } else { CityRequests.Add(args.ToCity.Name, 1); } Console.WriteLine(); Console.WriteLine("Current Request State"); Console.WriteLine("---------------------"); foreach (string city in CityRequests.Keys) { Console.WriteLine("ToCity: {0} has been requested {1} times.", city, CityRequests[city]); } }
public void LogRouteRequests(object sender, RouteRequestEventArgs e) { if (count.ContainsKey(e.ToCity)) { count[e.ToCity]++; } else { count[e.ToCity] = 1; } Console.WriteLine("Current Request State"); Console.WriteLine("---------------------"); foreach (var pair in count) { Console.WriteLine("ToCity: " + pair.Key.Name + " has been requested " + pair.Value + " times"); } Console.WriteLine(); }
public void LogRouteRequests(object sender, RouteRequestEventArgs e) { try { count[e.ToCity]++; } catch { count[e.ToCity] = 1; } Console.WriteLine("Current Request State"); Console.WriteLine("---------------------"); foreach (var pair in count) { Console.WriteLine("ToCity: " + pair.Key + " has been requested " + pair.Value + " times"); } Console.WriteLine(); }
public void LogRouteRequests(object sender, RouteRequestEventArgs e) { Console.WriteLine("test"); if (searchList.ContainsKey(e.ToCity.Name)) { searchList[e.ToCity.Name] += 1; } else { searchList.Add(e.ToCity.Name, 1); } Console.WriteLine("Current Request State"); Console.WriteLine("---------------------"); // foreach (ListKeyValuePair<string, int> entry in search) foreach (var entry in searchList) { Console.WriteLine("ToCity: " + entry.Key + " has been requested " + entry.Value + "time(s)"); } }
/// <summary> /// THE EVENT HANDLER: it must have the same signature as the event's delegate. /// </summary> /// <param name="source"></param> /// <param name="e"></param> public void LogRouteRequests(object source, RouteRequestEventArgs e) { var key = e.ToCity; var value = GetCityRequests(key); if (source == null || e == null) { //throw exception } if (RequestStatistics.ContainsKey(key)) { //key already exists RequestStatistics[key] = value + 1; } else { //key doesnt exist RequestStatistics.Add(key, value + 1); } //Zählerstände auf Konsole ausgeben Console.WriteLine($"ToCity: {key.Name} has been requested {(GetCityRequests(key))} times"); }
public void TestForCorrectEventArgsWithNotFoundCities(object sender, RouteRequestEventArgs e) { Assert.AreEqual("doesNotExist", e.FromCity.Name); Assert.AreEqual("either", e.ToCity.Name); }
public void TestForCorrectEventArgsWithFoundCities(object sender, RouteRequestEventArgs e) { Assert.AreEqual("Bern", e.FromCity.Name); Assert.AreEqual("Zürich", e.ToCity.Name); }