Sha256: 2d66d3e9d98aab87f45468bf7911538aa1d8fc5cb7b2f40f5448ca3208768ac9

Contents?: true

Size: 1.37 KB

Versions: 11

Compression:

Stored size: 1.37 KB

Contents

# frozen_string_literal: true

module RelatonGb
  # Hit.
  class Hit
    # @return [Isobib::HitCollection]
    attr_reader :hit_collection

    # @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 to_s
      inspect
    end

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

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
relaton-gb-0.10.0 lib/relaton_gb/hit.rb
relaton-gb-0.9.0 lib/relaton_gb/hit.rb
relaton-gb-0.8.0 lib/relaton_gb/hit.rb
relaton-gb-0.7.1 lib/relaton_gb/hit.rb
relaton-gb-0.7.0 lib/relaton_gb/hit.rb
relaton-gb-0.6.8 lib/relaton_gb/hit.rb
relaton-gb-0.6.7 lib/relaton_gb/hit.rb
relaton-gb-0.6.6 lib/relaton_gb/hit.rb
relaton-gb-0.6.5 lib/relaton_gb/hit.rb
relaton-gb-0.6.4 lib/relaton_gb/hit.rb
relaton-gb-0.6.3 lib/relaton_gb/hit.rb