Class: Rhoconnect::Middleware::AdminUser

Inherits:
Object
  • Object
show all
Defined in:
lib/rhoconnect/middleware/admin_user.rb

Instance Method Summary collapse

Constructor Details

#initialize(app, opts = {}) {|_self| ... } ⇒ AdminUser

Returns a new instance of AdminUser.

Yields:

  • (_self)

Yield Parameters:



6
7
8
9
# File 'lib/rhoconnect/middleware/admin_user.rb', line 6

def initialize(app, opts={})
  @app = app
  yield self if block_given?
end

Instance Method Details

#call(env) ⇒ Object



11
12
13
14
15
16
17
18
19
20
# File 'lib/rhoconnect/middleware/admin_user.rb', line 11

def call(env)
  begin
    if Rhoconnect.is_admin_route(env)
      env[Rhoconnect::CURRENT_USER] = Rhoconnect.extract_api_user(env)
    end
  rescue Rhoconnect::ApiException => ae
    return [422, {'Content-Type' => 'text/plain'}, [ae.message]]
  end
  @app.call(env)
end