Class: Blobby::KeyTransformingStore

Inherits:
SimpleDelegator
  • Object
show all
Defined in:
lib/blobby/key_transforming_store.rb

Overview

A BLOB store that decorates another store and allows key transformation

Instance Method Summary collapse

Constructor Details

#initialize(store, &key_transformation_strategy) ⇒ KeyTransformingStore

Returns a new instance of KeyTransformingStore.



13
14
15
16
# File 'lib/blobby/key_transforming_store.rb', line 13

def initialize(store, &key_transformation_strategy)
  super(store)
  @key_transformation_strategy = key_transformation_strategy
end

Instance Method Details

#[](key) ⇒ Object



18
19
20
21
# File 'lib/blobby/key_transforming_store.rb', line 18

def [](key)
  transformed_key = @key_transformation_strategy.call(key)
  __getobj__[transformed_key]
end