Module: LicenseFinder::DependencyManager
- Defined in:
- lib/license_finder/dependency_manager.rb
Class Method Summary collapse
- .approve!(name, approver = nil, notes = nil) ⇒ Object
- .license!(name, license_name) ⇒ Object
- .manually_add(license, name, version) ⇒ Object
- .manually_remove(name) ⇒ Object
- .modifying ⇒ Object
- .sync_with_package_managers ⇒ Object
Class Method Details
.approve!(name, approver = nil, notes = nil) ⇒ Object
32 33 34 |
# File 'lib/license_finder/dependency_manager.rb', line 32 def self.approve!(name, approver = nil, notes = nil) { find_by_name(name).approve!(approver, notes) } end |
.license!(name, license_name) ⇒ Object
27 28 29 30 |
# File 'lib/license_finder/dependency_manager.rb', line 27 def self.license!(name, license_name) license = License.find_by_name(license_name) { find_by_name(name).set_license_manually!(license) } end |
.manually_add(license, name, version) ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/license_finder/dependency_manager.rb', line 13 def self.manually_add(license, name, version) raise Error.new("#{name} dependency already exists") unless Dependency.where(name: name).empty? { dependency = Dependency.new(added_manually: true, name: name, version: version) dependency.license = License.find_by_name(license) dependency.save } end |
.manually_remove(name) ⇒ Object
23 24 25 |
# File 'lib/license_finder/dependency_manager.rb', line 23 def self.manually_remove(name) { find_by_name(name, Dependency.added_manually).destroy } end |
.modifying ⇒ Object
36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/license_finder/dependency_manager.rb', line 36 def self. checksum_before = checksum result = DB.transaction { yield } checksum_after = checksum database_changed = checksum_before != checksum_after if database_changed || reports_do_not_exist || reports_are_stale Reporter.write_reports end result end |
.sync_with_package_managers ⇒ Object
5 6 7 8 9 10 11 |
# File 'lib/license_finder/dependency_manager.rb', line 5 def self.sync_with_package_managers { current_dependencies = PackageSaver.save_all(current_packages) Dependency.added_automatically.obsolete(current_dependencies).each(&:destroy) } end |