Class: MultiplexedLibraryCreationPipeline

Inherits:
LibraryCreationPipeline show all
Includes:
Pipeline::InboxGroupedBySubmission
Defined in:
app/models/multiplexed_library_creation_pipeline.rb

Constant Summary

Constants inherited from Pipeline

Pipeline::ALWAYS_SHOW_RELEASE_ACTIONS

Instance Method Summary collapse

Methods included from Pipeline::InboxGroupedBySubmission

included

Methods inherited from LibraryCreationPipeline

#create_batch_from_assets, #update_detached_request

Methods inherited from Pipeline

#all_requests_from_submissions_selected?, #allow_tag_collision_on_tagging_task?, #completed_request_as_part_of_release_batch, #detach_request_from_batch, #extract_requests_from_input_params, #has_controls?, #input_labware, #is_read_length_consistent_for_batch?, #on_start_batch, #output_labware, #post_finish_batch, #post_release_batch, #request_actions, #request_types_including_controls, #robot_verified!, #update_detached_request

Methods included from SharedBehaviour::Named

included

Methods included from Pipeline::BatchValidation

#validation_of_batch

Methods included from Uuid::Uuidable

included, #unsaved_uuid!, #uuid

Methods inherited from ApplicationRecord

convert_labware_to_receptacle_for, find_by_id_or_name, find_by_id_or_name!

Methods included from Warren::BroadcastMessages

#broadcast, included, #queue_associated_for_broadcast, #queue_for_broadcast, #warren

Instance Method Details

#validation_of_batch_for_completion(batch) ⇒ Object

For a batch to be valid for completion in this pipeline it must have had the tags assigned to the target assets of the requests.


9
10
11
12
13
14
15
# File 'app/models/multiplexed_library_creation_pipeline.rb', line 9

def validation_of_batch_for_completion(batch)
  return true unless batch.requests.any? do |r|
    r.target_asset.aliquots.any? { |a| a.tag.nil? }
  end

  batch.errors.add(:base, 'This batch appears to have not been properly tagged')
end