class EPUB::Publication::Package::Metadata

Constants

DC_ELEMS

Attributes

metas[RW]
package[RW]
unique_identifier[RW]

Public Class Methods

new() click to toggle source
# File lib/epub/publication/package/metadata.rb, line 19
def initialize
  (DC_ELEMS + [:metas, :links]).each do |elem|
    __send__ "#{elem}=", []
  end
end

Public Instance Methods

date() click to toggle source
# File lib/epub/publication/package/metadata.rb, line 47
def date
  dates.first
end
description() click to toggle source
# File lib/epub/publication/package/metadata.rb, line 43
def description
  descriptions.join ' '
end
language() click to toggle source
# File lib/epub/publication/package/metadata.rb, line 51
def language
  languages.first
end
primary_metas() click to toggle source
# File lib/epub/publication/package/metadata.rb, line 62
def primary_metas
  metas.select {|meta| meta.primary_expression?}
end
subtitle() click to toggle source
# File lib/epub/publication/package/metadata.rb, line 39
def subtitle
  titles.select {|title| title.title_type.to_s == 'subtitle'}.sort.join(' ')
end
title() click to toggle source
# File lib/epub/publication/package/metadata.rb, line 25
def title
  return extended_title unless extended_title.empty?
  compositted = titles.select {|title| title.display_seq}.sort.join("\n")
  return compositted unless compositted.empty?
  return main_title unless main_title.empty?
  titles.sort.join("\n")
end
to_h() click to toggle source
# File lib/epub/publication/package/metadata.rb, line 55
def to_h
  DC_ELEMS.inject({}) do |hsh, elem|
    hsh[elem] = __send__(elem)
    hsh
  end
end