Module: Accession

Defined in:
lib/accession.rb,
lib/accession/tag.rb,
lib/accession/sample.rb,
lib/accession/service.rb,
lib/accession/tag_list.rb,
lib/accession/submission.rb,
lib/accession/accessionable.rb,
lib/accession/configuration.rb,
lib/accession/core_extensions.rb

Defined Under Namespace

Modules: Accessionable, CoreExtensions, Equality, Helpers Classes: Configuration, Error, ExternalValidationError, InternalValidationError, Sample, SampleAccessioning, SampleStatus, Service, Submission, Tag, TagCollectionDate, TagCountryOfOrigin, TagList

Constant Summary collapse

CENTER_NAME =
'SC'
XML_NAMESPACE =
{ 'xmlns:xsi' => 'http://www.w3.org/2001/XMLSchema-instance' }.freeze

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.configurationObject



79
80
81
# File 'lib/accession.rb', line 79

def self.configuration
  @configuration ||= Configuration.new
end

Class Method Details

.accession_sample(sample, event_user, perform_now: false) ⇒ Object



168
169
170
# File 'lib/accession.rb', line 168

def self.accession_sample(sample, event_user, perform_now: false)
  SampleAccessioning.new.perform(sample, event_user, perform_now)
end

.configure {|configuration| ... } ⇒ Object

Yields:



83
84
85
# File 'lib/accession.rb', line 83

def self.configure
  yield(configuration)
end

.reset!Object



87
88
89
# File 'lib/accession.rb', line 87

def self.reset!
  @configuration = Configuration.new
end

.table_name_prefixObject

See app/models/accession.rb



71
72
73
# File 'lib/accession.rb', line 71

def self.table_name_prefix
  'accession_'
end

.user_error_message(error) ⇒ Object

Returns a user-friendly error message based on the error type



92
93
94
95
96
97
98
99
100
101
# File 'lib/accession.rb', line 92

def self.user_error_message(error)
  case error
  when Accession::ExternalValidationError, Accession::InternalValidationError
    error.message
  when Faraday::Error
    'A network error occurred during accessioning and no response was received.'
  else
    'An internal error occurred during accessioning.'
  end
end