Sha256: 0f8a38d4aa2eed296a4afe256802b1066c3d78fb5dd34de6adb08123fd3d3af4

Contents?: true

Size: 773 Bytes

Versions: 5

Compression:

Stored size: 773 Bytes

Contents

require 'time'

module RTurk

  class Assignment

    attr_reader :id, :source

    def initialize(id, source = nil)
      @id, @source = id, source
    end

    def approve!(feedback = nil)
      RTurk::ApproveAssignment(:assignment_id => self.id, :feedback => feedback)
    end

    def reject!(reason)
      RTurk::RejectAssignment(:assignment_id => self.id, :feedback => reason)
    end

    def bonus!(amount, reason)
      RTurk::GrantBonus(:assignment_id => self.id, :worker_id => self.worker_id, :amount => amount, :feedback => reason)
    end
    
    def worker
      RTurk::Worker.new(self.worker_id)
    end
    
    def method_missing(method, *args)
      if self.source.respond_to?(method)
        self.source.send(method, *args)
      end
    end
  end

end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
rturk-2.2.0 lib/rturk/adapters/assignment.rb
rturk-2.1.1 lib/rturk/adapters/assignment.rb
rturk-2.1.0 lib/rturk/adapters/assignment.rb
rturk-2.0.5 lib/rturk/adapters/assignment.rb
rturk-2.0.4 lib/rturk/adapters/assignment.rb