class Neo4j::Core::CypherSession::Adaptors::Driver

Attributes

connected?[R]
driver[R]

Public Class Methods

new(url, options = {}) click to toggle source
   # File lib/neo4j/core/cypher_session/adaptors/driver.rb
60 def initialize(url, options = {})
61   self.url = url
62   @driver = DriverRegistry.instance.driver_for(url)
63   @options = options
64 end
transaction_class() click to toggle source

def transaction(_session, &block)

session = driver.session(org.neo4j.driver.v1.AccessMode::WRITE)
session.writeTransaction(&block)

ensure

session.close

end

   # File lib/neo4j/core/cypher_session/adaptors/driver.rb
91 def self.transaction_class
92   require 'neo4j/core/cypher_session/transactions/driver'
93   Neo4j::Core::CypherSession::Transactions::Driver
94 end

Public Instance Methods

close() click to toggle source
   # File lib/neo4j/core/cypher_session/adaptors/driver.rb
68 def close
69   DriverRegistry.instance.close(driver)
70 end
connect() click to toggle source
   # File lib/neo4j/core/cypher_session/adaptors/driver.rb
66 def connect; end
query_set(transaction, queries, options = {}) click to toggle source
   # File lib/neo4j/core/cypher_session/adaptors/driver.rb
72 def query_set(transaction, queries, options = {})
73   setup_queries!(queries, transaction, skip_instrumentation: options[:skip_instrumentation])
74 
75   responses = queries.map do |query|
76     transaction.root_tx.run(query.cypher, query.parameters)
77   end
78   wrap_level = options[:wrap_level] || @options[:wrap_level]
79   Responses::Driver.new(responses, wrap_level: wrap_level).results
80 rescue Neo4j::Driver::Exceptions::Neo4jException => e
81   raise Neo4j::Core::CypherSession::CypherError.new_from(e.code, e.message) # , e.stack_track.to_a
82 end