Class: MissingTranslation::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/missing_translation/configuration.rb

Constant Summary collapse

FILE_NAME =
"missing_translation.yml"

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



31
32
33
34
35
36
37
38
# File 'lib/missing_translation/configuration.rb', line 31

def initialize
  @file = File.open(FILE_NAME)
  unless @file
    puts "Configuration file does not exist"
    return
  end
  @config = (YAML.load(@file.read) || { key: nil })
end

Instance Attribute Details

#configObject

Returns the value of attribute config.



6
7
8
# File 'lib/missing_translation/configuration.rb', line 6

def config
  @config
end

Class Method Details

.create_fileObject



13
14
15
16
17
18
19
20
# File 'lib/missing_translation/configuration.rb', line 13

def self.create_file
  File.open(FILE_NAME, 'w+') do |f|
    f.flock(File::LOCK_EX)
    f.rewind
    f.write({ key: nil, locale_prefix: true }.to_yaml)
    f.flush
  end
end

.file_exists?Boolean

Returns:

  • (Boolean)


9
10
11
# File 'lib/missing_translation/configuration.rb', line 9

def self.file_exists?
  File.exist?(FILE_NAME)
end

.write_config(config) ⇒ Object



22
23
24
25
26
27
28
29
# File 'lib/missing_translation/configuration.rb', line 22

def self.write_config(config)
  File.open(FILE_NAME, "w+") do |f|
    f.flock(File::LOCK_EX)
    f.truncate(0)
    f.write(config.to_hash.to_yaml)
    f.flush
  end
end

Instance Method Details

#update_key(key) ⇒ Object



40
41
42
43
# File 'lib/missing_translation/configuration.rb', line 40

def update_key(key)
  @config[:key] = key
  self.class.write_config(@config)
end