Sha256: bc0cfd43d72d1616d1d2b2f5e73b341e80107dbca45079859653023b894cd205
Contents?: true
Size: 1021 Bytes
Versions: 7
Compression:
Stored size: 1021 Bytes
Contents
require "rdf-vocab" module Ddr module Events module PreservationEventBehavior extend ActiveSupport::Concern included do class_attribute :preservation_event_type end def preservation_event_type self.class.preservation_event_type end EVENT_ID_TYPE = "Duke Digital Repository Event ID" LINKING_OBJECT_ID_TYPE = "Duke Digital Repository PID" def as_premis Ddr::Metadata::PremisEvent.new.tap do |doc| doc.event_type = RDF::Vocab::PremisEventType.label_for(preservation_event_type) doc.event_id_type = EVENT_ID_TYPE doc.event_id_value = id doc.event_detail = summary doc.linking_object_id_type = LINKING_OBJECT_ID_TYPE doc.linking_object_id_value = pid doc.event_outcome = outcome doc.event_outcome_detail_note = detail doc.event_date_time = event_date_time_s end end def to_xml as_premis.to_xml end end end end
Version data entries
7 entries across 7 versions & 1 rubygems