Sha256: c61dbacfb82a1321629dd2021e2e86ab3d6195f1e0da29144a4d56ceb25cb915

Contents?: true

Size: 599 Bytes

Versions: 216

Compression:

Stored size: 599 Bytes

Contents

require_relative 'guaranteed_file'

module Trackler
  class Metadata
    def self.for(specification: , track: )
      new(GuaranteedFile.for(specification: specification, track: track, filename: 'metadata.yml'))
    end

    attr_accessor :blurb, :source, :source_url

    def initialize(metadata_file)
      @file = metadata_file
      @attrs = YAML.load(@file.content) || {}
      %w(blurb source source_url).each do |attr|
        self.send("#{attr}=".to_sym, @attrs[attr].to_s.strip)
      end
    end

    def url
      @file.url
    end

    def exists?
      !@attrs.empty?
    end
  end
end

Version data entries

216 entries across 216 versions & 1 rubygems

Version Path
trackler-2.2.1.180 lib/trackler/metadata.rb
trackler-2.2.1.179 lib/trackler/metadata.rb
trackler-2.2.1.178 lib/trackler/metadata.rb
trackler-2.2.1.177 lib/trackler/metadata.rb
trackler-2.2.1.176 lib/trackler/metadata.rb
trackler-2.2.1.175 lib/trackler/metadata.rb
trackler-2.2.1.174 lib/trackler/metadata.rb
trackler-2.2.1.173 lib/trackler/metadata.rb
trackler-2.2.1.172 lib/trackler/metadata.rb
trackler-2.2.1.171 lib/trackler/metadata.rb
trackler-2.2.1.170 lib/trackler/metadata.rb
trackler-2.2.1.169 lib/trackler/metadata.rb
trackler-2.2.1.167 lib/trackler/metadata.rb
trackler-2.2.1.166 lib/trackler/metadata.rb
trackler-2.2.1.165 lib/trackler/metadata.rb
trackler-2.2.1.164 lib/trackler/metadata.rb
trackler-2.2.1.163 lib/trackler/metadata.rb
trackler-2.2.1.162 lib/trackler/metadata.rb
trackler-2.2.1.161 lib/trackler/metadata.rb
trackler-2.2.1.160 lib/trackler/metadata.rb