Sha256: fab6088affde1279efc96b240dc205383fd9dee1771b7dc3f30e4927517f0d79

Contents?: true

Size: 859 Bytes

Versions: 1

Compression:

Stored size: 859 Bytes

Contents

##
# NPR::API::Response
#
# Wrapper around a Faraday response object
# Pass in the full response object from Faraday
#
module NPR
  module API
    class Response
      include NPR::Concern::Relation
      
      has_many "messages", :key => "message", :class_name => NPR::API::Message
      attr_reader :raw, :version, :messages, :list

      #--------------------------
      
      def initialize(response)
        create_relations(response)
        
        @_response = response
        @raw       = response.body
                
        @version  = @raw["version"]
                
        if list = @raw["list"]
          @list = NPR::Entity::List.new(list)
        end
        
        Array.wrap(@raw["message"]).each do |message|
          @messages.push NPR::API::Message.new(message)
        end
      end
    end # Response
  end # API
end # NPR

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
npr-0.1.2 lib/npr/api/response.rb