Sha256: 8fb8936c7f64e738d323fe81d9f93548b0c5d5f7ab702722851c8bb5cfc0f7fb
Contents?: true
Size: 1.32 KB
Versions: 2
Compression:
Stored size: 1.32 KB
Contents
module LicenseFinder module DependencyManager def self.sync_with_bundler modifying { current_dependencies = LicenseFinder.current_gems.map(&:save_as_dependency) Dependency.bundler.obsolete(current_dependencies).each(&:destroy) } end def self.create_non_bundler(license, name, version) raise Error.new("#{name} dependency already exists") unless Dependency.where(name: name).empty? modifying { dependency = Dependency.new(manual: true, name: name, version: version) dependency.license = LicenseAlias.create(name: license) dependency.approval = Approval.create dependency.save } end def self.destroy_non_bundler(name) modifying { find_by_name(name, Dependency.non_bundler).destroy } end def self.license!(name, license) modifying { find_by_name(name).license.set_manually(license) } end def self.approve!(name) modifying { find_by_name(name).approve! } end private # not really private, but it looks like it is! def self.find_by_name(name, scope = Dependency) dep = scope.first(name: name) raise Error.new("could not find dependency named #{name}") unless dep dep end def self.modifying result = yield Reporter.write_reports result end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
license_finder-0.9.0-java | lib/license_finder/dependency_manager.rb |
license_finder-0.9.0 | lib/license_finder/dependency_manager.rb |