Class: RubyHome::ServiceTemplate
- Inherits:
-
Object
- Object
- RubyHome::ServiceTemplate
- Defined in:
- lib/ruby_home/factories/templates/service_template.rb
Constant Summary collapse
- FILEPATH =
(File.dirname(__FILE__) + '/../../config/services.yml').freeze
- DATA =
YAML.load_file(FILEPATH).freeze
Instance Attribute Summary collapse
-
#description ⇒ Object
readonly
Returns the value of attribute description.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#optional_characteristics_uuids ⇒ Object
readonly
Returns the value of attribute optional_characteristics_uuids.
-
#required_characteristics_uuids ⇒ Object
readonly
Returns the value of attribute required_characteristics_uuids.
-
#uuid ⇒ Object
readonly
Returns the value of attribute uuid.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(name:, description:, uuid:, optional_characteristics_uuids:, required_characteristics_uuids:) ⇒ ServiceTemplate
constructor
A new instance of ServiceTemplate.
- #optional_characteristics ⇒ Object
- #required_characteristics ⇒ Object
Constructor Details
#initialize(name:, description:, uuid:, optional_characteristics_uuids:, required_characteristics_uuids:) ⇒ ServiceTemplate
Returns a new instance of ServiceTemplate.
18 19 20 21 22 23 24 |
# File 'lib/ruby_home/factories/templates/service_template.rb', line 18 def initialize(name:, description:, uuid:, optional_characteristics_uuids:, required_characteristics_uuids:) @name = name @description = description @uuid = uuid @optional_characteristics_uuids = optional_characteristics_uuids @required_characteristics_uuids = required_characteristics_uuids end |
Instance Attribute Details
#description ⇒ Object (readonly)
Returns the value of attribute description.
26 27 28 |
# File 'lib/ruby_home/factories/templates/service_template.rb', line 26 def description @description end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
26 27 28 |
# File 'lib/ruby_home/factories/templates/service_template.rb', line 26 def name @name end |
#optional_characteristics_uuids ⇒ Object (readonly)
Returns the value of attribute optional_characteristics_uuids.
26 27 28 |
# File 'lib/ruby_home/factories/templates/service_template.rb', line 26 def optional_characteristics_uuids @optional_characteristics_uuids end |
#required_characteristics_uuids ⇒ Object (readonly)
Returns the value of attribute required_characteristics_uuids.
26 27 28 |
# File 'lib/ruby_home/factories/templates/service_template.rb', line 26 def required_characteristics_uuids @required_characteristics_uuids end |
#uuid ⇒ Object (readonly)
Returns the value of attribute uuid.
26 27 28 |
# File 'lib/ruby_home/factories/templates/service_template.rb', line 26 def uuid @uuid end |
Class Method Details
.all ⇒ Object
6 7 8 |
# File 'lib/ruby_home/factories/templates/service_template.rb', line 6 def self.all @all ||= DATA.map { |data| new(**data) } end |
.find_by(options) ⇒ Object
10 11 12 13 14 15 16 |
# File 'lib/ruby_home/factories/templates/service_template.rb', line 10 def self.find_by() all.find do |characteristic| .all? do |key, value| characteristic.send(key) == value end end end |
Instance Method Details
#optional_characteristics ⇒ Object
28 29 30 31 32 |
# File 'lib/ruby_home/factories/templates/service_template.rb', line 28 def optional_characteristics @optional_characteristics ||= optional_characteristics_uuids.map do |uuid| CharacteristicTemplate.find_by(uuid: uuid) end end |
#required_characteristics ⇒ Object
34 35 36 37 38 |
# File 'lib/ruby_home/factories/templates/service_template.rb', line 34 def required_characteristics @required_characteristics ||= required_characteristics_uuids.map do |uuid| CharacteristicTemplate.find_by(uuid: uuid) end end |