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.



795
796
797
798
799
# File 'lib/tina4/router.rb', line 795

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



814
815
816
817
818
819
# File 'lib/tina4/router.rb', line 814

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