Module: Grape::DSL::Settings
- Extended by:
- ActiveSupport::Concern
- Included in:
- Configuration::ClassMethods, InsideRoute, Endpoint
- Defined in:
- lib/grape/dsl/settings.rb
Instance Attribute Summary collapse
-
#inheritable_setting ⇒ Object
Returns the value of attribute inheritable_setting.
-
#top_level_setting ⇒ Object
Returns the value of attribute top_level_setting.
Instance Method Summary collapse
- #api_class_setting(key, value = nil) ⇒ Object
- #get_or_set(type, key, value) ⇒ Object
- #global_setting(key, value = nil) ⇒ Object
- #namespace_end ⇒ Object
- #namespace_inheritable(key, value = nil) ⇒ Object
- #namespace_inheritable_to_nil(key) ⇒ Object
- #namespace_setting(key, value = nil) ⇒ Object
- #namespace_stackable(key, value = nil) ⇒ Object
- #namespace_start ⇒ Object
- #route_end ⇒ Object
- #route_setting(key, value = nil) ⇒ Object
- #unset(type, key) ⇒ Object
- #unset_api_class_setting(key) ⇒ Object
- #unset_global_setting(key) ⇒ Object
- #unset_namespace_inheritable(key) ⇒ Object
- #unset_namespace_setting(key) ⇒ Object
- #unset_namespace_stackable(key) ⇒ Object
- #unset_route_setting(key) ⇒ Object
- #within_namespace(&block) ⇒ Object
Instance Attribute Details
#inheritable_setting ⇒ Object
Returns the value of attribute inheritable_setting.
8 9 10 |
# File 'lib/grape/dsl/settings.rb', line 8 def inheritable_setting @inheritable_setting end |
#top_level_setting ⇒ Object
Returns the value of attribute top_level_setting.
8 9 10 |
# File 'lib/grape/dsl/settings.rb', line 8 def top_level_setting @top_level_setting end |
Instance Method Details
#api_class_setting(key, value = nil) ⇒ Object
76 77 78 |
# File 'lib/grape/dsl/settings.rb', line 76 def api_class_setting(key, value = nil) get_or_set :api_class, key, value end |
#get_or_set(type, key, value) ⇒ Object
23 24 25 26 27 28 29 30 |
# File 'lib/grape/dsl/settings.rb', line 23 def get_or_set(type, key, value) setting = inheritable_setting.send(type) if value.nil? setting[key] else setting[key] = value end end |
#global_setting(key, value = nil) ⇒ Object
32 33 34 |
# File 'lib/grape/dsl/settings.rb', line 32 def global_setting(key, value = nil) get_or_set :global, key, value end |
#namespace_end ⇒ Object
88 89 90 91 |
# File 'lib/grape/dsl/settings.rb', line 88 def namespace_end route_end @inheritable_setting = inheritable_setting.parent end |
#namespace_inheritable(key, value = nil) ⇒ Object
56 57 58 |
# File 'lib/grape/dsl/settings.rb', line 56 def namespace_inheritable(key, value = nil) get_or_set :namespace_inheritable, key, value end |
#namespace_inheritable_to_nil(key) ⇒ Object
64 65 66 |
# File 'lib/grape/dsl/settings.rb', line 64 def namespace_inheritable_to_nil(key) inheritable_setting.namespace_inheritable[key] = nil end |
#namespace_setting(key, value = nil) ⇒ Object
48 49 50 |
# File 'lib/grape/dsl/settings.rb', line 48 def namespace_setting(key, value = nil) get_or_set :namespace, key, value end |
#namespace_stackable(key, value = nil) ⇒ Object
68 69 70 |
# File 'lib/grape/dsl/settings.rb', line 68 def namespace_stackable(key, value = nil) get_or_set :namespace_stackable, key, value end |
#namespace_start ⇒ Object
84 85 86 |
# File 'lib/grape/dsl/settings.rb', line 84 def namespace_start @inheritable_setting = Grape::Util::InheritableSetting.new.tap { |new_settings| new_settings.inherit_from inheritable_setting } end |
#route_end ⇒ Object
93 94 95 96 |
# File 'lib/grape/dsl/settings.rb', line 93 def route_end inheritable_setting.route_end reset_validations! end |
#route_setting(key, value = nil) ⇒ Object
40 41 42 |
# File 'lib/grape/dsl/settings.rb', line 40 def route_setting(key, value = nil) get_or_set :route, key, value end |
#unset(type, key) ⇒ Object
18 19 20 21 |
# File 'lib/grape/dsl/settings.rb', line 18 def unset(type, key) setting = inheritable_setting.send(type) setting.delete key end |
#unset_api_class_setting(key) ⇒ Object
80 81 82 |
# File 'lib/grape/dsl/settings.rb', line 80 def unset_api_class_setting(key) unset :api_class_setting, key end |
#unset_global_setting(key) ⇒ Object
36 37 38 |
# File 'lib/grape/dsl/settings.rb', line 36 def unset_global_setting(key) unset :global, key end |
#unset_namespace_inheritable(key) ⇒ Object
60 61 62 |
# File 'lib/grape/dsl/settings.rb', line 60 def unset_namespace_inheritable(key) unset :namespace_inheritable, key end |
#unset_namespace_setting(key) ⇒ Object
52 53 54 |
# File 'lib/grape/dsl/settings.rb', line 52 def unset_namespace_setting(key) unset :namespace_setting, key end |
#unset_namespace_stackable(key) ⇒ Object
72 73 74 |
# File 'lib/grape/dsl/settings.rb', line 72 def unset_namespace_stackable(key) unset :namespace_stackable, key end |
#unset_route_setting(key) ⇒ Object
44 45 46 |
# File 'lib/grape/dsl/settings.rb', line 44 def unset_route_setting(key) unset :route, key end |
#within_namespace(&block) ⇒ Object
98 99 100 101 102 103 104 105 106 107 |
# File 'lib/grape/dsl/settings.rb', line 98 def within_namespace(&block) namespace_start result = yield if block_given? namespace_end reset_validations! result end |