Permalink
Browse files

Support pluggable cache stores.

[#5486 state:committed]

Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
  • Loading branch information...
1 parent 730af48 commit 390d285ef67e1868aa0af6e86fa1cd59c32e926d @mperham mperham committed with jeremy Aug 28, 2010
Showing with 18 additions and 1 deletion.
  1. +10 −0 activesupport/CHANGELOG
  2. +8 −1 activesupport/lib/active_support/cache.rb
View
@@ -1,3 +1,13 @@
+*Rails 3.0.0 (unreleased)*
+
+* Pluggable cache stores: setting config.cache_store = "custom_store" will require 'active_support/cache/custom_store' and look for the CustomStore constant. #5486 [Mike Perham]
+
+
+*Rails 3.0.0 [release candidate 2] (August 23rd, 2010)*
+
+* No changes
+
+
*Rails 3.0.0 [release candidate] (July 26th, 2010)*
* Removed Object#returning, Object#tap should be used instead. [Santiago Pastorino]
@@ -58,7 +58,14 @@ def self.lookup_store(*store_option)
case store
when Symbol
store_class_name = store.to_s.camelize
- store_class = ActiveSupport::Cache.const_get(store_class_name)
+ store_class =
+ begin
+ require "active_support/cache/#{store}"
+ rescue LoadError
+ raise "Could not find cache store adapter for #{store} (#{$!})"
+ else
+ ActiveSupport::Cache.const_get(store_class_name)
+ end
store_class.new(*parameters)
when nil
ActiveSupport::Cache::MemoryStore.new

0 comments on commit 390d285

Please sign in to comment.