Class: CatTree::Observer

Inherits:
Object
  • Object
show all
Defined in:
lib/cat_tree/observer.rb,
lib/cat_tree/observer/target_set.rb,
lib/cat_tree/observer/target_set/ar_base.rb

Defined Under Namespace

Classes: ArBase, TargetSet

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeObserver

Returns a new instance of Observer.



11
12
13
# File 'lib/cat_tree/observer.rb', line 11

def initialize
  @target_set = TargetSet.new
end

Class Method Details

.check(&block) ⇒ Object



7
8
9
# File 'lib/cat_tree/observer.rb', line 7

def self.check(&block)
  self.new.check(&block)
end

Instance Method Details

#ar_base_countObject



19
20
21
# File 'lib/cat_tree/observer.rb', line 19

def ar_base_count
  @target_set.object_count
end

#checkObject



27
28
29
30
31
32
33
# File 'lib/cat_tree/observer.rb', line 27

def check
  ActiveRecord::Base.add_cat_tree_observer(self)
  yield
ensure
  ActiveRecord::Base.remove_cat_tree_observer
  output_message
end

#notice(object) ⇒ Object



15
16
17
# File 'lib/cat_tree/observer.rb', line 15

def notice(object)
  @target_set.notice(object)
end

#same_ar_base_objectsObject



23
24
25
# File 'lib/cat_tree/observer.rb', line 23

def same_ar_base_objects
  @target_set.same_objects
end