Class: Redmine::Middleware::XmlParser
- Inherits:
-
Faraday::Response::Middleware
- Object
- Faraday::Response::Middleware
- Redmine::Middleware::XmlParser
- Defined in:
- lib/redmine-ruby/middleware/xml_parser.rb
Instance Method Summary collapse
Instance Method Details
#on_complete(env) ⇒ Object
14 15 16 17 18 19 20 21 |
# File 'lib/redmine-ruby/middleware/xml_parser.rb', line 14 def on_complete(env) env[:body] = case env[:status] when 204 parse('<xml />') else parse(env[:body]) end end |
#parse(body) ⇒ Object
4 5 6 7 8 9 10 11 12 |
# File 'lib/redmine-ruby/middleware/xml_parser.rb', line 4 def parse(body) json = ::MultiXml.parse(body).symbolize_keys json = json.values.first if json.values.first.is_a?(Array) { :data => json, :errors => {}, :metadata => {} } end |