Sha256: e3f188d420034d8951c2b58911cfe4bb1643fa356b8a9028a71e5188901ff07c

Contents?: true

Size: 1.13 KB

Versions: 2

Compression:

Stored size: 1.13 KB

Contents

require 'inifile'

class ConfigurationFileFacade

  def self.SaveConfigurations
    @configurations_hash = ConfigurationVisitor.Visit

    ini = IniFile.new( :filename => 'settings.ini', :encoding => 'UTF-8' )

    @configurations_hash.each do |rule, configurations|
      configurations.each do |configuration|
        case configuration.displayfield
        when DisplayField[:SelectBox]
          ini[rule][configuration.id] = configuration.value.join(',')
        else
          ini[rule][configuration.id] = configuration.value
        end
      end
    end

    ini.save
  end

  def self.LoadConfigurations
    @configurations_hash = ConfigurationVisitor.Visit

    ini = IniFile.new( :filename => 'settings.ini')

    @configurations_hash.each do |rule, configurations|
      configurations.each do |configuration|
        if(not ini[rule][configuration.id].nil?)
          case configuration.displayfield
          when DisplayField[:SelectBox]
            configuration.value = ini[rule][configuration.id].split(',')
          else
            configuration.value = ini[rule][configuration.id]
          end
        end
      end
    end
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
puppet-sec-lint-0.1.2 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.1.1 lib/facades/configuration_file_facade.rb