Sha256: a083120a8f10c3fbe90551a0f0a92c4b00653b805dda4a90f420ed0170dd9377

Contents?: true

Size: 1.21 KB

Versions: 3

Compression:

Stored size: 1.21 KB

Contents

module Neo4j
	module Rails
		module Callbacks #:nodoc:
			extend ActiveSupport::Concern

      CALLBACKS = [
        :before_validation, :after_validation,
        :before_create, :around_create, :after_create,
        :before_destroy, :around_destroy, :after_destroy,
        :before_save, :around_save, :after_save,
        :before_update, :around_update, :after_update,
        ].freeze

			included do
				[:valid?, :create_or_update, :create, :update, :destroy].each do |method|
					alias_method_chain method, :callbacks
				end
				
				extend ActiveModel::Callbacks
				
				define_model_callbacks :validation, :create, :save, :update, :destroy
			end
			
			def valid_with_callbacks?(*) #:nodoc:
			  _run_validation_callbacks { valid_without_callbacks? }
			end
			
			def destroy_with_callbacks #:nodoc:
				_run_destroy_callbacks { destroy_without_callbacks }
			end
			
			private
			def create_or_update_with_callbacks #:nodoc:
				_run_save_callbacks { create_or_update_without_callbacks }
			end
	
			def create_with_callbacks #:nodoc:
				_run_create_callbacks { create_without_callbacks }
			end
	
			def update_with_callbacks(*) #:nodoc:
				_run_update_callbacks { update_without_callbacks }
			end
		end
	end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
neo4j-1.2.4-java lib/neo4j/rails/callbacks.rb
neo4j-1.2.3-java lib/neo4j/rails/callbacks.rb
neo4j-1.2.2-java lib/neo4j/rails/callbacks.rb