nkallen-cache-money 0.2.3 → 0.2.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/cache_money.rb +53 -0
  2. metadata +2 -2
@@ -0,0 +1,53 @@
1
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
2
+
3
+ require 'rubygems'
4
+ require 'activesupport'
5
+ require 'activerecord'
6
+
7
+ require 'cash/lock'
8
+ require 'cash/transactional'
9
+ require 'cash/write_through'
10
+ require 'cash/finders'
11
+ require 'cash/buffered'
12
+ require 'cash/index'
13
+ require 'cash/config'
14
+ require 'cash/accessor'
15
+
16
+ require 'cash/request'
17
+ require 'cash/mock'
18
+ require 'cash/local'
19
+
20
+ require 'cash/query/abstract'
21
+ require 'cash/query/select'
22
+ require 'cash/query/primary_key'
23
+ require 'cash/query/calculation'
24
+
25
+ require 'cash/util/array'
26
+
27
+ class ActiveRecord::Base
28
+ def self.is_cached(options = {})
29
+ include Cash
30
+ Config.create(self, options)
31
+ end
32
+ end
33
+
34
+ module Cash
35
+ def self.included(active_record_class)
36
+ active_record_class.class_eval do
37
+ include Config, Accessor, WriteThrough, Finders
38
+ extend ClassMethods
39
+ end
40
+ end
41
+
42
+ module ClassMethods
43
+ def self.extended(active_record_class)
44
+ class << active_record_class
45
+ alias_method_chain :transaction, :cache_transaction
46
+ end
47
+ end
48
+
49
+ def transaction_with_cache_transaction(&block)
50
+ repository.transaction { transaction_without_cache_transaction(&block) }
51
+ end
52
+ end
53
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nkallen-cache-money
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Kallen
@@ -58,7 +58,7 @@ files:
58
58
  - lib/cash/transactional.rb
59
59
  - lib/cash/util/array.rb
60
60
  - lib/cash/write_through.rb
61
- - lib/cash.rb
61
+ - lib/cache_money.rb
62
62
  has_rdoc: false
63
63
  homepage: http://github.com/nkallen/cache-money
64
64
  post_install_message: