Class: Grape::Namespace
- Inherits:
-
Object
- Object
- Grape::Namespace
- Defined in:
- lib/grape/namespace.rb
Overview
A container for endpoints or other namespaces, which allows for both logical grouping of endpoints as well as sharing common configuration. May also be referred to as group, segment, or resource.
Defined Under Namespace
Classes: JoinedSpaceCache
Instance Attribute Summary collapse
-
#options ⇒ Object
readonly
Returns the value of attribute options.
-
#space ⇒ Object
readonly
Returns the value of attribute space.
Class Method Summary collapse
- .joined_space(settings) ⇒ Object
-
.joined_space_path(settings) ⇒ Object
Join the namespaces from a list of settings to create a path prefix.
Instance Method Summary collapse
-
#initialize(space, **options) ⇒ Namespace
constructor
A new instance of Namespace.
-
#requirements ⇒ Hash
Retrieves the requirements from the options hash, if given.
Constructor Details
#initialize(space, **options) ⇒ Namespace
Returns a new instance of Namespace.
15 16 17 18 |
# File 'lib/grape/namespace.rb', line 15 def initialize(space, **) @space = space.to_s @options = end |
Instance Attribute Details
#options ⇒ Object (readonly)
Returns the value of attribute options.
8 9 10 |
# File 'lib/grape/namespace.rb', line 8 def @options end |
#space ⇒ Object (readonly)
Returns the value of attribute space.
8 9 10 |
# File 'lib/grape/namespace.rb', line 8 def space @space end |
Class Method Details
.joined_space(settings) ⇒ Object
27 28 29 |
# File 'lib/grape/namespace.rb', line 27 def self.joined_space(settings) settings&.map(&:space) end |
.joined_space_path(settings) ⇒ Object
Join the namespaces from a list of settings to create a path prefix.
33 34 35 |
# File 'lib/grape/namespace.rb', line 33 def self.joined_space_path(settings) JoinedSpaceCache[joined_space(settings)] end |
Instance Method Details
#requirements ⇒ Hash
Retrieves the requirements from the options hash, if given.
22 23 24 |
# File 'lib/grape/namespace.rb', line 22 def requirements [:requirements] || {} end |