Class: Archimate::FileFormats::Serializer::XmlLangString

Inherits:
Object
  • Object
show all
Defined in:
lib/archimate/file_formats/serializer/xml_lang_string.rb

Instance Method Summary collapse

Constructor Details

#initialize(lang_str, tag_name) ⇒ XmlLangString

Returns a new instance of XmlLangString.



7
8
9
10
# File 'lib/archimate/file_formats/serializer/xml_lang_string.rb', line 7

def initialize(lang_str, tag_name)
  @tag_name = tag_name
  @lang_str = lang_str
end

Instance Method Details

#serialize(xml) ⇒ Object



12
13
14
15
16
17
18
19
# File 'lib/archimate/file_formats/serializer/xml_lang_string.rb', line 12

def serialize(xml)
  return unless @lang_str && !@lang_str.empty?

  @lang_str.langs.each do |lang|
    attrs = lang && !lang.empty? ? { "xml:lang" => lang } : {}
    xml.send(@tag_name, attrs) { xml.text text_proc(@lang_str.by_lang(lang)) }
  end
end