Sha256: 51282b14553281baec1d5d66ceb76f78ffdf24d7aec767da7551088ddc297bd3

Contents?: true

Size: 808 Bytes

Versions: 9

Compression:

Stored size: 808 Bytes

Contents

module Neo4j

  # Makes Neo4j Relationships more or less act like ActiveRecord objects.
  module ActiveRel
    extend ActiveSupport::Concern

    include Neo4j::Shared
    include Neo4j::ActiveRel::Initialize
    include Neo4j::Shared::Identity
    include Neo4j::ActiveRel::Property
    include Neo4j::ActiveRel::Persistence
    include Neo4j::ActiveRel::Validations
    include Neo4j::ActiveRel::Callbacks
    include Neo4j::ActiveRel::Query

    class FrozenRelError < StandardError; end

    def initialize(*args)
      load_nodes
      super
    end

    def neo4j_obj
      _persisted_obj || raise("Tried to access native neo4j object on a non persisted object")
    end

    included do
      def self.inherited(other)
        super
      end

      cache_class unless cached_class?
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
neo4j-3.0.4 lib/neo4j/active_rel.rb
neo4j-3.0.3 lib/neo4j/active_rel.rb
neo4j-3.0.2 lib/neo4j/active_rel.rb
neo4j-3.0.1 lib/neo4j/active_rel.rb
neo4j-3.0.0 lib/neo4j/active_rel.rb
neo4j-3.0.0.rc.5 lib/neo4j/active_rel.rb
neo4j-3.0.0.rc.4 lib/neo4j/active_rel.rb
neo4j-3.0.0.rc.3 lib/neo4j/active_rel.rb
neo4j-3.0.0.rc.2 lib/neo4j/active_rel.rb