power_enum 0.6.0 → 0.6.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -55,8 +55,11 @@ module ActiveRecord
55
55
  valid_keys = [:conditions, :order, :on_lookup_failure, :name_column]
56
56
  options.assert_valid_keys(*valid_keys)
57
57
 
58
- valid_keys.each do |key|
59
- write_inheritable_attribute("acts_enumerated_#{key.to_s}".to_sym, options[key]) if options.has_key? key
58
+ valid_keys.each do |key|
59
+ class_attribute "acts_enumerated_#{key.to_s}"
60
+ if options.has_key?( key )
61
+ self.send "acts_enumerated_#{key.to_s}=", options[key]
62
+ end
60
63
  end
61
64
 
62
65
  name_column = if options.has_key?(:name_column) then
@@ -64,8 +67,10 @@ module ActiveRecord
64
67
  else
65
68
  :name
66
69
  end
67
- write_inheritable_attribute(:acts_enumerated_name_column, name_column)
68
-
70
+
71
+ class_attribute :acts_enumerated_name_column
72
+ self.acts_enumerated_name_column = name_column
73
+
69
74
  unless self.is_a? ActiveRecord::Acts::Enumerated::EnumClassMethods
70
75
  extend ActiveRecord::Acts::Enumerated::EnumClassMethods
71
76
 
@@ -90,8 +95,8 @@ module ActiveRecord
90
95
  # Returns all the enum values. Caches results after the first time this method is run.
91
96
  def all
92
97
  return @all if @all
93
- conditions = read_inheritable_attribute(:acts_enumerated_conditions)
94
- order = read_inheritable_attribute(:acts_enumerated_order)
98
+ conditions = self.acts_enumerated_conditions
99
+ order = self.acts_enumerated_order
95
100
  @all = where(conditions).order(order).collect{|val| val.freeze}.freeze
96
101
  end
97
102
 
@@ -124,7 +129,7 @@ module ActiveRecord
124
129
  else
125
130
  raise TypeError, "#{self.name}[]: argument should be a String, Symbol or Fixnum but got a: #{arg.class.name}"
126
131
  end
127
- self.send((read_inheritable_attribute(:acts_enumerated_on_lookup_failure) || :enforce_none), arg)
132
+ self.send((self.acts_enumerated_on_lookup_failure || :enforce_none), arg)
128
133
  end
129
134
 
130
135
  # Enum lookup by id
@@ -170,7 +175,7 @@ module ActiveRecord
170
175
 
171
176
  # Returns the name of the column this enum uses as the basic underlying value.
172
177
  def name_column
173
- @name_column ||= read_inheritable_attribute( :acts_enumerated_name_column )
178
+ @name_column ||= self.acts_enumerated_name_column
174
179
  end
175
180
 
176
181
  # ---Private methods---
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: power_enum
3
3
  version: !ruby/object:Gem::Version
4
- hash: 7
4
+ hash: 5
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 6
9
- - 0
10
- version: 0.6.0
9
+ - 1
10
+ version: 0.6.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Trevor Squires
@@ -18,7 +18,7 @@ autorequire:
18
18
  bindir: bin
19
19
  cert_chain: []
20
20
 
21
- date: 2012-02-20 00:00:00 Z
21
+ date: 2012-02-25 00:00:00 Z
22
22
  dependencies:
23
23
  - !ruby/object:Gem::Dependency
24
24
  requirement: &id001 !ruby/object:Gem::Requirement