Sha256: f9dedb82a8ea804ad14f7b8eace2e0c132b90c6380cf130ba8cf57148dfc89e3

Contents?: true

Size: 1.06 KB

Versions: 2

Compression:

Stored size: 1.06 KB

Contents

module CrowdFlower
  class Unit
    include Defaults
    attr_reader :job
    
    def initialize(job)
      @job = job
      Unit.connect
    end

    def resource_uri
      "/jobs/#{@job.id}/units"
    end
    
    def all(page = 1, limit = 1000)
      Unit.get(resource_uri, {:query => {:limit => limit, :page => page}})
    end
    
    def get(id)
      Unit.get("#{resource_uri}/#{id}")
    end
    
    def ping
      Unit.get("#{resource_uri}/ping")
    end
    
    def judgments(id)
      Unit.get("#{resource_uri}/#{id}/judgments")
    end
    
    def create(data, gold = false)
      Unit.post(resource_uri, {:query => {:unit => {:data => data.to_json, :golden => gold}}})
    end
    
    def copy(unit_id, job_id, data = {})
      Unit.get("#{resource_uri}/#{unit_id}/copy", {:query => {:unit => {:job_id => job_id, :data => data}}})
    end
    
    def split(on, with = " ")
      Unit.get("#{resource_uri}/split", {:query => {:on => on, :with => with}})
    end
    
    def cancel(unit_id)
      Unit.post("#{resource_uri}/#{unit_id}/cancel.json")
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
crowdflower-0.4.5 lib/crowdflower/unit.rb
crowdflower-0.4.2 lib/crowdflower/unit.rb