Class: IlluminaHtp::Requests::StdLibraryRequest
- Inherits:
-
Request::LibraryCreation
- Object
- ActiveRecord::Base
- ApplicationRecord
- Request
- CustomerRequest
- Request::LibraryCreation
- IlluminaHtp::Requests::StdLibraryRequest
- Defined in:
- app/models/illumina_htp/requests/std_library_request.rb
Overview
The basic request for limber library requests Also used as the base class of some of the older WGS requests
Direct Known Subclasses
GbsRequest, HeronRequest, HeronTailedRequest, LibraryCompletion, SharedLibraryPrep
Constant Summary
Constants included from Metadata
Constants included from Request::Statemachine
Request::Statemachine::ACTIVE, Request::Statemachine::COMPLETED_STATE, Request::Statemachine::INACTIVE, Request::Statemachine::OPENED_STATE, Request::Statemachine::SORT_ORDER
Constants included from StandardNamedScopes
StandardNamedScopes::SORT_FIELDS, StandardNamedScopes::SORT_ORDERS
Instance Method Summary collapse
- #on_failed ⇒ Object
-
#update_pool_information(pool_information) ⇒ Object
Ensure that the bait library information is also included in the pool information.
- #valid_purpose? ⇒ Boolean
Methods inherited from Request::LibraryCreation
#aliquot_attributes, fragment_size_details, #on_started
Methods included from Request::CustomerResponsibility
Methods inherited from CustomerRequest
#customer_accepts_responsibility!, #generate_create_request_event, #generate_destroy_request_event, #generate_request_event, #update_responsibilities!
Methods inherited from Request
accessioning_required?, #add_comment, #aliquot_attributes, #associated_studies, #cancelable?, #copy, #current_request_event, #customer_accepts_responsibility!, delegate_validator, #detect_descriptor, #eventful_studies, for_study, #format_qc_information, get_all_comments, #has_passed, #lab_events_for_batch, #manifest_processed!, #most_recent_event_named, #next_request_type_id, #next_requests, #next_requests_via_asset, #next_requests_via_submission, number_expected_for_submission_id_and_request_type_id, #previous_failed_requests?, #priority, #product_line, #project=, #project_id=, #ready?, #request_type_updatable?, #return_pending_to_inbox!, #run_events, #source_labware, #study=, #study_id=, #submission_plate_count, #submitted_at, #target_purpose, #target_tube, #update_priority, #update_responsibilities!
Methods included from Request::Statistics
#asset_statistics, #progress_statistics, #sample_statistics_new
Methods included from EventfulRecord
#has_many_events, #has_many_lab_events, #has_one_event_with_family
Methods included from Metadata
Methods included from Batch::RequestBehaviour
included, #recycle_from_batch!, #return_for_inbox!, #with_batch_id
Methods included from Request::Statemachine
#cancellable?, #change_decision!, #closed?, #failed_downstream!, #failed_upstream!, #finished?, #on_blocked, #on_cancelled, #on_hold, #on_passed, #on_started, #open?, #terminated?, #transfer_aliquots
Methods included from StandardNamedScopes
Methods included from Commentable
Methods included from AASM::Extensions
Methods included from Uuid::Uuidable
included, #unsaved_uuid!, #uuid
Methods included from Api::RequestIo::Extensions
Methods included from Aliquot::DeprecatedBehaviours::Request
Methods inherited from ApplicationRecord
alias_association, convert_labware_to_receptacle_for, find_by_id_or_name, find_by_id_or_name!
Methods included from Squishify
Instance Method Details
#on_failed ⇒ Object
29 30 31 |
# File 'app/models/illumina_htp/requests/std_library_request.rb', line 29 def on_failed next_requests.each(&:failed_upstream!) end |
#update_pool_information(pool_information) ⇒ Object
Ensure that the bait library information is also included in the pool information.
12 13 14 15 16 17 |
# File 'app/models/illumina_htp/requests/std_library_request.rb', line 12 def update_pool_information(pool_information) super pool_information[:pcr_cycles] = .pcr_cycles pool_information[:request_type] = request_type.key pool_information[:for_multiplexing] = request_type.for_multiplexing? end |
#valid_purpose? ⇒ Boolean
22 23 24 25 26 27 |
# File 'app/models/illumina_htp/requests/std_library_request.rb', line 22 def valid_purpose? return true if acceptable_purposes.empty? || acceptable_purposes.include?(asset.labware.purpose) errors.add(:asset, "#{asset.labware.purpose.name} is not a suitable purpose.") false end |