module Socialization::Stores::Mixins::Follow

Public Instance Methods

after_follow(method) click to toggle source
# File lib/socialization/stores/mixins/follow.rb, line 16
def after_follow(method)
  raise Socialization::ArgumentError unless method.is_a?(Symbol) || method.nil?
  @after_create_hook = method
end
after_unfollow(method) click to toggle source
# File lib/socialization/stores/mixins/follow.rb, line 21
def after_unfollow(method)
  raise Socialization::ArgumentError unless method.is_a?(Symbol) || method.nil?
  @after_destroy_hook = method
end
touch(what = nil) click to toggle source
# File lib/socialization/stores/mixins/follow.rb, line 7
def touch(what = nil)
  if what.nil?
    @touch || false
  else
    raise Socialization::ArgumentError unless [:all, :follower, :followable, false, nil].include?(what)
    @touch = what
  end
end

Protected Instance Methods

call_after_create_hooks(follower, followable) click to toggle source
# File lib/socialization/stores/mixins/follow.rb, line 27
def call_after_create_hooks(follower, followable)
  self.send(@after_create_hook, follower, followable) if @after_create_hook
  touch_dependents(follower, followable)
end
call_after_destroy_hooks(follower, followable) click to toggle source
# File lib/socialization/stores/mixins/follow.rb, line 32
def call_after_destroy_hooks(follower, followable)
  self.send(@after_destroy_hook, follower, followable) if @after_destroy_hook
  touch_dependents(follower, followable)
end