pack_rat 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/VERSION +1 -1
  2. data/lib/pack_rat.rb +36 -4
  3. data/pack_rat.gemspec +1 -1
  4. metadata +2 -2
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.1
1
+ 0.1.2
data/lib/pack_rat.rb CHANGED
@@ -8,9 +8,7 @@ module PackRat
8
8
  cattr_accessor :updated_attribute_name
9
9
  self.updated_attribute_name ||= :updated_at
10
10
  cattr_accessor :file_location
11
- cattr_accessor :file_digest
12
- self.file_location ||= "#{Rails.root}/app/models/#{self.to_s.split('::').join('/').underscore.downcase}.rb" if defined? Rails && self.class != ActiveRecord::Base
13
- self.file_digest ||= Digest::MD5.hexdigest(File.read(self.file_location)) if self.file_location
11
+ self.file_location = file_location_guesser
14
12
  end
15
13
 
16
14
  module Cacher
@@ -37,7 +35,41 @@ module PackRat
37
35
  key << "/#{self.to_s}"
38
36
  end
39
37
  end
38
+
39
+ def file_digest
40
+ if self.file_location
41
+ begin
42
+ file = File.read(self.file_location)
43
+ Digest::MD5.hexdigest(file)
44
+ rescue
45
+ nil
46
+ end
47
+ end
48
+ end
49
+
50
+ def file_location_guesser
51
+ "#{Rails.root}/app/models/#{self.to_s.split('::').join('/').underscore.downcase}.rb" if defined? Rails
52
+ end
53
+
54
+ end
55
+ end
56
+
57
+ module ActiveRecordExtension
58
+ extend ActiveSupport::Concern
59
+
60
+ module ClassMethods
61
+ def inherited(child_class)
62
+ child_class.send(:include, PackRat::CacheHelper)
63
+ super
64
+ end
40
65
  end
41
66
  end
67
+
68
+ end
69
+
70
+ if defined? ActiveRecord::Base
71
+ ActiveRecord::Base.send(:include, PackRat::ActiveRecordExtension)
42
72
  end
43
- ActiveRecord::Base.send(:include, PackRat::CacheHelper) if defined? ActiveRecord::Base
73
+
74
+
75
+
data/pack_rat.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "pack_rat"
8
- s.version = "0.1.1"
8
+ s.version = "0.1.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Brian Goff"]
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: pack_rat
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.1.1
5
+ version: 0.1.2
6
6
  platform: ruby
7
7
  authors:
8
8
  - Brian Goff
@@ -124,7 +124,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
124
124
  version: '0'
125
125
  segments:
126
126
  - 0
127
- hash: 2007527801634259140
127
+ hash: 1465989135589430788
128
128
  none: false
129
129
  required_rubygems_version: !ruby/object:Gem::Requirement
130
130
  requirements: