Class: MemoriClient::Engine::Resource
- Defined in:
- lib/memori_client/engine/resource.rb
Direct Known Subclasses
V2::ChatLog, V2::CompletionLog, V2::ContextVar, V2::CorrelationPair, V2::CustomDictionary, V2::Dialog, V2::EventLog, V2::ExpertReference, V2::Function, V2::Intent, V2::LocalizationKey, V2::Medium, V2::Memori, V2::Memory, V2::NLP, V2::Person, V2::PromptedQuestion, V2::Search, V2::Session, V2::Stat, V2::Topic, V2::UnansweredQuestion, V2::User, V2::WebHook
Class Method Summary collapse
-
.build_url(url) ⇒ Object
def self.exec_http_request(method, path, args) stop = false processed_tokens = [] path.split(‘/’).each do |token| break if stop == true if token =~ /^*$/ param_name = token.match(/^((.*)$/).captures.first if args.blank? stop = true else processed_tokens << args end else processed_tokens << token end end.
Methods inherited from Resource
build_arguments, exec_http_request, validate_payload!
Class Method Details
.build_url(url) ⇒ Object
def self.exec_http_request(method, path, args)
stop = false
processed_tokens = []
path.split('/').each do |token|
break if stop == true
if token =~ /^{.*}$/
param_name = token.match(/^{(.*)}$/).captures.first
if args[param_name.to_sym].blank?
stop = true
else
processed_tokens << args[param_name.to_sym]
end
else
processed_tokens << token
end
end
url = processed_tokens.join('/')
url = [MemoriClient.configuration.engine_api_root, url].join('')
http = MemoriClient::HttpClient.new
case method
when 'get'
status, body = http.get(url)
else
status, body = http.send(method, url, payload: args[:payload])
end
[status, body]
end
33 34 35 36 37 38 |
# File 'lib/memori_client/engine/resource.rb', line 33 def self.build_url(url) [ MemoriClient.configuration.engine_api_root, url ].join('') end |