Class: Archruby::Architecture::ConfigDefinition
- Inherits:
-
Object
- Object
- Archruby::Architecture::ConfigDefinition
- Defined in:
- lib/archruby/architecture/config_definition.rb
Constant Summary collapse
- ALLOWED_CONSTRAINTS =
['required', 'allowed', 'forbidden']
Instance Attribute Summary collapse
-
#allowed_modules ⇒ Object
Returns the value of attribute allowed_modules.
-
#files ⇒ Object
readonly
Returns the value of attribute files.
-
#forbidden_modules ⇒ Object
Returns the value of attribute forbidden_modules.
-
#gems ⇒ Object
readonly
Returns the value of attribute gems.
-
#module_name ⇒ Object
readonly
Returns the value of attribute module_name.
-
#required_modules ⇒ Object
Returns the value of attribute required_modules.
Instance Method Summary collapse
-
#initialize(module_name, definitions) ⇒ ConfigDefinition
constructor
A new instance of ConfigDefinition.
- #normalize_string_spaces(array_of_strings) ⇒ Object
- #parse_constraints(definitions) ⇒ Object
- #parse_files(files) ⇒ Object
- #parse_gems(gems) ⇒ Object
Constructor Details
#initialize(module_name, definitions) ⇒ ConfigDefinition
Returns a new instance of ConfigDefinition.
10 11 12 13 14 15 |
# File 'lib/archruby/architecture/config_definition.rb', line 10 def initialize module_name, definitions @module_name = module_name @files = parse_files definitions['files'] @gems = parse_gems definitions['gems'] parse_constraints definitions end |
Instance Attribute Details
#allowed_modules ⇒ Object
Returns the value of attribute allowed_modules.
8 9 10 |
# File 'lib/archruby/architecture/config_definition.rb', line 8 def allowed_modules @allowed_modules end |
#files ⇒ Object (readonly)
Returns the value of attribute files.
8 9 10 |
# File 'lib/archruby/architecture/config_definition.rb', line 8 def files @files end |
#forbidden_modules ⇒ Object
Returns the value of attribute forbidden_modules.
8 9 10 |
# File 'lib/archruby/architecture/config_definition.rb', line 8 def forbidden_modules @forbidden_modules end |
#gems ⇒ Object (readonly)
Returns the value of attribute gems.
8 9 10 |
# File 'lib/archruby/architecture/config_definition.rb', line 8 def gems @gems end |
#module_name ⇒ Object (readonly)
Returns the value of attribute module_name.
8 9 10 |
# File 'lib/archruby/architecture/config_definition.rb', line 8 def module_name @module_name end |
#required_modules ⇒ Object
Returns the value of attribute required_modules.
8 9 10 |
# File 'lib/archruby/architecture/config_definition.rb', line 8 def required_modules @required_modules end |
Instance Method Details
#normalize_string_spaces(array_of_strings) ⇒ Object
40 41 42 |
# File 'lib/archruby/architecture/config_definition.rb', line 40 def normalize_string_spaces array_of_strings array_of_strings.map! {|element| element.strip } end |
#parse_constraints(definitions) ⇒ Object
31 32 33 34 35 36 37 38 |
# File 'lib/archruby/architecture/config_definition.rb', line 31 def parse_constraints definitions check_constraints definitions ALLOWED_CONSTRAINTS.each do |constraint| constraint_definition = definitions[constraint] constraint_definition = '' if constraint_definition.nil? send "#{constraint}_modules=", normalize_string_spaces(constraint_definition.split(',')) end end |
#parse_files(files) ⇒ Object
17 18 19 20 21 22 |
# File 'lib/archruby/architecture/config_definition.rb', line 17 def parse_files files files = '' if files.nil? files = files.split(',') normalize_string_spaces files files end |
#parse_gems(gems) ⇒ Object
24 25 26 27 28 29 |
# File 'lib/archruby/architecture/config_definition.rb', line 24 def parse_gems gems gems = '' if gems.nil? gems = gems.split(',') normalize_string_spaces gems gems end |