Class: Hyrax::Ingest::Ingester::WorkIngester

Inherits:
ActiveFedoraBaseIngester show all
Defined in:
lib/hyrax/ingest/ingester/work_ingester.rb

Instance Attribute Summary collapse

Attributes inherited from ActiveFedoraBaseIngester

#af_model_class_name, #properties_config, #shared_sip, #update_params

Instance Method Summary collapse

Methods inherited from ActiveFedoraBaseIngester

#af_model

Methods included from HasDepositor

included

Methods included from HasLogger

config, #logger, #logger=

Methods included from HasReport

#report, #report=

Methods included from HasIteration

#iteration, #iteration=

Methods included from HasSharedSIP

#shared_sip, #shared_sip=

Methods included from HasSIP

#sip, #sip=

Constructor Details

#initialize(config = {}) ⇒ WorkIngester

Returns a new instance of WorkIngester.



10
11
12
13
14
15
# File 'lib/hyrax/ingest/ingester/work_ingester.rb', line 10

def initialize(config={})
  # TODO: Throw a useful custom error when :type option is missing.
  config[:af_model_class_name] ||= config.delete(:type)
  @file_sets_config = config.delete(:FileSets) || []
  super(config)
end

Instance Attribute Details

#file_sets_configObject (readonly)

Returns the value of attribute file_sets_config.



8
9
10
# File 'lib/hyrax/ingest/ingester/work_ingester.rb', line 8

def file_sets_config
  @file_sets_config
end

Instance Method Details

#run!Object



17
18
19
20
21
22
23
24
25
# File 'lib/hyrax/ingest/ingester/work_ingester.rb', line 17

def run!
  assign_properties!
  assign_related_file_set_properties!
  apply_depositor_metadata!
  save_model!
  assign_file_sets_to_work!
  # return the new instance of the ActiveFedora model
  af_model
end