class JumpCloud::Middleware::ResponseParser

Public Instance Methods

on_complete(env) click to toggle source
Calls superclass method
# File lib/jump_cloud/middleware.rb, line 23
def on_complete(env)
  result = super
  result
end
parse(body) click to toggle source
# File lib/jump_cloud/middleware.rb, line 14
def parse(body)
  json = parse_json(body)
  metadata = {
    errors: (json.delete(:message) || "").scan(/Error: (.*)/).flatten,
    data: clean_attributes(json.delete(:results) || json),
    metadata: json.delete(:metadata) || {}
  }
end

Private Instance Methods

clean_attributes(data) click to toggle source
# File lib/jump_cloud/middleware.rb, line 30
def clean_attributes(data)
  case data
  when Hash
    data.except(:attributes)
  when Array
    data.collect { |d| clean_attributes(d) }
  end
end