Class: FedoraMigrate::ObjectMover

Inherits:
Mover
  • Object
show all
Defined in:
lib/fedora_migrate/object_mover.rb

Defined Under Namespace

Classes: ContentDatastreamReport, RDFDatastreamReport, Report

Constant Summary collapse

RIGHTS_DATASTREAM =
"rightsMetadata".freeze

Instance Attribute Summary

Attributes inherited from Mover

#report, #source

Attributes included from MigrationOptions

#conversions, #options

Instance Method Summary collapse

Methods inherited from Mover

#id_component, id_component, #initialize, #save, #target_errors

Methods included from Hooks

#after_datastream_migration, #after_object_migration, #after_rdf_datastream_migration, #before_datastream_migration, #before_object_migration, #before_rdf_datastream_migration

Methods included from MigrationOptions

#application_creates_versions?, #blacklist, #conversion_options, #forced?, #not_forced?

Constructor Details

This class inherits a constructor from FedoraMigrate::Mover

Instance Method Details

#complete_targetObject



35
36
37
38
# File 'lib/fedora_migrate/object_mover.rb', line 35

def complete_target
  after_object_migration
  save
end

#migrateObject



9
10
11
12
13
14
15
# File 'lib/fedora_migrate/object_mover.rb', line 9

def migrate
  prepare_target
  conversions.collect { |ds| convert_rdf_datastream(ds) }
  migrate_datastreams
  complete_target
  super
end

#post_initializeObject



17
18
19
20
# File 'lib/fedora_migrate/object_mover.rb', line 17

def post_initialize
  conversion_options
  create_target_model if target.nil?
end

#prepare_targetObject



29
30
31
32
33
# File 'lib/fedora_migrate/object_mover.rb', line 29

def prepare_target
  report.class = target.class.to_s
  report.id = target.id
  before_object_migration
end

#results_reportObject



22
23
24
25
26
27
# File 'lib/fedora_migrate/object_mover.rb', line 22

def results_report
  Report.new.tap do |report|
    report.content_datastreams = []
    report.rdf_datastreams = []
  end
end

#targetObject



40
41
42
# File 'lib/fedora_migrate/object_mover.rb', line 40

def target
  @target ||= FedoraMigrate::TargetConstructor.new(source).build
end