Class: CompaniesHouseClient::CollectionParser

Inherits:
Faraday::Response::Middleware
  • Object
show all
Defined in:
lib/companies_house_client/collection_parser.rb

Overview

Clean up collections, which look like this: {

"total_results": 4,
"items": [
  { }, #some item
  { }, #some item
]

}

Instance Method Summary collapse

Instance Method Details

#on_complete(env) ⇒ Object



12
13
14
15
16
17
18
19
# File 'lib/companies_house_client/collection_parser.rb', line 12

def on_complete(env)
  json = MultiJson.load(env[:body], symbolize_keys: true)
  env[:body] = {
    data: json.has_key?(:items) ? json[:items] : json,
    errors: json[:errors],
    metadata: json.except(:items)
  }
end