class Redikey::KeyHelper

Constants

DEFAULT_HASH_SIZE

Attributes

prefixes[R]
resource_id[R]
separator[R]

Public Class Methods

new(resource_id, separator: ':', prefixes: []) click to toggle source
# File lib/redikey/key_helper.rb, line 6
def initialize(resource_id, separator: ':', prefixes: [])
  @resource_id = resource_id
  @prefixes = prefixes
  @separator = separator
end

Public Instance Methods

field_key() click to toggle source
# File lib/redikey/key_helper.rb, line 16
def field_key
  resource_id % DEFAULT_HASH_SIZE
end
key(appended_prefix = nil) click to toggle source
# File lib/redikey/key_helper.rb, line 12
def key(appended_prefix = nil)
  (prefixes + [appended_prefix, sharded_key]).compact.join(separator)
end

Private Instance Methods

sharded_key() click to toggle source
# File lib/redikey/key_helper.rb, line 22
def sharded_key
  (resource_id / DEFAULT_HASH_SIZE).to_i
end