7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
# File 'lib/xively-rb/parsers/xml/feed_defaults.rb', line 7
def from_xml(xml)
begin
parsed = MultiXml.parse(xml)
raise InvalidXMLError, "Missing 'environment' node from base node" if parsed['eeml'].nil? || !parsed['eeml'].key?('environment')
return {} if parsed['eeml']['environment'].nil?
if parsed['eeml']['version'] == '5' || parsed['eeml']['xmlns'] == 'http://www.eeml.org/xsd/005'
transform_v1(parsed['eeml']['environment'])
else
transform_v2(parsed['eeml']['environment'])
end
rescue MultiXml::ParseError => e
raise InvalidXMLError, e.message
end
end
|