Class: LicenseFinder::MavenPackage

Inherits:
Package
  • Object
show all
Defined in:
lib/license_finder/packages/maven_package.rb

Instance Attribute Summary

Attributes inherited from Package

#authors, #children, #description, #groups, #homepage, #install_path, #license_names_from_spec, #logger, #manual_approval, #name, #parents, #summary, #version

Instance Method Summary collapse

Methods inherited from Package

#<=>, #activations, #approved?, #approved_manually!, #approved_manually?, #decide_on_license, #eql?, #hash, #license_files, license_names_from_standard_spec, #licenses, #licenses_from_spec, #licensing, #log_activation, #missing?, #notice_files, #permitted!, #permitted?, #restricted!, #restricted?

Constructor Details

#initialize(spec, options = {}) ⇒ MavenPackage

Returns a new instance of MavenPackage.



5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/license_finder/packages/maven_package.rb', line 5

def initialize(spec, options = {})
  name = spec['artifactId']
  name = "#{spec['groupId']}:#{name}" if options[:include_groups]

  super(
    name,
    spec['version'],
    options.merge(
      spec_licenses: Array(spec['licenses']).map { |l| l['name'] },
      groups: Array(spec['groupId'])
    )
  )
end

Instance Method Details

#package_managerObject



19
20
21
# File 'lib/license_finder/packages/maven_package.rb', line 19

def package_manager
  'Maven'
end

#package_urlObject



23
24
25
# File 'lib/license_finder/packages/maven_package.rb', line 23

def package_url
  "https://search.maven.org/artifact/#{CGI.escape(groups.first)}/#{CGI.escape(name.split(':').last)}/#{CGI.escape(version)}/jar"
end