class Duracloud::ContentManifest::Source

Attributes

manifest[R]

Public Class Methods

new(manifest) click to toggle source
# File lib/duracloud/content_manifest.rb, line 44
def initialize(manifest)
  @manifest = manifest
end

Public Instance Methods

chunks() click to toggle source
# File lib/duracloud/content_manifest.rb, line 74
def chunks
  Enumerator.new do |e|
    doc.css("chunk").each do |chunk_xml|
      e << Content.find(space_id: manifest.space_id,
                        content_id: chunk_xml["chunkId"],
                        store_id: manifest.store_id,
                        md5: chunk_xml.css("md5").text)
    end
  end
end
content_id() click to toggle source
# File lib/duracloud/content_manifest.rb, line 56
def content_id
  doc.css("sourceContent").first["contentId"]
end
content_type() click to toggle source
# File lib/duracloud/content_manifest.rb, line 64
def content_type
  doc.css("sourceContent mimetype").text
end
doc() click to toggle source
# File lib/duracloud/content_manifest.rb, line 48
def doc
  @doc ||= Nokogiri::XML(manifest.xml)
end
download(&block) click to toggle source
# File lib/duracloud/content_manifest.rb, line 68
def download(&block)
  chunks.each do |chunk|
    chunk.download(&block)
  end
end
md5() click to toggle source
# File lib/duracloud/content_manifest.rb, line 52
def md5
  doc.css("sourceContent md5").text
end
size() click to toggle source
# File lib/duracloud/content_manifest.rb, line 60
def size
  doc.css("sourceContent byteSize").text.to_i
end