Sha256: 34309a70a38791654dfd54a24c3c681a5e28e29c6e35f6a73e9685590cd31217

Contents?: true

Size: 891 Bytes

Versions: 4

Compression:

Stored size: 891 Bytes

Contents

module Neo4j::ActiveNode::Initialize
  extend ActiveSupport::Concern
  include Neo4j::Shared::TypeConverters

  # called when loading the node from the database
  # @param [Neo4j::Node] persisted_node the node this class wraps
  # @param [Hash] properties of the persisted node.
  def init_on_load(persisted_node, properties)
    @_association_attributes = self.class.extract_association_attributes!(properties)
    @_persisted_obj = persisted_node
    @association_cache = {}
    changed_attributes && changed_attributes.clear
    @attributes = attributes.merge(properties.stringify_keys)
    self.default_properties=properties
    @attributes = convert_properties_to :ruby, @attributes
  end

  # Implements the Neo4j::Node#wrapper and Neo4j::Relationship#wrapper method
  # so that we don't have to care if the node is wrapped or not.
  # @return self
  def wrapper
    self
  end

end


Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
neo4j-4.0.0 lib/neo4j/active_node/initialize.rb
neo4j-4.0.0.rc.4 lib/neo4j/active_node/initialize.rb
neo4j-4.0.0.rc.3 lib/neo4j/active_node/initialize.rb
neo4j-4.0.0.rc.1 lib/neo4j/active_node/initialize.rb