class EasyCallbacks::Models::TargetClass

Attributes

callbacks_repository[RW]
target_class[RW]

Public Class Methods

new(target_class) click to toggle source
# File lib/easy_callbacks/models/target_class.rb, line 8
def initialize(target_class)
  self.target_class = target_class
  self.callbacks_repository = ::EasyCallbacks::Repositories::CallbacksRepository.new self
end

Public Instance Methods

add_callback(callback_type, target_method_name, callback_method_name, &callback_block) click to toggle source
# File lib/easy_callbacks/models/target_class.rb, line 13
def add_callback(callback_type, target_method_name, callback_method_name, &callback_block)
  callbacks_repository.find_or_add callback_type, target_method_name, callback_method_name, &callback_block
end
get_callbacks_for(callback_type, target_method_name) click to toggle source
# File lib/easy_callbacks/models/target_class.rb, line 17
def get_callbacks_for(callback_type, target_method_name)
  callbacks_repository.get_callbacks_for callback_type, target_method_name
end

Protected Instance Methods

target_class=(target_class) click to toggle source
# File lib/easy_callbacks/models/target_class.rb, line 23
def target_class=(target_class)
  validate_target_class target_class
  @target_class = target_class
end
validate_target_class(target_class) click to toggle source
# File lib/easy_callbacks/models/target_class.rb, line 28
def validate_target_class(target_class)
  Utils::Validator.validate_instance_type! :target_class, target_class, Class
end