Sha256: 58ee41dc97a735bafaa13179e15dff957169e0fbf89f6fe61338dce2c7dedde2

Contents?: true

Size: 1.33 KB

Versions: 8

Compression:

Stored size: 1.33 KB

Contents

module Neo4j
  module Embedded
    # A Utility class for translating Ruby object to Neo4j Java types
    # @private
    module ToJava
      def type_to_java(type)
        Java::OrgNeo4jGraphdb::DynamicRelationshipType.withName(type.to_s)
      end

      module_function :type_to_java

      def types_to_java(types)
        types.inject([]) { |result, type| result << type_to_java(type) }.to_java(Java::OrgNeo4jGraphdb::RelationshipType)
      end

      module_function :types_to_java


      def dir_from_java(dir)
        case dir
        when Java::OrgNeo4jGraphdb::Direction::OUTGOING then
          :outgoing
        when Java::OrgNeo4jGraphdb::Direction::BOTH then
          :both
        when Java::OrgNeo4jGraphdb::Direction::INCOMING then
          :incoming
        else
          fail "unknown direction '#{dir} / #{dir.class}'"
        end
      end

      module_function :dir_from_java

      def dir_to_java(dir)
        case dir
        when :outgoing then
          Java::OrgNeo4jGraphdb::Direction::OUTGOING
        when :both then
          Java::OrgNeo4jGraphdb::Direction::BOTH
        when :incoming then
          Java::OrgNeo4jGraphdb::Direction::INCOMING
        else
          fail "unknown direction '#{dir}', expects argument: outgoing, :incoming or :both"
        end
      end

      module_function :dir_to_java
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
neo4j-core-4.0.7 lib/neo4j-embedded/to_java.rb
neo4j-core-4.0.6 lib/neo4j-embedded/to_java.rb
neo4j-core-4.0.5 lib/neo4j-embedded/to_java.rb
neo4j-core-4.0.4 lib/neo4j-embedded/to_java.rb
neo4j-core-4.0.3 lib/neo4j-embedded/to_java.rb
neo4j-core-4.0.2 lib/neo4j-embedded/to_java.rb
neo4j-core-4.0.1 lib/neo4j-embedded/to_java.rb
neo4j-core-4.0.0 lib/neo4j-embedded/to_java.rb