Class: Tina4::Router::GroupContext

Inherits:
Object
  • Object
show all
Defined in:
lib/tina4/router.rb

Instance Method Summary collapse

Constructor Details

#initialize(prefix, auth_handler = nil, middleware = []) ⇒ GroupContext

Returns a new instance of GroupContext.



361
362
363
364
365
# File 'lib/tina4/router.rb', line 361

def initialize(prefix, auth_handler = nil, middleware = [])
  @prefix = prefix.chomp("/")
  @auth_handler = auth_handler
  @middleware = middleware
end

Instance Method Details

#group(prefix, auth_handler: nil, middleware: [], &block) ⇒ Object

Nested groups



380
381
382
383
384
385
# File 'lib/tina4/router.rb', line 380

def group(prefix, auth_handler: nil, middleware: [], &block)
  full_prefix = "#{@prefix}#{prefix}"
  combined_middleware = @middleware + middleware
  nested_auth = auth_handler || @auth_handler
  GroupContext.new(full_prefix, nested_auth, combined_middleware).instance_eval(&block)
end