Class: SavedQueries

Inherits:
Object
  • Object
show all
Defined in:
lib/keen/client/saved_queries.rb

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ SavedQueries

Returns a new instance of SavedQueries.



5
6
7
# File 'lib/keen/client/saved_queries.rb', line 5

def initialize(client)
  @client = client
end

Instance Method Details

#allObject



9
10
11
# File 'lib/keen/client/saved_queries.rb', line 9

def all
  process_response(saved_query_response(client.master_key))
end

#create(saved_query_name, saved_query_body) ⇒ Object Also known as: update



27
28
29
30
31
32
33
34
# File 'lib/keen/client/saved_queries.rb', line 27

def create(saved_query_name, saved_query_body)
  response = Keen::HTTP::Sync.new(client.api_url, client.proxy_url, client.read_timeout).put(
    path: "#{saved_query_base_url}/#{saved_query_name}",
    headers: api_headers(client.master_key, "sync"),
    body: saved_query_body
  )
  process_response(response)
end

#delete(saved_query_name) ⇒ Object



37
38
39
40
41
42
43
# File 'lib/keen/client/saved_queries.rb', line 37

def delete(saved_query_name)
  response = Keen::HTTP::Sync.new(client.api_url, client.proxy_url, client.read_timeout).delete(
    path: "#{saved_query_base_url}/#{saved_query_name}",
    headers: api_headers(client.master_key, "sync")
  )
  process_response(response)
end

#get(saved_query_name, results = false) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/keen/client/saved_queries.rb', line 13

def get(saved_query_name, results = false)
  saved_query_path = "/#{saved_query_name}"
  api_key = client.master_key
  if results
    saved_query_path += "/result"
    # The results path should use the READ KEY
    api_key = client.read_key
  end

  response = saved_query_response(api_key, saved_query_path)
  response_body = JSON.parse(response.body, symbolize_names: true)
  process_response(response)
end