lib/carioca/registry_file.rb in carioca-2.0.4 vs lib/carioca/registry_file.rb in carioca-2.0.5

- old
+ new

@@ -1,62 +1,59 @@ +# frozen_string_literal: true + module Carioca + class RegistryFile + attr_accessor :validated, :altered - - + include Carioca::Constants - class RegistryFile + def initialize(filename:) + @filename = filename + @candidates = {} + @validated = {} + @altered = [] + open + end - attr_accessor :validated, :altered - include Carioca::Constants + def altered? + !@altered.empty? + end - def initialize(filename:) - @filename = filename - @candidates = Hash::new - @validated = Hash::new - @altered = [] - open - end + def create!(force: false) + write_ok = true + write_ok = force if File.exist? @filename + File.write(@filename, @validated.to_yaml) if write_ok + end - def altered? - return !@altered.empty? - end + def save! + create! force: true + end - def create!(force: false) - write_ok = true - write_ok = force if File::exist? @filename - File.open(@filename, 'w') { |file| file.write(@validated.to_yaml) } if write_ok - end + def add(service:, definition:) + checker = Carioca::Services::Validator.new service: service, definition: definition + checker.validate! + @validated[service] = checker.definition + end - def save! - create! force: true - end + def open + if File.exist?(@filename) + @candidates = YAML.load_file(@filename) + else + create! + end + prepare! + end - def add(service:, definition: ) - checker = Carioca::Services::Validator::new service: service , definition: definition - checker.validate! - @validated[service] = checker.definition - end + private - def open - if File::exist?(@filename) then - @candidates = YAML.load_file(@filename) - else - create! - end - prepare! - end - - private - def prepare! - save = @candidates.dup - @candidates.delete_if {|key, value| BUILTINS.keys.include? key } - @altered = save.keys - @candidates.keys - @candidates.each do |service, definition| - checker = Carioca::Services::Validator::new service: service , definition: definition - checker.validate! - @validated[service] = checker.definition - end - end - - + def prepare! + save = @candidates.dup + @candidates.delete_if { |key, _value| BUILTINS.keys.include? key } + @altered = save.keys - @candidates.keys + @candidates.each do |service, definition| + checker = Carioca::Services::Validator.new service: service, definition: definition + checker.validate! + @validated[service] = checker.definition + end end -end \ No newline at end of file + end +end