class Spaceship::Tunes::LanguageItem
Represents one attribute (e.g. name) of an app in multiple languages
Attributes
identifier[RW]
original_array[RW]
Public Class Methods
new(identifier, ref)
click to toggle source
# File spaceship/lib/spaceship/tunes/language_item.rb, line 8 def initialize(identifier, ref) raise "ref is nil" if ref.nil? self.identifier = identifier.to_s self.original_array = ref end
Public Instance Methods
[](key)
click to toggle source
# File spaceship/lib/spaceship/tunes/language_item.rb, line 15 def [](key) get_value(key: key) end
[]=(key, value)
click to toggle source
# File spaceship/lib/spaceship/tunes/language_item.rb, line 19 def []=(key, value) get_lang(key)[identifier]['value'] = value end
get_lang(lang)
click to toggle source
# File spaceship/lib/spaceship/tunes/language_item.rb, line 27 def get_lang(lang) result = self.original_array.find do |current| lang = lang.to_s current['language'] == lang or current['localeCode'] == lang # Apple being consistent end return result if result raise "Language '#{lang}' is not activated / available for this app version." end
get_value(key: nil)
click to toggle source
# File spaceship/lib/spaceship/tunes/language_item.rb, line 23 def get_value(key: nil) get_lang(key)[identifier]['value'] end
inspect()
click to toggle source
# File spaceship/lib/spaceship/tunes/language_item.rb, line 48 def inspect result = "" self.original_array.collect do |current| result += "#{current['language'] ||= current['localeCode']}: #{current.fetch(identifier, {}).fetch('value')}\n" end result end
keys()
click to toggle source
@return (Array
) An array containing all languages that are already available
# File spaceship/lib/spaceship/tunes/language_item.rb, line 38 def keys return self.original_array.map { |current| current['language'] ||= current['localeCode'] } # Apple being consistent end
languages()
click to toggle source
@return (Array
) An array containing all languages that are already available
alias for keys
# File spaceship/lib/spaceship/tunes/language_item.rb, line 44 def languages keys end
to_s()
click to toggle source
# File spaceship/lib/spaceship/tunes/language_item.rb, line 56 def to_s inspect end