national_rail_wrapper 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +6 -2
- data/README.md +0 -1
- data/lib/national_rail_wrapper.rb +3 -0
- data/lib/national_rail_wrapper/feeds/knowledge_base/client.rb +28 -12
- data/lib/national_rail_wrapper/feeds/knowledge_base/parsers/incidents.rb +26 -0
- data/lib/national_rail_wrapper/feeds/knowledge_base/parsers/national_service_indicators.rb +44 -0
- data/lib/national_rail_wrapper/feeds/knowledge_base/{response_parser → parsers}/public_promotions.rb +0 -0
- data/lib/national_rail_wrapper/feeds/knowledge_base/parsers/stations.rb +111 -0
- data/lib/national_rail_wrapper/feeds/knowledge_base/{response_parser → parsers}/ticket_restrictions.rb +0 -0
- data/lib/national_rail_wrapper/feeds/knowledge_base/{response_parser → parsers}/ticket_types.rb +0 -0
- data/lib/national_rail_wrapper/feeds/knowledge_base/parsers/tocs.rb +36 -0
- data/lib/national_rail_wrapper/version.rb +1 -1
- data/national_rail_wrapper.gemspec +1 -0
- metadata +23 -9
- data/lib/national_rail_wrapper/feeds/knowledge_base/response_parser/incidents.rb +0 -0
- data/lib/national_rail_wrapper/feeds/knowledge_base/response_parser/national_services_indicators.rb +0 -0
- data/lib/national_rail_wrapper/feeds/knowledge_base/response_parser/stations.rb +0 -0
- data/lib/national_rail_wrapper/feeds/knowledge_base/response_parser/tocs.rb +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 60858d6a68198583863a9aa97c96fee27c4bd3a29f9a9e6e12dbe1779f9654ae
|
4
|
+
data.tar.gz: bfdff1ee26952b22c0147bae89dbe100748359cf4045fa88d172fb4ffb922f63
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2678154e89067563a21d1c4a188fcad883eaa488c0a145d3739bb7f4ad68117ee9240e1a5002bb898f50dcaf8de13cb1d0e7deeb54178569bafc5ce2078f4d57
|
7
|
+
data.tar.gz: 80ab35617e5f152eb21de8c74a7598fc10f4e32298c2a476feeebd985febb23f2947b709310a6907059c80334bdf9d0a9b08f18bd2e3073fc133d5cd9a4552cf
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
national_rail_wrapper (0.1.
|
4
|
+
national_rail_wrapper (0.1.2)
|
5
|
+
nokogiri
|
5
6
|
ox
|
6
7
|
typhoeus
|
7
8
|
|
@@ -13,8 +14,11 @@ GEM
|
|
13
14
|
diff-lcs (1.3)
|
14
15
|
ethon (0.12.0)
|
15
16
|
ffi (>= 1.3.0)
|
16
|
-
ffi (1.11.
|
17
|
+
ffi (1.11.3)
|
17
18
|
method_source (0.9.2)
|
19
|
+
mini_portile2 (2.4.0)
|
20
|
+
nokogiri (1.10.5)
|
21
|
+
mini_portile2 (~> 2.4.0)
|
18
22
|
ox (2.11.0)
|
19
23
|
pry (0.12.2)
|
20
24
|
coderay (~> 1.1.0)
|
data/README.md
CHANGED
@@ -10,11 +10,14 @@ require_relative "national_rail_wrapper/feeds/knowledge_base/client"
|
|
10
10
|
require_relative "national_rail_wrapper/feeds/knowledge_base/requests/base"
|
11
11
|
require_relative "national_rail_wrapper/feeds/knowledge_base/requests/incidents"
|
12
12
|
require_relative "national_rail_wrapper/feeds/knowledge_base/requests/national_service_indicators"
|
13
|
+
require_relative "national_rail_wrapper/feeds/knowledge_base/parsers/national_service_indicators"
|
13
14
|
require_relative "national_rail_wrapper/feeds/knowledge_base/requests/public_promotions"
|
14
15
|
require_relative "national_rail_wrapper/feeds/knowledge_base/requests/stations"
|
16
|
+
require_relative "national_rail_wrapper/feeds/knowledge_base/parsers/stations"
|
15
17
|
require_relative "national_rail_wrapper/feeds/knowledge_base/requests/ticket_restrictions"
|
16
18
|
require_relative "national_rail_wrapper/feeds/knowledge_base/requests/ticket_types"
|
17
19
|
require_relative "national_rail_wrapper/feeds/knowledge_base/requests/tocs"
|
20
|
+
require_relative "national_rail_wrapper/feeds/knowledge_base/parsers/tocs"
|
18
21
|
|
19
22
|
require_relative "national_rail_wrapper/feeds/historical_service_performance/client"
|
20
23
|
require_relative "national_rail_wrapper/feeds/historical_service_performance/requests/base"
|
@@ -6,47 +6,63 @@ module NationalRailWrapper
|
|
6
6
|
def incidents(parse_result: true)
|
7
7
|
request = KnowledgeBase::Requests::Incidents.new.run(auth_token)
|
8
8
|
|
9
|
-
parse_result ? Ox.parse(request.response_body).to_json : request.response_body
|
9
|
+
parse_result ? Ox.parse(request.response_body).to_json : request.response_body
|
10
10
|
end
|
11
11
|
|
12
12
|
def national_service_indicators(parse_result: true)
|
13
|
-
request = KnowledgeBase::Requests::NationalServiceIndicators.new.run(auth_token)
|
13
|
+
request = KnowledgeBase::Requests::NationalServiceIndicators.new.run(auth_token).response_body
|
14
14
|
|
15
|
-
parse_result
|
15
|
+
if parse_result
|
16
|
+
KnowledgeBase::Parsers::NationalServiceIndicators.new(request).to_json
|
17
|
+
else
|
18
|
+
request.response_body
|
19
|
+
end
|
16
20
|
end
|
17
21
|
|
18
22
|
def public_promotions(parse_result: true)
|
19
23
|
request = KnowledgeBase::Requests::PublicPromotions.new.run(auth_token)
|
20
24
|
|
21
|
-
parse_result ?
|
25
|
+
parse_result ? response.to_json : request.response_body
|
22
26
|
end
|
23
27
|
|
24
28
|
def stations(parse_result: true)
|
25
|
-
request = KnowledgeBase::Requests::Stations.new.run(auth_token)
|
29
|
+
request = KnowledgeBase::Requests::Stations.new.run(auth_token).response_body
|
26
30
|
|
27
|
-
parse_result
|
31
|
+
if parse_result
|
32
|
+
KnowledgeBase::Parsers::Stations.new(request).to_json
|
33
|
+
else
|
34
|
+
request.response_body
|
35
|
+
end
|
28
36
|
end
|
29
37
|
|
30
38
|
def ticket_restrictions(parse_result: true)
|
31
|
-
request = KnowledgeBase::Requests::TicketRestrictions.new.run(auth_token)
|
39
|
+
request = KnowledgeBase::Requests::TicketRestrictions.new.run(auth_token)
|
32
40
|
|
33
|
-
parse_result ? Ox.parse(request.response_body).to_json : request.response_body
|
41
|
+
parse_result ? Ox.parse(request.response_body).to_json : request.response_body
|
34
42
|
end
|
35
43
|
|
36
44
|
def ticket_types(parse_result: true)
|
37
45
|
request = KnowledgeBase::Requests::TicketTypes.new.run(auth_token)
|
38
|
-
|
39
|
-
parse_result ? Ox.parse(request.response_body).to_json : request.response_body
|
46
|
+
|
47
|
+
parse_result ? Ox.parse(request.response_body).to_json : request.response_body
|
40
48
|
end
|
41
49
|
|
42
50
|
def tocs(parse_result: true)
|
43
|
-
request = KnowledgeBase::Requests::Tocs.new.run(auth_token)
|
51
|
+
request = KnowledgeBase::Requests::Tocs.new.run(auth_token).response_body
|
44
52
|
|
45
|
-
parse_result
|
53
|
+
if parse_result
|
54
|
+
KnowledgeBase::Parsers::Tocs.new(request).to_json
|
55
|
+
else
|
56
|
+
request.response_body
|
57
|
+
end
|
46
58
|
end
|
47
59
|
|
48
60
|
private
|
49
61
|
|
62
|
+
def parse_result(endpoint, response)
|
63
|
+
"KnowledgeBase::Parsers::#{endpoint.camelize}".constantize.new(request).to_json
|
64
|
+
end
|
65
|
+
|
50
66
|
def auth_token
|
51
67
|
return @auth_token if !@auth_token.nil? && @auth_token_expires_at >= Time.now
|
52
68
|
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module NationalRailWrapper
|
2
|
+
module Feeds
|
3
|
+
module KnowledgeBase
|
4
|
+
module Parsers
|
5
|
+
class Incidents
|
6
|
+
def initialize(data)
|
7
|
+
@data = data
|
8
|
+
end
|
9
|
+
|
10
|
+
def to_json
|
11
|
+
options = Nokogiri::XML::ParseOptions.new.nonet.noent.noblanks
|
12
|
+
doc = Nokogiri::XML.parse(@data, nil, nil, options)
|
13
|
+
doc.xpath('/xmlns:NSI/xmlns:TOC').map do |toc_node|
|
14
|
+
{
|
15
|
+
|
16
|
+
}
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
private
|
21
|
+
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
module NationalRailWrapper
|
2
|
+
module Feeds
|
3
|
+
module KnowledgeBase
|
4
|
+
module Parsers
|
5
|
+
class NationalServiceIndicators
|
6
|
+
def initialize(data)
|
7
|
+
@data = data
|
8
|
+
end
|
9
|
+
|
10
|
+
def to_json
|
11
|
+
options = Nokogiri::XML::ParseOptions.new.nonet.noent.noblanks
|
12
|
+
doc = Nokogiri::XML.parse(@data, nil, nil, options)
|
13
|
+
doc.xpath('/xmlns:NSI/xmlns:TOC').map do |toc_node|
|
14
|
+
{
|
15
|
+
toc_code: toc_node.xpath('./xmlns:TocCode').first&.content,
|
16
|
+
toc_name: toc_node.xpath('./xmlns:TocName').first&.content,
|
17
|
+
status: toc_node.xpath('./xmlns:Status').first&.content,
|
18
|
+
status_image: toc_node.xpath('./xmlns:StatusImage').first&.content,
|
19
|
+
status_description: toc_node.xpath('./xmlns:StatusDescription').first&.content,
|
20
|
+
service_groups: service_groups(toc_node.xpath('./xmlns:ServiceGroup')),
|
21
|
+
twitter_account: toc_node.xpath('./xmlns:TwitterAccount').first&.content,
|
22
|
+
additional_info: toc_node.xpath('./xmlns:AdditionalInfo').first&.content,
|
23
|
+
custom_additional_info: toc_node.xpath('./xmlns:CustomAdditionalInfo').first&.content
|
24
|
+
}
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
private
|
29
|
+
|
30
|
+
def service_groups(service_groups)
|
31
|
+
service_groups.map do |service_group|
|
32
|
+
{
|
33
|
+
group_name: service_group.xpath('./xmlns:GroupName').first&.content,
|
34
|
+
current_distruption: service_group.xpath('./xmlns:CurrentDisruption').first&.content,
|
35
|
+
custom_detail: service_group.xpath('./xmlns:CustomDetail').first&.content,
|
36
|
+
custom_url: service_group.xpath('./xmlns:CustomURL').first&.content
|
37
|
+
}
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
data/lib/national_rail_wrapper/feeds/knowledge_base/{response_parser → parsers}/public_promotions.rb
RENAMED
File without changes
|
@@ -0,0 +1,111 @@
|
|
1
|
+
module NationalRailWrapper
|
2
|
+
module Feeds
|
3
|
+
module KnowledgeBase
|
4
|
+
module Parsers
|
5
|
+
class Stations
|
6
|
+
def initialize(data)
|
7
|
+
@data = data
|
8
|
+
end
|
9
|
+
|
10
|
+
def to_json
|
11
|
+
options = Nokogiri::XML::ParseOptions.new.nonet.noent.noblanks.huge
|
12
|
+
doc = Nokogiri::XML.parse(@data, nil, nil, options)
|
13
|
+
|
14
|
+
doc.xpath('/xmlns:StationList/xmlns:Station').map do |toc_node|
|
15
|
+
{
|
16
|
+
name: toc_node.xpath('./xmlns:Name')&.text,
|
17
|
+
crs_code: toc_node.css('CrsCode')&.text,
|
18
|
+
alternative_identifiers: toc_node.css('AlternativeIdentifiers')&.text,
|
19
|
+
sixteen_character_name: toc_node.css('SixteenCharacterName')&.text,
|
20
|
+
longitude: toc_node.css('Longitude')&.text,
|
21
|
+
latitude: toc_node.css('Latitude')&.text,
|
22
|
+
station_operator: toc_node.css('StationOperator')&.text,
|
23
|
+
staffing_level: toc_node.css('Staffing/StaffingLevel')&.text,
|
24
|
+
closed_circuit_television: toc_node.css('Staffing/ClosedCircuitTelevision')&.text,
|
25
|
+
station_facilities: station_facilities(toc_node.css('StationFacilities')),
|
26
|
+
# impaired_access: impaired_access(toc_node.css('ImpairedAccess'))
|
27
|
+
car_park: car_park(toc_node.css('CarPark'))
|
28
|
+
|
29
|
+
}
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
|
34
|
+
# national_location_code: toc_node.xpath('./xmlns:NationalLocationCode').first&.content,
|
35
|
+
# address: toc_node.xpath('./xmlns:Address').first&.content,
|
36
|
+
# postal_address: toc_node.xpath('./xmlns:PostalAddress').first&.content,
|
37
|
+
# #<add:A_5LineAddress> (mandatory) See section 2.4.1
|
38
|
+
|
39
|
+
# station_operator: toc_node.css('StationOperator').text, #
|
40
|
+
# Overall: toc_node.xpath('./xmlns:Overall').first&.content,
|
41
|
+
# InformationSystems: toc_node.xpath('./xmlns:InformationSystems').first&.content,
|
42
|
+
# cis: cis,
|
43
|
+
# fares: fares(toc_node.xpath('./xmlns:Fares').first),
|
44
|
+
# passenger_services: passenger_services,
|
45
|
+
# impaired_access: impaired_access,
|
46
|
+
# InterChange: inter_change,
|
47
|
+
# StationAlerts: toc_node.xpath('./xmlns:PostalAddress').first&.content,
|
48
|
+
# AlertText: toc_node.xpath('./xmlns:PostalAddress').first&.content,
|
49
|
+
# LastChangedDate: toc_node.xpath('./xmlns:PostalAddress').first&.content,
|
50
|
+
# car_park: car_park,
|
51
|
+
# opening_hours: opening_hours,
|
52
|
+
# contact_details: contact_details
|
53
|
+
|
54
|
+
private
|
55
|
+
|
56
|
+
def cis(toc_node)
|
57
|
+
end
|
58
|
+
|
59
|
+
def fares(fares)
|
60
|
+
|
61
|
+
end
|
62
|
+
|
63
|
+
def passenger_services(toc_node)
|
64
|
+
end
|
65
|
+
|
66
|
+
def station_facilities(node_set)
|
67
|
+
{
|
68
|
+
first_class_lounge: node_set.at('FirstClassLounge')&.text,
|
69
|
+
waiting_room: node_set.at('WaitingRoom')&.text,
|
70
|
+
trolleys: node_set.at('Trolleys')&.text,
|
71
|
+
station_buffet: node_set.at('StationBuffet')&.text,
|
72
|
+
toilets: node_set.at('Toilets')&.text,
|
73
|
+
baby_change: node_set.at('BabyChange')&.text,
|
74
|
+
showers: node_set.at('Showers')&.text,
|
75
|
+
# telephone: {
|
76
|
+
# exists:
|
77
|
+
# usage_type:
|
78
|
+
# },
|
79
|
+
wifi: node_set.at('WiFi')&.text,
|
80
|
+
post_box: node_set.at('BabyChange')&.text,
|
81
|
+
# tourist_information_office:
|
82
|
+
atm_machine: node_set.at('AtmMachine')&.text,
|
83
|
+
bureau_de_change: node_set.at('BureauDeChange')&.text,
|
84
|
+
shops: node_set.at('Shops')&.text
|
85
|
+
}
|
86
|
+
end
|
87
|
+
|
88
|
+
def impaired_access(toc_node)
|
89
|
+
end
|
90
|
+
|
91
|
+
def inter_change(toc_node)
|
92
|
+
end
|
93
|
+
|
94
|
+
def car_park(node_set)
|
95
|
+
{
|
96
|
+
name: node_set.at('Name')&.text,
|
97
|
+
spaces: node_set.at('Spaces')&.text
|
98
|
+
}
|
99
|
+
end
|
100
|
+
|
101
|
+
def opening_hours(toc_node)
|
102
|
+
end
|
103
|
+
|
104
|
+
def contact_details(toc_node)
|
105
|
+
end
|
106
|
+
|
107
|
+
end
|
108
|
+
end
|
109
|
+
end
|
110
|
+
end
|
111
|
+
end
|
File without changes
|
data/lib/national_rail_wrapper/feeds/knowledge_base/{response_parser → parsers}/ticket_types.rb
RENAMED
File without changes
|
@@ -0,0 +1,36 @@
|
|
1
|
+
module NationalRailWrapper
|
2
|
+
module Feeds
|
3
|
+
module KnowledgeBase
|
4
|
+
module Parsers
|
5
|
+
class Tocs
|
6
|
+
def initialize(data)
|
7
|
+
@data = data
|
8
|
+
end
|
9
|
+
|
10
|
+
def to_json
|
11
|
+
options = Nokogiri::XML::ParseOptions.new.nonet.noent.noblanks.huge
|
12
|
+
doc = Nokogiri::XML.parse(@data, nil, nil, options)
|
13
|
+
|
14
|
+
doc.xpath('/xmlns:StationList/xmlns:Station').map do |toc_node|
|
15
|
+
{
|
16
|
+
name: toc_node.xpath('./xmlns:Name')&.text,
|
17
|
+
crs_code: toc_node.css('CrsCode')&.text,
|
18
|
+
alternative_identifiers: toc_node.css('AlternativeIdentifiers')&.text,
|
19
|
+
sixteen_character_name: toc_node.css('SixteenCharacterName')&.text,
|
20
|
+
longitude: toc_node.css('Longitude')&.text,
|
21
|
+
latitude: toc_node.css('Latitude')&.text,
|
22
|
+
station_operator: toc_node.css('StationOperator')&.text,
|
23
|
+
staffing_level: toc_node.css('Staffing/StaffingLevel')&.text,
|
24
|
+
closed_circuit_television: toc_node.css('Staffing/ClosedCircuitTelevision')&.text,
|
25
|
+
station_facilities: station_facilities(toc_node.css('StationFacilities')),
|
26
|
+
# impaired_access: impaired_access(toc_node.css('ImpairedAccess'))
|
27
|
+
car_park: car_park(toc_node.css('CarPark'))
|
28
|
+
|
29
|
+
}
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: national_rail_wrapper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Marc Best
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-04-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: typhoeus
|
@@ -38,6 +38,20 @@ dependencies:
|
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: nokogiri
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: bundler
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -122,6 +136,13 @@ files:
|
|
122
136
|
- lib/national_rail_wrapper/feeds/historical_service_performance/requests/service_details.rb
|
123
137
|
- lib/national_rail_wrapper/feeds/historical_service_performance/requests/service_metrics.rb
|
124
138
|
- lib/national_rail_wrapper/feeds/knowledge_base/client.rb
|
139
|
+
- lib/national_rail_wrapper/feeds/knowledge_base/parsers/incidents.rb
|
140
|
+
- lib/national_rail_wrapper/feeds/knowledge_base/parsers/national_service_indicators.rb
|
141
|
+
- lib/national_rail_wrapper/feeds/knowledge_base/parsers/public_promotions.rb
|
142
|
+
- lib/national_rail_wrapper/feeds/knowledge_base/parsers/stations.rb
|
143
|
+
- lib/national_rail_wrapper/feeds/knowledge_base/parsers/ticket_restrictions.rb
|
144
|
+
- lib/national_rail_wrapper/feeds/knowledge_base/parsers/ticket_types.rb
|
145
|
+
- lib/national_rail_wrapper/feeds/knowledge_base/parsers/tocs.rb
|
125
146
|
- lib/national_rail_wrapper/feeds/knowledge_base/requests/base.rb
|
126
147
|
- lib/national_rail_wrapper/feeds/knowledge_base/requests/incidents.rb
|
127
148
|
- lib/national_rail_wrapper/feeds/knowledge_base/requests/national_service_indicators.rb
|
@@ -130,13 +151,6 @@ files:
|
|
130
151
|
- lib/national_rail_wrapper/feeds/knowledge_base/requests/ticket_restrictions.rb
|
131
152
|
- lib/national_rail_wrapper/feeds/knowledge_base/requests/ticket_types.rb
|
132
153
|
- lib/national_rail_wrapper/feeds/knowledge_base/requests/tocs.rb
|
133
|
-
- lib/national_rail_wrapper/feeds/knowledge_base/response_parser/incidents.rb
|
134
|
-
- lib/national_rail_wrapper/feeds/knowledge_base/response_parser/national_services_indicators.rb
|
135
|
-
- lib/national_rail_wrapper/feeds/knowledge_base/response_parser/public_promotions.rb
|
136
|
-
- lib/national_rail_wrapper/feeds/knowledge_base/response_parser/stations.rb
|
137
|
-
- lib/national_rail_wrapper/feeds/knowledge_base/response_parser/ticket_restrictions.rb
|
138
|
-
- lib/national_rail_wrapper/feeds/knowledge_base/response_parser/ticket_types.rb
|
139
|
-
- lib/national_rail_wrapper/feeds/knowledge_base/response_parser/tocs.rb
|
140
154
|
- lib/national_rail_wrapper/feeds/live_departure_boards/client.rb
|
141
155
|
- lib/national_rail_wrapper/version.rb
|
142
156
|
- national_rail_wrapper.gemspec
|
File without changes
|
data/lib/national_rail_wrapper/feeds/knowledge_base/response_parser/national_services_indicators.rb
DELETED
File without changes
|
File without changes
|
File without changes
|