diff --git a/lib/geocoder/cache.rb b/lib/geocoder/cache.rb index 2465d29f43edb82c504fce6bf202387099fb6720..d4cb1ac1c9b35d31a75fc8842b451c497b472dd3 100644 --- a/lib/geocoder/cache.rb +++ b/lib/geocoder/cache.rb @@ -10,14 +10,24 @@ module Geocoder # Read from the Cache. # def [](url) - interpret store[key_for(url)] + interpret case + when store.respond_to?(:[]) + store[key_for(url)] + when store.respond_to?(:get) + store.get key_for(url) + end end ## # Write to the Cache. # def []=(url, value) - store[key_for(url)] = value + case + when store.respond_to?(:[]=) + store[key_for(url)] = value + when store.respond_to?(:set) + store.set key_for(url), value + end end ##