Class: PhraseAppUpdater::LocaleFile::JSONFile

Inherits:
PhraseAppUpdater::LocaleFile show all
Defined in:
lib/phraseapp_updater/locale_file/json_file.rb

Constant Summary collapse

EXTENSION =
"json"
PHRASEAPP_TYPE =
"nested_json"

Instance Attribute Summary

Attributes inherited from PhraseAppUpdater::LocaleFile

#content, #locale_name, #parsed_content

Class Method Summary collapse

Methods inherited from PhraseAppUpdater::LocaleFile

class_for_file_format, #filename, from_file_content, from_hash, load_directory, load_file, #to_s

Class Method Details

.dump(hash) ⇒ Object



23
24
25
26
# File 'lib/phraseapp_updater/locale_file/json_file.rb', line 23

def dump(hash)
  # Add indentation for better diffs
  Oj.dump(hash, indent: 2, mode: :strict)
end

.extensionObject



28
29
30
# File 'lib/phraseapp_updater/locale_file/json_file.rb', line 28

def extension
  EXTENSION
end

.load(content) ⇒ Object



17
18
19
20
21
# File 'lib/phraseapp_updater/locale_file/json_file.rb', line 17

def load(content)
  Oj.load(content)
rescue Oj::ParseError => e
  raise ArgumentError.new("Provided content was not valid JSON: #{e}")
end

.phraseapp_typeObject



32
33
34
# File 'lib/phraseapp_updater/locale_file/json_file.rb', line 32

def phraseapp_type
  PHRASEAPP_TYPE
end