Class: Roll

Inherits:
Object
  • Object
show all
Defined in:
lib/dim_wishlist/roll.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(item_id:, perks:, notes: nil) ⇒ Roll

Returns a new instance of Roll.



12
13
14
15
16
# File 'lib/dim_wishlist/roll.rb', line 12

def initialize(item_id:, perks:, notes: nil)
  @item_id = item_id
  @perks = perks
  @notes = notes
end

Instance Attribute Details

#item_idObject

Returns the value of attribute item_id.



4
5
6
# File 'lib/dim_wishlist/roll.rb', line 4

def item_id
  @item_id
end

#notesObject

Returns the value of attribute notes.



4
5
6
# File 'lib/dim_wishlist/roll.rb', line 4

def notes
  @notes
end

#perksObject

Returns the value of attribute perks.



4
5
6
# File 'lib/dim_wishlist/roll.rb', line 4

def perks
  @perks
end

Class Method Details

.key(item_id, perks) ⇒ Object



7
8
9
# File 'lib/dim_wishlist/roll.rb', line 7

def key(item_id, perks)
  Digest::SHA2.new(512).hexdigest "#{item_id},#{perks.join(',')}"
end

Instance Method Details

#keyObject



18
19
20
# File 'lib/dim_wishlist/roll.rb', line 18

def key
  self.class.key(@item_id, @perks)
end

#to_sObject



22
23
24
# File 'lib/dim_wishlist/roll.rb', line 22

def to_s
  "dimwishlist:item=#{@item_id}&perks=#{perks.join(',')}#{!@notes.nil? ? "#notes:#{notes}" : ''}"
end