Module: Serega::SeregaConfig::SeregaConfigInstanceMethods
- Included in:
- Serega::SeregaConfig
- Defined in:
- lib/serega/config.rb
Overview
SeregaConfig Instance methods
Instance Attribute Summary collapse
-
#opts ⇒ Hash
readonly
Shows current config as Hash.
Instance Method Summary collapse
-
#attribute_keys ⇒ Array<Symbol>
Returns options names allowed in ‘Serega.attribute` method.
-
#auto_hide ⇒ Hash
Auto_hide option.
-
#auto_hide=(value) ⇒ Hash
Validates and sets auto_hide option.
-
#auto_preload ⇒ Hash
Auto_preload option.
-
#auto_preload=(value) ⇒ Hash
Validates and sets auto_preload option.
-
#batch_id_option ⇒ Object
Returns current batch_id_option.
-
#batch_id_option=(value) ⇒ Symbol
Sets :batch_id_option config option.
-
#check_attribute_name ⇒ Object
Returns whether attributes names check is disabled.
-
#check_attribute_name=(value) ⇒ Boolean
Sets :check_attribute_name config option.
-
#check_initiate_params ⇒ Boolean
Returns :check_initiate_params config option.
-
#check_initiate_params=(value) ⇒ Boolean
Sets :check_initiate_params config option.
-
#delegate_default_allow_nil ⇒ Boolean
Returns :delegate_default_allow_nil config option.
-
#delegate_default_allow_nil=(value) ⇒ Boolean
Sets :delegate_default_allow_nil config option.
-
#initialize(opts = nil) ⇒ Object
Initializes new config instance.
-
#initiate_keys ⇒ Array<Symbol>
Returns options names allowed in ‘Serega#new` method.
-
#max_cached_plans_per_serializer_count ⇒ Boolean
Returns :max_cached_plans_per_serializer_count config option.
-
#max_cached_plans_per_serializer_count=(value) ⇒ Boolean
Sets :max_cached_plans_per_serializer_count config option.
-
#plugins ⇒ Array
Shows used plugins.
-
#serialize_keys ⇒ Array<Symbol>
Returns options names allowed in ‘call, to_h` methods.
Instance Attribute Details
#opts ⇒ Hash (readonly)
Shows current config as Hash
47 48 49 |
# File 'lib/serega/config.rb', line 47 def opts @opts end |
Instance Method Details
#attribute_keys ⇒ Array<Symbol>
Returns options names allowed in ‘Serega.attribute` method
76 77 78 |
# File 'lib/serega/config.rb', line 76 def attribute_keys opts.fetch(:attribute_keys) end |
#auto_hide ⇒ Hash
Returns auto_hide option.
119 120 121 |
# File 'lib/serega/config.rb', line 119 def auto_hide opts.fetch(:auto_hide) end |
#auto_hide=(value) ⇒ Hash
Validates and sets auto_hide option
125 126 127 128 129 130 131 132 133 134 135 136 |
# File 'lib/serega/config.rb', line 125 def auto_hide=(value) opts[:auto_hide] = case value when true then {has_preload_option: true, has_batch_option: true} when false then {has_preload_option: false, has_batch_option: false} when Hash SeregaValidations::Utils::CheckAllowedKeys.call(value, %i[has_preload_option has_batch_option], "auto_hide") {has_preload_option: !!value[:has_preload_option], has_batch_option: !!value[:has_batch_option]} else raise SeregaError, "Must have boolean value or Hash, #{value.inspect} provided" end end |
#auto_preload ⇒ Hash
Returns auto_preload option.
139 140 141 |
# File 'lib/serega/config.rb', line 139 def auto_preload opts.fetch(:auto_preload) end |
#auto_preload=(value) ⇒ Hash
Validates and sets auto_preload option
145 146 147 148 149 150 151 152 153 154 155 156 |
# File 'lib/serega/config.rb', line 145 def auto_preload=(value) opts[:auto_preload] = case value when true then {has_delegate_option: true, has_serializer_option: true} when false then {has_delegate_option: false, has_serializer_option: false} when Hash SeregaValidations::Utils::CheckAllowedKeys.call(value, %i[has_delegate_option has_serializer_option], "auto_preload") {has_delegate_option: !!value[:has_delegate_option], has_serializer_option: !!value[:has_serializer_option]} else raise SeregaError, "Must have boolean value or Hash, #{value.inspect} provided" end end |
#batch_id_option ⇒ Object
Returns current batch_id_option
190 191 192 |
# File 'lib/serega/config.rb', line 190 def batch_id_option opts.fetch(:batch_id_option) end |
#batch_id_option=(value) ⇒ Symbol
Sets :batch_id_option config option
199 200 201 202 |
# File 'lib/serega/config.rb', line 199 def batch_id_option=(value) raise SeregaError, "Must have Symbol value, #{value.inspect} provided" unless value.is_a?(Symbol) opts[:batch_id_option] = value end |
#check_attribute_name ⇒ Object
Returns whether attributes names check is disabled
175 176 177 |
# File 'lib/serega/config.rb', line 175 def check_attribute_name opts.fetch(:check_attribute_name) end |
#check_attribute_name=(value) ⇒ Boolean
Sets :check_attribute_name config option
184 185 186 187 |
# File 'lib/serega/config.rb', line 184 def check_attribute_name=(value) raise SeregaError, "Must have boolean value, #{value.inspect} provided" if (value != true) && (value != false) opts[:check_attribute_name] = value end |
#check_initiate_params ⇒ Boolean
Returns :check_initiate_params config option
88 89 90 |
# File 'lib/serega/config.rb', line 88 def check_initiate_params opts.fetch(:check_initiate_params) end |
#check_initiate_params=(value) ⇒ Boolean
Sets :check_initiate_params config option
97 98 99 100 |
# File 'lib/serega/config.rb', line 97 def check_initiate_params=(value) raise SeregaError, "Must have boolean value, #{value.inspect} provided" if (value != true) && (value != false) opts[:check_initiate_params] = value end |
#delegate_default_allow_nil ⇒ Boolean
Returns :delegate_default_allow_nil config option
104 105 106 |
# File 'lib/serega/config.rb', line 104 def delegate_default_allow_nil opts.fetch(:delegate_default_allow_nil) end |
#delegate_default_allow_nil=(value) ⇒ Boolean
Sets :delegate_default_allow_nil config option
113 114 115 116 |
# File 'lib/serega/config.rb', line 113 def delegate_default_allow_nil=(value) raise SeregaError, "Must have boolean value, #{value.inspect} provided" if (value != true) && (value != false) opts[:delegate_default_allow_nil] = value end |
#initialize(opts = nil) ⇒ Object
Initializes new config instance.
54 55 56 57 |
# File 'lib/serega/config.rb', line 54 def initialize(opts = nil) opts ||= DEFAULTS @opts = SeregaUtils::EnumDeepDup.call(opts) end |
#initiate_keys ⇒ Array<Symbol>
Returns options names allowed in ‘Serega#new` method
70 71 72 |
# File 'lib/serega/config.rb', line 70 def initiate_keys opts.fetch(:initiate_keys) end |
#max_cached_plans_per_serializer_count ⇒ Boolean
Returns :max_cached_plans_per_serializer_count config option
160 161 162 |
# File 'lib/serega/config.rb', line 160 def max_cached_plans_per_serializer_count opts.fetch(:max_cached_plans_per_serializer_count) end |
#max_cached_plans_per_serializer_count=(value) ⇒ Boolean
Sets :max_cached_plans_per_serializer_count config option
169 170 171 172 |
# File 'lib/serega/config.rb', line 169 def max_cached_plans_per_serializer_count=(value) raise SeregaError, "Must have Integer value, #{value.inspect} provided" unless value.is_a?(Integer) opts[:max_cached_plans_per_serializer_count] = value end |
#plugins ⇒ Array
Shows used plugins
64 65 66 |
# File 'lib/serega/config.rb', line 64 def plugins opts.fetch(:plugins) end |
#serialize_keys ⇒ Array<Symbol>
Returns options names allowed in ‘call, to_h` methods
82 83 84 |
# File 'lib/serega/config.rb', line 82 def serialize_keys opts.fetch(:serialize_keys) end |