summaryrefslogtreecommitdiff
path: root/lib/couch_stream.rb
blob: 081688a78aaba41502932c41f8e984c158b3e2ea (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class CouchStream
  def initialize(config)
    @config = config
  end

  def get(path, options)
    url = url_for(path, options)
    # puts url
    Yajl::HttpStream.get(url, :symbolize_keys => true) do |hash|
      yield(hash)
    end
  end

  protected

  def url_for(path, options = {})
    url = [@config.server, @config.database, path].join('/')
    url += '?' if options.any?
    url += options.map {|k,v| "#{k}=#{v}"}.join('&')
  end
end