Module: MeRedis::ZipKeys

Defined in:
lib/me_redis/zip_keys.rb

Overview

how to use: Redis.prepend( MeRedis::KeyMinimizer )

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.prepended(base) ⇒ Object



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

def self.prepended(base)
  base.extend( MeRedis::ClassMethods )
end

Instance Method Details

#decr(key) ⇒ Object



36
# File 'lib/me_redis/zip_keys.rb', line 36

def decr(key); super(zip_key(key)) end

#decrby(key, decrement) ⇒ Object



39
# File 'lib/me_redis/zip_keys.rb', line 39

def decrby( key, decrement ); super(zip_key(key), decrement) end

#del(*keys) ⇒ Object



48
# File 'lib/me_redis/zip_keys.rb', line 48

def del(*keys); super( *keys.map{ |key| zip_key(key) } ) end

#exists(key) ⇒ Object



34
# File 'lib/me_redis/zip_keys.rb', line 34

def exists(key); super( zip_key(key) ) end

#get(key) ⇒ Object



32
# File 'lib/me_redis/zip_keys.rb', line 32

def get( key ); super( zip_key(key) ) end

#getset(key, value) ⇒ Object



45
# File 'lib/me_redis/zip_keys.rb', line 45

def getset( key, value );  super( zip_key(key), value ) end

#hdel(key, hkey) ⇒ Object

—- h_methods —————————



21
# File 'lib/me_redis/zip_keys.rb', line 21

def hdel( key, hkey ); super( zip_key(key), hkey ) end

#hexists(key, hkey) ⇒ Object



24
# File 'lib/me_redis/zip_keys.rb', line 24

def hexists( key, hkey ); super( zip_key(key), hkey ) end

#hget(key, hkey) ⇒ Object



25
# File 'lib/me_redis/zip_keys.rb', line 25

def hget( key, hkey );  super( zip_key(key), hkey ) end

#hincrby(key, hkey, value) ⇒ Object



26
# File 'lib/me_redis/zip_keys.rb', line 26

def hincrby( key, hkey, value ); super( zip_key(key), hkey, value ) end

#hmget(key, *args) ⇒ Object



28
# File 'lib/me_redis/zip_keys.rb', line 28

def hmget( key, *args ); super( zip_key(key), *args ) end

#hmset(key, *args) ⇒ Object



27
# File 'lib/me_redis/zip_keys.rb', line 27

def hmset( key, *args ); super( zip_key(key), *args ) end

#hset(key, hkey, value) ⇒ Object



22
# File 'lib/me_redis/zip_keys.rb', line 22

def hset( key, hkey, value );  super( zip_key(key), hkey, value ) end

#hsetnx(key, hkey, value) ⇒ Object



23
# File 'lib/me_redis/zip_keys.rb', line 23

def hsetnx( key, hkey, value );  super( zip_key(key), hkey, value ) end

#incr(key) ⇒ Object

—- Hash methods END ——————–



31
# File 'lib/me_redis/zip_keys.rb', line 31

def incr( key ); super( zip_key(key) ) end

#mget(*keys) ⇒ Object



43
# File 'lib/me_redis/zip_keys.rb', line 43

def mget( *keys ); super( *keys.map!{ |k| zip_key(k) } ) end

#move(key, db) ⇒ Object



46
# File 'lib/me_redis/zip_keys.rb', line 46

def move(key, db); super( zip_key(key), db ) end

#mset(*key_values) ⇒ Object



42
# File 'lib/me_redis/zip_keys.rb', line 42

def mset( *key_values ); super( *key_values.each_slice(2).map{ |k,v| [zip_key(k),v] }.flatten ) end

#persist(key) ⇒ Object



37
# File 'lib/me_redis/zip_keys.rb', line 37

def persist(key); super(zip_key(key)) end

#rename(old_name, new_name) ⇒ Object



50
# File 'lib/me_redis/zip_keys.rb', line 50

def rename(old_name, new_name); super( zip_key(old_name), zip_key(new_name) ) end

#renamenx(old_name, new_name) ⇒ Object



51
# File 'lib/me_redis/zip_keys.rb', line 51

def renamenx(old_name, new_name); super( zip_key(old_name), zip_key(new_name) ) end

#set(key, value, options = {}) ⇒ Object



40
# File 'lib/me_redis/zip_keys.rb', line 40

def set( key, value, options = {} );  super( zip_key(key), value, options ) end

#ttl(key) ⇒ Object



41
# File 'lib/me_redis/zip_keys.rb', line 41

def ttl(key); super( zip_key(key) ) end

#type(key) ⇒ Object



35
# File 'lib/me_redis/zip_keys.rb', line 35

def type(key); super(zip_key(key)) end

#zip_key(key) ⇒ Object



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

def zip_key( key )
  key.to_s.split( self.class.key_zip_regxp ).map do |zip_me|
    if zip_me.to_i != 0
      zip_me.to_i.to_base62
    else
      self.class.zip_crumbs&.send(:[], zip_me ) || zip_me
    end
  end.join
end