class Upman::Server::BaseServlet
Attributes
error_msg[RW]
query[RW]
response[RW]
Public Class Methods
new(server, *options)
click to toggle source
Calls superclass method
# File lib/upman/server/base_servlet.rb, line 9 def initialize(server, *options) super(server, *options) end
Public Instance Methods
bad_request(response, body)
click to toggle source
# File lib/upman/server/base_servlet.rb, line 49 def bad_request(response, body) response.status = 400 response['Content-Type'] = 'application/json' response.body = "{\"status\": \"bad_request\", \"message\": \"#{body}\"}" response end
do_GET(_request, response)
click to toggle source
rubocop:disable Naming/MethodName
# File lib/upman/server/base_servlet.rb, line 14 def do_GET(_request, response) # rubocop:enable Naming/MethodName info "Process API request #{_request.path}" @response = response @query = _request.query end
get_param(key, validate, require = false)
click to toggle source
# File lib/upman/server/base_servlet.rb, line 56 def get_param(key, validate, require = false) if @query.nil? return '' end unless @query.include? key unless require return '' else return nil end end unless validate.nil? if validate == 'date' begin @query[key] = DateTime.parse(@query[key]) rescue msg = "Invalid content for param #{key}, expected type: date - found #{@query[key]}" bad_request(@response, msg) fail msg return false end end end @query[key] end
is_authenticated(request)
click to toggle source
# File lib/upman/server/base_servlet.rb, line 23 def is_authenticated(request) node_service = Upman::Service::Node.new node_uuid = node_service.get_node_uuuid info "Checking Authentication" return true if request["x-upman-token"] == node_uuid fail "Access denied" false end
ok(response, body)
click to toggle source
# File lib/upman/server/base_servlet.rb, line 35 def ok(response, body) response.status = 200 response['Content-Type'] = 'application/json' response.body = body response end