class NewspaperWorks::Ingest::NDNP::PageIngest

Attributes

dmdid[RW]
doc[RW]
files[RW]
path[RW]

Public Class Methods

new(path = nil, dmdid = nil, parent = nil) click to toggle source
# File lib/newspaper_works/ingest/ndnp/page_ingest.rb, line 9
def initialize(path = nil, dmdid = nil, parent = nil)
  raise ArgumentError, 'No path provided' if path.nil?
  @path = path
  @dmdid = dmdid
  @doc = nil
  @parent = parent
  @metadata = nil
  load_doc
  @files = page_files.values.map(&method(:normalize_path))
end

Public Instance Methods

inspect() click to toggle source
# File lib/newspaper_works/ingest/ndnp/page_ingest.rb, line 20
def inspect
  format(
    "<#{self.class}:0x000000000%<oid>x\n" \
      "\tpath: '#{path}',\n" \
      "\tdmdid: '#{dmdid}' ...>",
    oid: object_id << 1
  )
end
metadata() click to toggle source
# File lib/newspaper_works/ingest/ndnp/page_ingest.rb, line 29
def metadata
  return @metadata unless @metadata.nil?
  @metadata = NewspaperWorks::Ingest::NDNP::PageMetadata.new(
    path,
    self,
    dmdid
  )
end

Private Instance Methods

load_doc() click to toggle source
# File lib/newspaper_works/ingest/ndnp/page_ingest.rb, line 40
def load_doc
  @doc = @parent.doc unless @parent.nil?
  @doc = Nokogiri::XML(File.open(path)) if @doc.nil?
end