class CouchReplicate
Public Class Methods
new(database)
click to toggle source
database = ‘127.0.0.1:5984/dbname’
# File lib/couch-replicate-helper.rb, line 5 def initialize(database) @db = CouchRest.database(database) end
Public Instance Methods
replicate(source, dest)
click to toggle source
name with suffix, suffix
# File lib/couch-replicate-helper.rb, line 10 def replicate(source, dest) puts "going to replicate #{source} to dest #{dest}" unless is_active? source, dest puts "triggering replication..." RestClient.post @db.host + '/_replicate', {:source => source, :target => dest, :continuous => true }.to_json, :content_type => "Content-Type: application/json" end end
Private Instance Methods
is_active?(source, dest)
click to toggle source
# File lib/couch-replicate-helper.rb, line 20 def is_active?(source, dest) tasks = CouchRest.get(@db.server.uri + '/_active_tasks') tasks.each do |t| puts "#{t['type']} #{t['task']} #{t['status']} #{t['pid']}" end tasks.find { |t| t['type'] == 'Replication' and t['task'].scan source and t['task'].scan dest } end