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.



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

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



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

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