Class: CurationConcerns::Configuration

Inherits:
Object
  • Object
show all
Includes:
Callbacks
Defined in:
lib/curation_concerns/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Callbacks

#callback

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



16
17
18
# File 'lib/curation_concerns/configuration.rb', line 16

def initialize
  @registered_concerns = []
end

Instance Attribute Details

#analytic_start_dateObject

Returns the value of attribute analytic_start_date.



58
59
60
# File 'lib/curation_concerns/configuration.rb', line 58

def analytic_start_date
  @analytic_start_date
end

#analyticsObject

Returns the value of attribute analytics.



58
59
60
# File 'lib/curation_concerns/configuration.rb', line 58

def analytics
  @analytics
end

#characterization_runnerObject

Override characterization runner



115
116
117
# File 'lib/curation_concerns/configuration.rb', line 115

def characterization_runner
  @characterization_runner
end

#default_antivirus_instanceObject



24
25
26
27
28
# File 'lib/curation_concerns/configuration.rb', line 24

def default_antivirus_instance
  @default_antivirus_instance ||= lambda do |_file_path|
    AntiVirusScanner::NO_VIRUS_FOUND_RETURN_VALUE
  end
end

#derivatives_pathObject



32
33
34
# File 'lib/curation_concerns/configuration.rb', line 32

def derivatives_path
  @derivatives_path ||= File.join(Rails.root, 'tmp', 'derivatives')
end


104
105
106
107
# File 'lib/curation_concerns/configuration.rb', line 104

def display_media_download_link
  return @display_media_download_link unless @display_media_download_link.nil?
  @display_media_download_link = true
end

#display_microdataObject



62
63
64
65
# File 'lib/curation_concerns/configuration.rb', line 62

def display_microdata
  return @display_microdata unless @display_microdata.nil?
  @display_microdata = true
end

#enable_ffmpegObject



43
44
45
46
# File 'lib/curation_concerns/configuration.rb', line 43

def enable_ffmpeg
  return @enable_ffmpeg unless @enable_ffmpeg.nil?
  @enable_ffmpeg = false
end

#enable_local_ingestObject

Returns the value of attribute enable_local_ingest.



58
59
60
# File 'lib/curation_concerns/configuration.rb', line 58

def enable_local_ingest
  @enable_local_ingest
end

#enable_noidsObject



78
79
80
81
# File 'lib/curation_concerns/configuration.rb', line 78

def enable_noids
  return @enable_noids unless @enable_noids.nil?
  @enable_noids = true
end

#ffmpeg_pathObject



49
50
51
# File 'lib/curation_concerns/configuration.rb', line 49

def ffmpeg_path
  @ffmpeg_path ||= 'ffmpeg'
end

#fits_message_lengthObject



54
55
56
# File 'lib/curation_concerns/configuration.rb', line 54

def fits_message_length
  @fits_message_length ||= 5
end

#fits_pathObject



110
111
112
# File 'lib/curation_concerns/configuration.rb', line 110

def fits_path
  @fits_path ||= 'fits.sh'
end

#ingest_queue_nameObject



142
143
144
# File 'lib/curation_concerns/configuration.rb', line 142

def ingest_queue_name
  @ingest_queue_name ||= :default
end

#lock_retry_countObject



121
122
123
# File 'lib/curation_concerns/configuration.rb', line 121

def lock_retry_count
  @lock_retry_count ||= 600 # Up to 2 minutes of trying at intervals up to 200ms
end

#lock_retry_delayObject



135
136
137
# File 'lib/curation_concerns/configuration.rb', line 135

def lock_retry_delay
  @lock_retry_delay ||= 200 # milliseconds
end

#lock_time_to_liveObject



128
129
130
# File 'lib/curation_concerns/configuration.rb', line 128

def lock_time_to_live
  @lock_time_to_live ||= 60_000 # milliseconds
end

#max_days_between_auditsObject



73
74
75
# File 'lib/curation_concerns/configuration.rb', line 73

def max_days_between_audits
  @max_days_between_audits ||= 7
end

#microdata_default_typeObject



68
69
70
# File 'lib/curation_concerns/configuration.rb', line 68

def microdata_default_type
  @microdata_default_type ||= 'http://schema.org/CreativeWork'
end

#minter_statefileObject



99
100
101
# File 'lib/curation_concerns/configuration.rb', line 99

def minter_statefile
  @minter_statefile ||= '/tmp/minter-state'
end

#noid_templateObject



94
95
96
# File 'lib/curation_concerns/configuration.rb', line 94

def noid_template
  @noid_template ||= '.reeddeeddk'
end

#temp_file_baseObject

Returns the value of attribute temp_file_base.



58
59
60
# File 'lib/curation_concerns/configuration.rb', line 58

def temp_file_base
  @temp_file_base
end

#translate_id_to_uriObject



89
90
91
# File 'lib/curation_concerns/configuration.rb', line 89

def translate_id_to_uri
  @translate_id_to_uri ||= ActiveFedora::Noid.config.translate_id_to_uri
end

#translate_uri_to_idObject



84
85
86
# File 'lib/curation_concerns/configuration.rb', line 84

def translate_uri_to_id
  @translate_uri_to_id ||= ActiveFedora::Noid.config.translate_uri_to_id
end

#working_pathObject



38
39
40
# File 'lib/curation_concerns/configuration.rb', line 38

def working_path
  @working_path ||= File.join(Rails.root, 'tmp', 'uploads')
end

Instance Method Details

#curation_concernsArray<Class>

Returns the registered curation concerns.

Returns:

  • (Array<Class>)

    the registered curation concerns



171
172
173
# File 'lib/curation_concerns/configuration.rb', line 171

def curation_concerns
  registered_curation_concern_types.map(&:constantize)
end

#register_curation_concern(*curation_concern_types) ⇒ Object

Registers the given curation concern model in the configuration

Parameters:

  • curation_concern_types (Array<Symbol>, Symbol)


155
156
157
158
159
160
161
# File 'lib/curation_concerns/configuration.rb', line 155

def register_curation_concern(*curation_concern_types)
  Array.wrap(curation_concern_types).flatten.compact.each do |cc_type|
    unless @registered_concerns.include?(cc_type)
      @registered_concerns << cc_type
    end
  end
end

#registered_curation_concern_typesArray<String>

The normalization done by this method must occur after the initialization process so it can take advantage of irregular inflections from config/initializers/inflections.rb

Returns:

  • (Array<String>)

    the class names of the registered curation concerns



166
167
168
# File 'lib/curation_concerns/configuration.rb', line 166

def registered_curation_concern_types
  @registered_concerns.map { |cc_type| normalize_concern_name(cc_type) }
end