class Morpheus::CypherInterface

Public Instance Methods

base_path() click to toggle source
# File lib/morpheus/api/cypher_interface.rb, line 6
def base_path
  "/api/cypher"
end
create(item_key, params={}, payload={}) click to toggle source
# File lib/morpheus/api/cypher_interface.rb, line 26
def create(item_key, params={}, payload={})
  url = "#{@base_url}#{base_path}/#{escape_item_key(item_key)}"
  headers = { :params => params, :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
  execute({method: :post, url: url, headers: headers, payload: payload.to_json})
end
destroy(item_key, params={}) click to toggle source
# File lib/morpheus/api/cypher_interface.rb, line 39
def destroy(item_key, params={})
  url = "#{@base_url}#{base_path}/#{escape_item_key(item_key)}"
  headers = { :params => params, :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
  execute({method: :delete, url: url, headers: headers})
end
get(item_key, params={}) click to toggle source
# File lib/morpheus/api/cypher_interface.rb, line 10
def get(item_key, params={})
  raise "#{self.class}.get() passed a blank item_key!" if item_key.to_s == ''
  url = "#{@base_url}#{base_path}/#{escape_item_key(item_key)}"
  headers = { :params => params, :authorization => "Bearer #{@access_token}" }
  execute({method: :get, url: url, headers: headers})
end
list(item_key=nil, params={}) click to toggle source

list url is the same as get but uses $itemKey/?list=true method: ‘LIST’ would be neat though

# File lib/morpheus/api/cypher_interface.rb, line 19
def list(item_key=nil, params={})
  url = item_key ? "#{@base_url}#{base_path}/#{escape_item_key(item_key)}" : "#{@base_url}#{base_path}"
  params.merge!({list:'true'}) # ditch this probably
  headers = { :params => params, :authorization => "Bearer #{@access_token}" }
  execute({method: :get, url: url, headers: headers})
end
update(item_key, params={}, payload={}) click to toggle source

update is not even needed I don’t think, same as POST

# File lib/morpheus/api/cypher_interface.rb, line 33
def update(item_key, params={}, payload={})
  url = "#{@base_url}#{base_path}/#{escape_item_key(item_key)}"
  headers = { :params => params, :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
  execute({method: :put, url: url, headers: headers, payload: payload.to_json})
end

Protected Instance Methods

escape_item_key(item_key) click to toggle source
# File lib/morpheus/api/cypher_interface.rb, line 47
def escape_item_key(item_key)
  item_key.to_s.split("/").collect {|i| CGI::escape(i.to_s) }.join("/")
end