Class: BabelDiff::ImportFileHandler

Inherits:
Struct
  • Object
show all
Defined in:
lib/babel_diff/import_file_handler.rb

Defined Under Namespace

Classes: ImportFile, PhraseFile

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#import_directoryObject

Returns the value of attribute import_directory

Returns:

  • (Object)

    the current value of import_directory



3
4
5
# File 'lib/babel_diff/import_file_handler.rb', line 3

def import_directory
  @import_directory
end

#phrase_directoryObject

Returns the value of attribute phrase_directory

Returns:

  • (Object)

    the current value of phrase_directory



3
4
5
# File 'lib/babel_diff/import_file_handler.rb', line 3

def phrase_directory
  @phrase_directory
end

Instance Method Details

#phrasesObject



5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/babel_diff/import_file_handler.rb', line 5

def phrases
  phrase_files = Dir.glob(phrase_directory + '/*.yml').map {|f| PhraseFile.new(f) }
  import_files = Dir.glob(import_directory + '/*/*.yml').map {|f| ImportFile.new(f) }

  matched_files = {}

  phrase_files.each do |phrase|
    if matched_import = import_files.detect {|i| i.language == phrase.language }
      matched_files[phrase.language] = [phrase.contents, matched_import.contents]
    end
  end

  matched_files
end

#update_phrase(language, contents) ⇒ Object



20
21
22
23
24
# File 'lib/babel_diff/import_file_handler.rb', line 20

def update_phrase(language, contents)
  File.open(phrase_directory + "/phrase.#{language}.yml", "w+") do |file|
    file.write(contents)
  end
end