Class: Neo4jrb::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/logstash/inputs/neo4j-client.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.open(location) ⇒ Object



7
8
9
10
# File 'lib/logstash/inputs/neo4j-client.rb', line 7

def self.open(location)
  session = start_session_at(location)
  Neo4jrb::Client.new(session)
end

Instance Method Details

#count_nodesObject



12
13
14
# File 'lib/logstash/inputs/neo4j-client.rb', line 12

def count_nodes
  Neo4j::Transaction.run { @session.graph_db.all_nodes.count }
end

#execute_query(statement, &block) ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/logstash/inputs/neo4j-client.rb', line 20

def execute_query(statement, &block)
  resultset = []
  Neo4j::Session.query(statement).each do |result|
    objects = result.members.map { |member| result.send member }
    if block_given?
      block.call(objects)
    else
      resultset << objects
    end
  end
  resultset
end

#sessionObject



16
17
18
# File 'lib/logstash/inputs/neo4j-client.rb', line 16

def session
  Neo4j::Session.current
end