class Trubl::Collection
Public Instance Methods
container_name()
click to toggle source
# File lib/trubl/collection.rb, line 16 def container_name klass_name end
from_response(response, options = {})
click to toggle source
# File lib/trubl/collection.rb, line 6 def from_response(response, options = {}) return nil if missing_or_exception?(response) json = JSON.parse(response.body) self.concat (json[container_name] || []).map{|m| klass.new(m[member_name]) } end
klass()
click to toggle source
# File lib/trubl/collection.rb, line 12 def klass "Trubl::#{member_name.classify}".constantize end
klass_name()
click to toggle source
# File lib/trubl/collection.rb, line 24 def klass_name self.class.name.downcase.gsub('trubl::', '') end
member_name()
click to toggle source
# File lib/trubl/collection.rb, line 20 def member_name klass_name.singularize end
Private Instance Methods
missing_or_exception?(response)
click to toggle source
# File lib/trubl/collection.rb, line 30 def missing_or_exception?(response) code = if response.respond_to?(:code) response.code elsif response.respond_to?(:status) response.status else nil end code && (400..600).include?(code) end