Sha256: 8b5b02f63d5c042683296e3698e2084813bf189b74c2b1f117cd7831b327ea91

Contents?: true

Size: 1.27 KB

Versions: 19

Compression:

Stored size: 1.27 KB

Contents

# frozen_string_literal: true

module RelatonGb
  # Hit.
  class Hit < RelatonBib::Hit
    # @return [String]
    attr_reader :pid, :docref

    # @return [Date, NilClass]
    attr_reader :release_date

    # @return [String, NilClass]
    attr_reader :status

    # @return [RelatonGb::GbScrapper, RelatonGb::SecScraper, RelatonGb::TScrapper]
    attr_reader :scrapper

    # @param pid [String]
    # @param docref [String]
    # @parma scrapper [RelatonGb::GbScrapper, RelatonGb::SecScraper, RelatonGb::TScrapper]
    # @param release_date [String]
    # @status [String, NilClass]
    # @param hit_collection [RelatonGb:HitCollection, NilClass]
    def initialize(pid:, docref:, scrapper:, **args)
      @pid            = pid
      @docref         = docref
      @scrapper       = scrapper
      @release_date   = Date.parse args[:release_date] if args[:release_date]
      @status         = args[:status]
      @hit_collection = args[:hit_collection]
    end

    # Parse page.
    # @return [Isobib::IsoBibliographicItem]
    def fetch
      @fetch ||= scrapper.scrape_doc self
    end

    # @return [String]
    def inspect
      "<#{self.class}:#{format('%<id>#.14x', id: object_id << 1)} "\
      "@fullIdentifier=\"#{@fetch&.shortref}\" "\
      "@docref=\"#{docref}\">"
    end
  end
end

Version data entries

19 entries across 19 versions & 2 rubygems

Version Path
relaton-gb-1.12.0 lib/relaton_gb/hit.rb
relaton-gb-1.11.0 lib/relaton_gb/hit.rb
relaton-gb-1.10.1 lib/relaton_gb/hit.rb
relaton-gb-1.10.0 lib/relaton_gb/hit.rb
relaton-gb-1.9.0 lib/relaton_gb/hit.rb
relaton-gb-1.8.1 lib/relaton_gb/hit.rb
relaton-gb-1.8.0 lib/relaton_gb/hit.rb
relaton-gb-1.7.2 lib/relaton_gb/hit.rb
relaton-gb-1.7.1 lib/relaton_gb/hit.rb
relaton-gb-1.7.0 lib/relaton_gb/hit.rb
relaton-gb-1.6.0 lib/relaton_gb/hit.rb
relaton-gb-1.6.pre1 lib/relaton_gb/hit.rb
relaton-gb-1.5.0 lib/relaton_gb/hit.rb
relaton-gb-1.5.pre lib/relaton_gb/hit.rb
relaton-gb-1.4.0 lib/relaton_gb/hit.rb
relaton-gb-1.3.0 lib/relaton_gb/hit.rb
metanorma-cli-1.3.4 gems/ruby/2.6.0/gems/relaton-gb-1.2.0/lib/relaton_gb/hit.rb
metanorma-cli-1.3.3.1 gems/ruby/2.6.0/gems/relaton-gb-1.2.0/lib/relaton_gb/hit.rb
relaton-gb-1.2.0 lib/relaton_gb/hit.rb