Class: Virginity::FieldValues::SeparatedText::TextList

Inherits:
SerializingArray
  • Object
show all
Defined in:
lib/virginity/vcard/field_values/separated_text.rb

Instance Method Summary collapse

Constructor Details

#initialize(field) ⇒ TextList

Returns a new instance of TextList.



11
12
13
14
15
# File 'lib/virginity/vcard/field_values/separated_text.rb', line 11

def initialize(field)
  @field = field # a reference to the original Field
  super(EncodingDecoding::decode_text_list(@field.raw_value))
  save_sha1!
end

Instance Method Details

#needs_refresh?Boolean

Returns:



25
26
27
# File 'lib/virginity/vcard/field_values/separated_text.rb', line 25

def needs_refresh?
  @sha1 != sha1
end

#rewrite!Object



29
30
31
32
33
# File 'lib/virginity/vcard/field_values/separated_text.rb', line 29

def rewrite!
  @array.delete_if {|v| v.empty? }
  @field.raw_value = EncodingDecoding::encode_text_list(@array)
  save_sha1!
end

#save_sha1!Object



21
22
23
# File 'lib/virginity/vcard/field_values/separated_text.rb', line 21

def save_sha1!
  @sha1 = sha1
end

#sha1Object



17
18
19
# File 'lib/virginity/vcard/field_values/separated_text.rb', line 17

def sha1
  Digest::SHA1.hexdigest(@field.raw_value)
end