Module: SpdxLicenses

Defined in:
lib/spdx-licenses.rb,
lib/spdx-licenses/license.rb,
lib/spdx-licenses/version.rb

Defined Under Namespace

Classes: License

Constant Summary collapse

VERSION =
'1.3.0'

Class Method Summary collapse

Class Method Details

.dataObject



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/spdx-licenses.rb', line 6

def self.data
  unless defined?(@@data)
    spdx = JSON.load(File.read(File.expand_path('../../licenses.json', __FILE__)))

    # Convert the array of hashes to a hash with the license ID as the key and
    # the rest of each hash as the value.
    @@data = {}
    spdx['licenses'].each do |details|
      id = details.delete('licenseId')
      @@data[id] = details
    end
  end

  @@data
end

.exist?(id) ⇒ Boolean Also known as: exists?

Returns:

  • (Boolean)


27
28
29
# File 'lib/spdx-licenses.rb', line 27

def self.exist?(id)
  data.has_key? id.to_s
end

.lookup(id) ⇒ Object Also known as: []



22
23
24
25
# File 'lib/spdx-licenses.rb', line 22

def self.lookup(id)
  entry = data[id.to_s]
  SpdxLicenses::License.new(id.to_s, entry['name'], entry['isOsiApproved']) if entry
end

.versionObject



31
32
33
# File 'lib/spdx-licenses.rb', line 31

def self.version
  VERSION
end