Sha256: 35d6e3c5dacebde5aa0dc91a56bc6096a823877cc44d55f0e70e69c0a752f4ad

Contents?: true

Size: 1.72 KB

Versions: 1

Compression:

Stored size: 1.72 KB

Contents

module Neo4j::Embedded
  class EmbeddedRelationship
    class << self
      # This method is used to extend a Java Neo4j class so that it includes the same mixins as this class.
      def extend_java_class(java_clazz)
        java_clazz.class_eval do
          include Neo4j::Embedded::Property
          include Neo4j::EntityEquality
          include Neo4j::Relationship::Wrapper
          extend Neo4j::Core::TxMethods

          alias_method :_other_node, :getOtherNode

          def exist?
            !!graph_database.get_relationship_by_id(neo_id)
          rescue Java::OrgNeo4jGraphdb.NotFoundException
            false
          end
          tx_methods :exist?

          def inspect
            "EmbeddedRelationship neo_id: #{neo_id}"
          end

          def start_node
            _start_node.wrapper
          end
          tx_methods :start_node
          alias_method :_start_node_id, :start_node
          tx_methods :_start_node_id

          def _start_node
            getStartNode
          end

          def rel_type
            @_rel_type ||= _rel_type
          end

          def _rel_type
            getType().name().to_sym
          end
          tx_methods :rel_type

          def del
            delete
          end
          tx_methods :del

          def other_node(n)
            _other_node(n.neo4j_obj).wrapper
          end
          tx_methods :other_node

          def end_node
            _end_node.wrapper
          end
          tx_methods :end_node
          alias_method :_end_node_id, :end_node
          tx_methods :_end_node_id

          def _end_node
            getEndNode
          end

        end
      end
    end

    extend_java_class(Java::OrgNeo4jKernelImplCore::RelationshipProxy)

  end


end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
neo4j-core-3.0.0.alpha.19 lib/neo4j-embedded/embedded_relationship.rb