Class: Neo4Apis::QueryBuffer

Inherits:
Array
  • Object
show all
Defined in:
lib/neo4apis/query_buffer.rb

Instance Method Summary collapse

Constructor Details

#initialize(neo4j_session, flush_size) ⇒ QueryBuffer

Returns a new instance of QueryBuffer.



4
5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/neo4apis/query_buffer.rb', line 4

def initialize(neo4j_session, flush_size)
  @neo4j_session = neo4j_session
  @flush_size = flush_size

  uri = URI.parse(@neo4j_session.resource_url)

  @faraday_connection = Faraday.new(:url => "#{uri.scheme}://#{uri.host}:#{uri.port}") do |faraday|
    faraday.request  :url_encoded             # form-encode POST params
    faraday.adapter  Faraday.default_adapter  # make requests with Net::HTTP
  end

  super()
end

Instance Method Details

#<<(query) ⇒ Object



18
19
20
21
22
# File 'lib/neo4apis/query_buffer.rb', line 18

def <<(query)
  flush if size >= @flush_size

  super
end

#closeObject



30
31
32
# File 'lib/neo4apis/query_buffer.rb', line 30

def close
  flush
end

#flushObject



24
25
26
27
28
# File 'lib/neo4apis/query_buffer.rb', line 24

def flush
  execute

  clear
end