コード例 #1
0
        public async Task <IList <MetroTransitVehicle> > GetBusLocationsAsync(MetroTransitRoute route)
        {
            Uri    uri  = new Uri($"http://svc.metrotransit.org/NexTrip/VehicleLocations/{route.Id}?format=json");
            string body = await GetBodyForUriAsync(uri);

            IList <MetroTransitVehicle> buses = JsonConvert.DeserializeObject <List <MetroTransitVehicle> >(body);

            return(buses);
        }
コード例 #2
0
        public async Task <IList <MetroTransitStop> > GetStopsForDirectionAsync(MetroTransitRoute route, MetroTransitDirection direction)
        {
            Uri    uri  = new Uri($"http://svc.metrotransit.org/NexTrip/Stops/{route.Id}/{(int)direction}?format=json");
            string body = await GetBodyForUriAsync(uri);

            IList <MetroTransitStop> stops = JsonConvert.DeserializeObject <List <MetroTransitStop> >(body);

            return(stops);
        }
コード例 #3
0
        public async Task <IList <MetroTransitDirection> > GetDirectionForRouteAsync(MetroTransitRoute route)
        {
            Uri    uri  = new Uri($"http://svc.metrotransit.org/NexTrip/Directions/{route.Id}?format=json");
            string body = await GetBodyForUriAsync(uri);

            JArray directions = JArray.Parse(body);

            return(directions.Children()
                   .Select(x => (MetroTransitDirection)(int)x["Value"])
                   .ToList());
        }
コード例 #4
0
 public static IList <MetroTransitDirection> GetDirections(this MetroTransitRoute route)
 {
     return(MetroTransitClient.Client.GetDirectionForRouteAsync(route).Result);
 }
コード例 #5
0
 public static IList <MetroTransitVehicle> GetVehicles(this MetroTransitRoute route)
 {
     return(MetroTransitClient.Client.GetBusLocationsAsync(route).Result);
 }
コード例 #6
0
 public static IList <MetroTransitStop> GetStops(this MetroTransitRoute route, MetroTransitDirection direction)
 {
     return(MetroTransitClient.Client.GetStopsForDirectionAsync(route, direction).Result);
 }