Sha256: eb346bc3733062ec94401464d0d2eb06ff8ea195f052f56b0d8df54715c2405f

Contents?: true

Size: 688 Bytes

Versions: 1

Compression:

Stored size: 688 Bytes

Contents

module Neo4j
  # Responsible for loading the correct Ruby wrapper class for the Neo4j Entity
  module Wrapper
    module ClassMethods
      # Loads the wrapper by using the original new method and initialize it
      # @private
      def _load_wrapper(node)
        wrapped_node = self.orig_new
        wrapped_node.init_on_load(node)
        wrapped_node
      end

      # Creates an alias to the original new method:  <tt>orig_new</t>
      # @private
      def self.extended(klass)
        klass.instance_eval do
          class << self
            alias_method :orig_new, :new
          end
        end unless klass.respond_to?(:orig_new)
        super
      end
    end
  end
end


Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
neo4j-wrapper-0.0.1-java lib/neo4j-wrapper/class_methods.rb