Class: Sbom::PackageUrl::Decoder
- Inherits:
-
Object
- Object
- Sbom::PackageUrl::Decoder
- Includes:
- StringUtils
- Defined in:
- lib/sbom/package_url/decoder.rb
Instance Method Summary collapse
- #decode! ⇒ Object
-
#initialize(string) ⇒ Decoder
constructor
A new instance of Decoder.
Constructor Details
#initialize(string) ⇒ Decoder
Returns a new instance of Decoder.
31 32 33 |
# File 'lib/sbom/package_url/decoder.rb', line 31 def initialize(string) @string = string end |
Instance Method Details
#decode! ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/sbom/package_url/decoder.rb', line 35 def decode! raise ArgumentError, "expected String but given #{@string.class}" unless @string.is_a?(::String) decode_subpath! decode_qualifiers! decode_scheme! decode_type! decode_version! decode_name! decode_namespace! begin PackageUrl.new( type: @type, name: @name, namespace: @namespace, version: @version, qualifiers: @qualifiers, subpath: @subpath ) rescue ArgumentError => e raise InvalidPackageUrl, e. end end |