Class: IRail::API::NMBS

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby-irail/packages/nmbs/api.rb

Constant Summary collapse

API_URL =
"http://api.irail.be"
STATIONS_URI =
"stations/"
CONNECTIONS_URI =
"connections/"
VEHICLE_URI =
"vehicle/"

Instance Method Summary collapse

Instance Method Details

#connections(origin_station, destination_station, options = {}) ⇒ Object



14
15
16
17
18
# File 'lib/ruby-irail/packages/nmbs/api.rb', line 14

def connections(origin_station, destination_station, options = {})
  connections_url = build_connections_url
  xml_connections = get_connections(connections_url, origin_station, destination_station, options)
  IRail::NMBS::DocumentParser.parse_connections(xml_connections)
end

#get_connections(connections_url, origin_station, destination_station, options = {}) ⇒ Object



31
32
33
34
# File 'lib/ruby-irail/packages/nmbs/api.rb', line 31

def get_connections(connections_url, origin_station, destination_station, options = {})
  options = build_connections_option_hash(origin_station, destination_station, options)
  IRail::Request.get(connections_url, options)
end

#get_station_list(station_list_url, options = {}) ⇒ Object



26
27
28
29
# File 'lib/ruby-irail/packages/nmbs/api.rb', line 26

def get_station_list(station_list_url, options = {})
  options = { :query => options } if options.any?
  IRail::Request.get(station_list_url, options)
end

#get_vehicle(vehicle_url, vehicle_id, options = {}) ⇒ Object



36
37
38
39
# File 'lib/ruby-irail/packages/nmbs/api.rb', line 36

def get_vehicle(vehicle_url, vehicle_id, options = {})
  options = build_vehicle_option_hash(vehicle_id, options)
  IRail::Request.get(vehicle_url, options)
end

#stations(options = {}) ⇒ Object



8
9
10
11
12
# File 'lib/ruby-irail/packages/nmbs/api.rb', line 8

def stations(options = {})
  station_list_url = build_station_list_url
  xml_station_list = get_station_list(station_list_url, options)
  IRail::NMBS::DocumentParser.parse_stations(xml_station_list)
end

#vehicle(vehicle_id, options = {}) ⇒ Object



20
21
22
23
24
# File 'lib/ruby-irail/packages/nmbs/api.rb', line 20

def vehicle(vehicle_id, options = {})
  vehicle_url = build_vehicle_url
  xml_vehicle = get_vehicle(vehicle_url, vehicle_id, options)
  IRail::NMBS::DocumentParser.parse_vehicle(xml_vehicle)
end