Class: Rcopy::Copier

Inherits:
Object
  • Object
show all
Defined in:
lib/rcopy.rb

Instance Method Summary collapse

Constructor Details

#initialize(source_redis) ⇒ Copier

Returns a new instance of Copier.



6
7
8
# File 'lib/rcopy.rb', line 6

def initialize(source_redis)
  @source_redis = source_redis
end

Instance Method Details

#copy_to(destination_redis) ⇒ Object



10
11
12
13
14
15
16
17
18
19
# File 'lib/rcopy.rb', line 10

def copy_to(destination_redis)
  destination_redis.multi do 
    destination_redis.flushdb
    @source_redis.keys.each do |k|
      ttl = @source_redis.pttl(k)
      ttl = 0 if (ttl == -1)
      destination_redis.restore(k, ttl, @source_redis.dump(k))
    end
  end
end