Floppy-amee 2.0.1 → 2.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/amee/data_category.rb +8 -8
- data/lib/amee/drill_down.rb +6 -4
- data/lib/amee/profile_category.rb +6 -5
- data/lib/amee/version.rb +1 -1
- metadata +2 -2
data/lib/amee/data_category.rb
CHANGED
@@ -53,22 +53,22 @@ module AMEE
|
|
53
53
|
data[:uid] = REXML::XPath.first(doc, "/Resources/DataCategoryResource/DataCategory/@uid").to_s
|
54
54
|
data[:created] = DateTime.parse(REXML::XPath.first(doc, "/Resources/DataCategoryResource/DataCategory/@created").to_s)
|
55
55
|
data[:modified] = DateTime.parse(REXML::XPath.first(doc, "/Resources/DataCategoryResource/DataCategory/@modified").to_s)
|
56
|
-
data[:name] = REXML::XPath.first(doc, '/Resources/DataCategoryResource/DataCategory
|
57
|
-
data[:path] = REXML::XPath.first(doc, '/Resources/DataCategoryResource
|
56
|
+
data[:name] = REXML::XPath.first(doc, '/Resources/DataCategoryResource/DataCategory/?ame').text
|
57
|
+
data[:path] = REXML::XPath.first(doc, '/Resources/DataCategoryResource//?ath').text || ""
|
58
58
|
data[:children] = []
|
59
|
-
REXML::XPath.each(doc, '/Resources/DataCategoryResource
|
59
|
+
REXML::XPath.each(doc, '/Resources/DataCategoryResource//Children/DataCategories/DataCategory') do |child|
|
60
60
|
category_data = {}
|
61
|
-
category_data[:name] = child.elements['Name'].text
|
62
|
-
category_data[:path] = child.elements['Path'].text
|
61
|
+
category_data[:name] = (child.elements['Name'] || child.elements['name']).text
|
62
|
+
category_data[:path] = (child.elements['Path'] || child.elements['path']).text
|
63
63
|
category_data[:uid] = child.attributes['uid'].to_s
|
64
64
|
data[:children] << category_data
|
65
65
|
end
|
66
66
|
data[:items] = []
|
67
|
-
REXML::XPath.each(doc, '/Resources/DataCategoryResource
|
67
|
+
REXML::XPath.each(doc, '/Resources/DataCategoryResource//Children/DataItems/DataItem') do |item|
|
68
68
|
item_data = {}
|
69
|
-
item_data[:label] = item.elements['label'].text
|
70
|
-
item_data[:path] = item.elements['path'].text
|
71
69
|
item_data[:uid] = item.attributes['uid'].to_s
|
70
|
+
item_data[:label] = item.elements['label'].text
|
71
|
+
item_data[:path] = item.elements['path'] ? item.elements['path'].text : item_data[:uid]
|
72
72
|
data[:items] << item_data
|
73
73
|
end
|
74
74
|
# Create object
|
data/lib/amee/drill_down.rb
CHANGED
@@ -59,15 +59,17 @@ module AMEE
|
|
59
59
|
# Parse XML
|
60
60
|
doc = REXML::Document.new(xml)
|
61
61
|
data = {}
|
62
|
-
data[:choice_name] = REXML::XPath.first(doc, "/Resources/DrillDownResource/Choices
|
62
|
+
data[:choice_name] = REXML::XPath.first(doc, "/Resources/DrillDownResource/Choices/?ame").text
|
63
63
|
choices = []
|
64
|
-
REXML::XPath.each(doc, "/Resources/DrillDownResource/Choices
|
65
|
-
choices << c.elements['Value'].text
|
64
|
+
REXML::XPath.each(doc, "/Resources/DrillDownResource/Choices//Choice") do |c|
|
65
|
+
choices << (c.elements['Value'] || c.elements['value']).text
|
66
66
|
end
|
67
67
|
data[:choices] = choices
|
68
68
|
selections = {}
|
69
69
|
REXML::XPath.each(doc, "/Resources/DrillDownResource/Selections/Choice") do |c|
|
70
|
-
|
70
|
+
name = (c.elements['Name'] || c.elements['name']).text
|
71
|
+
value = (c.elements['Value'] || c.elements['value']).text
|
72
|
+
selections[name] = value
|
71
73
|
end
|
72
74
|
data[:selections] = selections
|
73
75
|
# Create object
|
@@ -198,15 +198,16 @@ module AMEE
|
|
198
198
|
data = {}
|
199
199
|
data[:profile_uid] = REXML::XPath.first(doc, "/Resources/ProfileCategoryResource/Profile/@uid").to_s
|
200
200
|
data[:profile_date] = DateTime.strptime(REXML::XPath.first(doc, "/Resources/ProfileCategoryResource/ProfileDate").text, "%Y%m")
|
201
|
-
data[:name] = REXML::XPath.first(doc, '/Resources/ProfileCategoryResource/DataCategory
|
202
|
-
data[:path] = REXML::XPath.first(doc, '/Resources/ProfileCategoryResource/Path').text || ""
|
201
|
+
data[:name] = REXML::XPath.first(doc, '/Resources/ProfileCategoryResource/DataCategory/?ame').text
|
202
|
+
data[:path] = REXML::XPath.first(doc, '/Resources/ProfileCategoryResource/Path | /Resources/ProfileCategoryResource/DataCategory/path').text || ""
|
203
|
+
data[:path] = "/#{data[:path]}" if data[:path].slice(0,1) != '/'
|
203
204
|
data[:total_amount] = REXML::XPath.first(doc, '/Resources/ProfileCategoryResource/TotalAmountPerMonth').text.to_f rescue nil
|
204
205
|
data[:total_amount_unit] = "kg/month"
|
205
206
|
data[:children] = []
|
206
|
-
REXML::XPath.each(doc, '/Resources/ProfileCategoryResource/Children/ProfileCategories/DataCategory') do |child|
|
207
|
+
REXML::XPath.each(doc, '/Resources/ProfileCategoryResource/Children/ProfileCategories/DataCategory | /Resources/ProfileCategoryResource/Children/DataCategories/DataCategory') do |child|
|
207
208
|
category_data = {}
|
208
|
-
category_data[:name] = child.elements['Name'].text
|
209
|
-
category_data[:path] = child.elements['Path'].text
|
209
|
+
category_data[:name] = (child.elements['Name'] || child.elements['name']).text
|
210
|
+
category_data[:path] = (child.elements['Path'] || child.elements['path']).text
|
210
211
|
category_data[:uid] = child.attributes['uid'].to_s
|
211
212
|
data[:children] << category_data
|
212
213
|
end
|
data/lib/amee/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: Floppy-amee
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Smith
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-02-
|
12
|
+
date: 2009-02-20 00:00:00 -08:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|