# File lib/devise/orm/data_mapper/compatibility.rb, line 17 def before_validation(*args) wrap_hook(:before, :valid?, *args) end
# File lib/devise/orm/data_mapper/compatibility.rb, line 21 def wrap_hook(action, method, *args) options = args.extract_options! args.each do |callback| callback_method = "#{action}_#{method}_#{callback}_callback_wrap".gsub('?', '').to_sym send action, method, callback_method class_eval " def #{callback_method} #{callback} if #{options[:if] || true} end ", __FILE__, __LINE__ + 1 end end