Sha256: 6d55da9c35de826512366e59623e498c8b518644f607fb7fd80b302fc917e33c

Contents?: true

Size: 1.25 KB

Versions: 18

Compression:

Stored size: 1.25 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.to_s
        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(',')
          when DisplayField[:RegexBox]
            configuration.value = Regexp.new ini[rule][configuration.id]
          else
            configuration.value = ini[rule][configuration.id]
          end
        end
      end
    end
  end

end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
puppet-sec-lint-1.0.0 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.17 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.16 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.15 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.14 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.13 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.11 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.10 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.9 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.8 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.7 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.6 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.5 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.4 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.3 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.2 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.1 lib/facades/configuration_file_facade.rb
puppet-sec-lint-0.5.0 lib/facades/configuration_file_facade.rb