Class: MemoriClient::Backend::Resource
- Defined in:
- lib/memori_client/backend/resource.rb
Direct Known Subclasses
V1::Asset, V2::ActionLog, V2::Analysis, V2::Asset, V2::Badge, V2::CompletionConfig, V2::ConsumptionLog, V2::ImportExport, V2::Integration, V2::Invitation, V2::Memori, V2::MemoriList, V2::Notification, V2::Process, V2::Tenant, V2::User
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.backend_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
32 33 34 35 36 37 |
# File 'lib/memori_client/backend/resource.rb', line 32 def self.build_url(url) [ MemoriClient.configuration.backend_api_root, url ].join('') end |