Class: Servactory::Configuration::Factory

Inherits:
Object
  • Object
show all
Defined in:
lib/servactory/configuration/factory.rb

Overview

rubocop:disable Metrics/ClassLength

Instance Method Summary collapse

Constructor Details

#initialize(config) ⇒ Factory

Returns a new instance of Factory.



6
7
8
# File 'lib/servactory/configuration/factory.rb', line 6

def initialize(config)
  @config = config
end

Instance Method Details

#action_aliases(action_aliases) ⇒ Object



58
59
60
# File 'lib/servactory/configuration/factory.rb', line 58

def action_aliases(action_aliases)
  @config.action_aliases.merge(action_aliases)
end

#action_shortcuts(array, hash = {}) ⇒ Object

rubocop:disable Metrics/MethodLength



42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/servactory/configuration/factory.rb', line 42

def action_shortcuts(array, hash = {}) # rubocop:disable Metrics/MethodLength
  prepared = array.to_h do |action_shortcut|
    [
      action_shortcut,
      {
        prefix: action_shortcut,
        suffix: nil
      }
    ]
  end

  prepared = prepared.merge(hash)

  @config.action_shortcuts.merge(prepared)
end

#collection_mode_class_names(collection_mode_class_names) ⇒ Object



74
75
76
# File 'lib/servactory/configuration/factory.rb', line 74

def collection_mode_class_names(collection_mode_class_names)
  @config.collection_mode_class_names.merge(collection_mode_class_names)
end

#failure_class(failure_class) ⇒ Object



30
31
32
33
34
# File 'lib/servactory/configuration/factory.rb', line 30

def failure_class(failure_class)
  return @config.failure_class = failure_class if subclass_of_exception?(failure_class)

  raise_error_about_wrong_exception_class_with(:failure_class, failure_class)
end

#hash_mode_class_names(hash_mode_class_names) ⇒ Object



78
79
80
# File 'lib/servactory/configuration/factory.rb', line 78

def hash_mode_class_names(hash_mode_class_names)
  @config.hash_mode_class_names.merge(hash_mode_class_names)
end

#i18n_root_key(value) ⇒ Object



82
83
84
85
86
# File 'lib/servactory/configuration/factory.rb', line 82

def i18n_root_key(value)
  return @config.i18n_root_key = value.to_s if i18n_key?(value)

  raise_error_about_wrong_i18n_root_key_with(:i18n_root_key, value)
end

#input_exception_class(input_exception_class) ⇒ Object



10
11
12
13
14
# File 'lib/servactory/configuration/factory.rb', line 10

def input_exception_class(input_exception_class)
  return @config.input_exception_class = input_exception_class if subclass_of_exception?(input_exception_class)

  raise_error_about_wrong_exception_class_with(:input_exception_class, input_exception_class)
end

#input_option_helpers(input_option_helpers) ⇒ Object



62
63
64
# File 'lib/servactory/configuration/factory.rb', line 62

def input_option_helpers(input_option_helpers)
  @config.input_option_helpers.merge(input_option_helpers)
end

#internal_exception_class(internal_exception_class) ⇒ Object



16
17
18
19
20
21
22
# File 'lib/servactory/configuration/factory.rb', line 16

def internal_exception_class(internal_exception_class)
  if subclass_of_exception?(internal_exception_class)
    return @config.internal_exception_class = internal_exception_class
  end

  raise_error_about_wrong_exception_class_with(:internal_exception_class, internal_exception_class)
end

#internal_option_helpers(internal_option_helpers) ⇒ Object



66
67
68
# File 'lib/servactory/configuration/factory.rb', line 66

def internal_option_helpers(internal_option_helpers)
  @config.internal_option_helpers.merge(internal_option_helpers)
end

#output_exception_class(output_exception_class) ⇒ Object



24
25
26
27
28
# File 'lib/servactory/configuration/factory.rb', line 24

def output_exception_class(output_exception_class)
  return @config.output_exception_class = output_exception_class if subclass_of_exception?(output_exception_class)

  raise_error_about_wrong_exception_class_with(:output_exception_class, output_exception_class)
end

#output_option_helpers(output_option_helpers) ⇒ Object



70
71
72
# File 'lib/servactory/configuration/factory.rb', line 70

def output_option_helpers(output_option_helpers)
  @config.output_option_helpers.merge(output_option_helpers)
end

#predicate_methods_enabled(flag) ⇒ Object



88
89
90
91
92
# File 'lib/servactory/configuration/factory.rb', line 88

def predicate_methods_enabled(flag)
  return @config.predicate_methods_enabled = flag if boolean?(flag)

  raise_error_about_wrong_predicate_methods_enabled_with(:predicate_methods_enabled, flag)
end

#result_class(result_class) ⇒ Object



36
37
38
39
40
# File 'lib/servactory/configuration/factory.rb', line 36

def result_class(result_class)
  return @config.result_class = result_class if subclass_of_result?(result_class)

  raise_error_about_wrong_result_class_with(:result_class, result_class)
end