Sha256: 0bf8e9afb39999f5d6f58dc0f6ec95b714ad698a2cdf4b91c2996ebbdb6254f8

Contents?: true

Size: 1.08 KB

Versions: 3

Compression:

Stored size: 1.08 KB

Contents

module StackExchange
  module StackOverflow
    class Answer < Base
      extend Forwardable
      
      def_delegators :@struct, :answer_id, :accepted, :answer_comments_url, :question_id,
                     :owner, :creation_date, :last_activity_date, :up_vote_count, :down_vote_count,
                     :view_count, :score, :community_owned, :title, :comments

      class << self

        def find(id, options = {})
          request('/answers/:id', id, options).answers.first
        end

        def find_by_user_id(id, options = {})
          request('/users/:id/answers', id, options)
        end

        def find_by_question_id(id, options = {})
          request('/questions/:id/answers', id, options)
        end

        def parse(response)
          response['answers'].each do |answer|
            parse_with_class(answer, 'comments', Comment)
            parse_with_class(answer, 'owner', User)
          end
          parse_with_class(response, 'answers', Answer)
          OpenStruct.new response
        end
      end

      def id
        @struct.answer_id
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
pilha-0.1.9 lib/pilha/stack_overflow/answer.rb
pilha-0.1.8 lib/pilha/stack_overflow/answer.rb
pilha-0.1.7 lib/pilha/stack_overflow/answer.rb