module Reactor::Validations::Base

Public Class Methods

included(base) click to toggle source
# File lib/reactor/validations.rb, line 10
def self.included(base)
   base.extend(ClassMethods)
   # Common validations for all Objs
   base.class_eval do
     validates :permalink,     :format => { :with => /\A[-_$.\/a-zA-Z0-9]*\Z/ }
     validates :parent_obj_id, :numericality => { :only_integer => true }, :on => :create
     validates :name,          :presence => true, :on => :create
     validates :obj_class,     :presence => true, :on => :create
   end
 end

Public Instance Methods

release!(*args) click to toggle source

Wraps around Reactor::Persistence::Base#release! and validates object in :release context before release. Raises exception when invalid. @raise [ActiveRecord::RecordInvalid] validations registered for :release failed

Calls superclass method
# File lib/reactor/validations.rb, line 24
def release!(*args)
  raise(ActiveRecord::RecordInvalid.new(self)) unless valid?(:release)
  return super
end