Class: AboutYou::SDK::Model::FacetGroup
- Inherits:
-
Object
- Object
- AboutYou::SDK::Model::FacetGroup
- Defined in:
- lib/AboutYou/Model/facet_group.rb
Overview
This class represents a facet group model
Instance Attribute Summary collapse
-
#facets ⇒ Object
Returns the value of attribute facets.
-
#group_id ⇒ Object
Returns the value of attribute group_id.
-
#id ⇒ Object
Returns the value of attribute id.
-
#name ⇒ Object
Returns the value of attribute name.
Instance Method Summary collapse
- #add_facet(facet) ⇒ Object
- #add_facets(facets) ⇒ Object
- #contains(facet) ⇒ Object
-
#equal?(facet_group) ⇒ Boolean
facet groups are equal, if the ids and all child ids are equal.
-
#facet_names(separator = '/') ⇒ Object
Returns all facet names separated with the given parameter eg.
- #ids ⇒ Object
-
#initialize(id, name) ⇒ FacetGroup
constructor
A new instance of FacetGroup.
-
#unique_key ⇒ Object
String.
Constructor Details
#initialize(id, name) ⇒ FacetGroup
Returns a new instance of FacetGroup.
22 23 24 25 26 |
# File 'lib/AboutYou/Model/facet_group.rb', line 22 def initialize(id, name) self.id = id self.name = name self.facets = {} end |
Instance Attribute Details
#facets ⇒ Object
Returns the value of attribute facets.
11 12 13 |
# File 'lib/AboutYou/Model/facet_group.rb', line 11 def facets @facets end |
#group_id ⇒ Object
Returns the value of attribute group_id.
16 17 18 |
# File 'lib/AboutYou/Model/facet_group.rb', line 16 def group_id @group_id end |
#id ⇒ Object
Returns the value of attribute id.
13 14 15 |
# File 'lib/AboutYou/Model/facet_group.rb', line 13 def id @id end |
#name ⇒ Object
Returns the value of attribute name.
15 16 17 |
# File 'lib/AboutYou/Model/facet_group.rb', line 15 def name @name end |
Instance Method Details
#add_facet(facet) ⇒ Object
31 32 33 |
# File 'lib/AboutYou/Model/facet_group.rb', line 31 def add_facet(facet) facets[facet.id] = facet end |
#add_facets(facets) ⇒ Object
38 39 40 41 42 |
# File 'lib/AboutYou/Model/facet_group.rb', line 38 def add_facets(facets) facets.each do |facet| add_facet(facet) end end |
#contains(facet) ⇒ Object
90 91 92 |
# File 'lib/AboutYou/Model/facet_group.rb', line 90 def contains(facet) facets.key?(facet.id) end |
#equal?(facet_group) ⇒ Boolean
facet groups are equal, if the ids and all child ids are equal
68 69 70 71 72 |
# File 'lib/AboutYou/Model/facet_group.rb', line 68 def equal?(facet_group) return false unless id == facet_group.id unique_key == facet_group.unique_key end |
#facet_names(separator = '/') ⇒ Object
Returns all facet names separated with the given parameter eg. for size with to size facets “36” and “37” -> “36/37”
52 53 54 55 56 57 58 59 |
# File 'lib/AboutYou/Model/facet_group.rb', line 52 def facet_names(separator = '/') names = [] facets.each do |facet| names.push(facet.name) end names.join(separator) end |
#ids ⇒ Object
86 87 88 |
# File 'lib/AboutYou/Model/facet_group.rb', line 86 def ids { id => facets.keys } end |
#unique_key ⇒ Object
Returns string.
79 80 81 82 83 84 |
# File 'lib/AboutYou/Model/facet_group.rb', line 79 def unique_key facet_ids = facets.keys facet_ids.sort! String(id) + ':' + String(facet_ids.join(',')) end |