Sha256: 72902735d7133536cd432531596f83e0834acff6673034e0f223380babdd6dab
Contents?: true
Size: 1.25 KB
Versions: 1
Compression:
Stored size: 1.25 KB
Contents
require 'thor' module LicenseFinder module CLI class Base < Thor class_option :decisions_file, desc: "Where decisions are saved. Defaults to doc/dependency_decisions.yml." no_commands do def decisions license_finder.decisions end end private def license_finder @lf ||= LicenseFinder::Core.new(license_finder_config) end def license_finder_config result = extract_options(:decisions_file, :gradle_command) result[:logger] = logger_config result[:project_path] = Pathname.pwd result end def logger_config @logger_config ||= extract_options(:quiet, :debug) end def say_each(coll) if coll.any? coll.each do |item| say(block_given? ? yield(item) : item) end else say '(none)' end end def assert_some(things) unless things.any? raise ArgumentError, "wrong number of arguments (0 for 1+)", caller end end def extract_options(*keys) result = {} keys.each do |key| result[key.to_sym] = options[key.to_s] if options.has_key? key.to_s end result end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
license_finder-2.0.0 | lib/license_finder/cli/base.rb |