Sha256: 84b9585417c9754ab58ead8b5c161b96433d699896f0874a11fcfe6ccf65ed11

Contents?: true

Size: 809 Bytes

Versions: 10

Compression:

Stored size: 809 Bytes

Contents

module HammerCLI
  module Options
    module Sources
      class SavedDefaults
        def initialize(defaults, logger)
          @defaults = defaults
          @logger = logger
        end

        def get_options(defined_options, result)
          defined_options.each do |opt|
            result[opt.attribute_name] = add_custom_defaults(opt) if result[opt.attribute_name].nil?
          end if @defaults
          result
        end

        protected
        def add_custom_defaults(opt)
          opt.switches.each do |switch|
            value = @defaults.get_defaults(switch)
            if value
              @logger.info("Custom default value #{value} was used for attribute #{switch}")
              return value
            end
          end
          nil
        end
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
hammer_cli-0.15.1 lib/hammer_cli/options/sources/saved_defaults.rb
hammer_cli-0.15.0 lib/hammer_cli/options/sources/saved_defaults.rb
hammer_cli-0.14.0 lib/hammer_cli/options/sources/saved_defaults.rb
hammer_cli-0.13.1 lib/hammer_cli/options/sources/saved_defaults.rb
hammer_cli-0.13.0 lib/hammer_cli/options/sources/saved_defaults.rb
hammer_cli-0.12.0 lib/hammer_cli/options/sources/saved_defaults.rb
hammer_cli-0.11.0 lib/hammer_cli/options/sources/saved_defaults.rb
hammer_cli-0.10.2 lib/hammer_cli/options/sources/saved_defaults.rb
hammer_cli-0.10.1 lib/hammer_cli/options/sources/saved_defaults.rb
hammer_cli-0.10.0 lib/hammer_cli/options/sources/saved_defaults.rb