Sha256: 1d6c9fff7972aac24c64230eeaa1e0c50e6b734bfbc0749abdbeafe0932195bd

Contents?: true

Size: 772 Bytes

Versions: 2

Compression:

Stored size: 772 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::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

2 entries across 2 versions & 1 rubygems

Version Path
neo4j-3.0.0.alpha.11 lib/neo4j/active_rel.rb
neo4j-3.0.0.alpha.10 lib/neo4j/active_rel.rb