Class: MultiplexedLibraryTube

Inherits:
Tube show all
Extended by:
Asset::Stock::CanCreateStockAsset
Includes:
Api::MultiplexedLibraryTubeIo::Extensions, Asset::SharedLibraryTubeBehaviour, ModelExtensions::MultiplexedLibraryTube
Defined in:
app/models/multiplexed_library_tube.rb

Direct Known Subclasses

QcTube

Instance Attribute Summary

Attributes inherited from Labware

#storage_location_service

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Asset::Stock::CanCreateStockAsset

extended, is_a_stock_asset?

Methods included from Asset::SharedLibraryTubeBehaviour

#library_source_plates

Methods included from Api::MultiplexedLibraryTubeIo::Extensions

included, #json_root

Methods inherited from Tube

#after_comment_addition, #barcode!, #comments, create_with_barcode!, delegate_to_purpose, #details, #name_for_child_tube, #name_for_label, #pool_id, #sanger_barcode=, #stock_plate, #subject_type, #submission

Methods included from QcFile::Associations

#has_qc_files

Methods included from SingleReceptacleLabware

#receptacle

Methods included from Transfer::State::TubeState

included

Methods included from Transfer::Associations

included

Methods included from Asset::Ownership::Unowned

#change_owner_to

Methods included from Tag::Associations

#untag!

Methods included from Barcode::Barcodeable

#any_barcode_matching?, #barcode_format, #barcode_number, #cgap_barcode, #cgap_barcode=, #external_barcode, #external_barcode=, #external_identifier, #fluidigm_barcode, #fluidigm_barcode=, #foreign_barcode=, #generate_barcode, included, #infinium_barcode, #infinium_barcode=, #prefix, #primary_barcode, #printable_target, #sanger_barcode

Methods inherited from Labware

#ancestor_of_purpose, #ancestors_of_purpose, #child, #display_name, #external_identifier, find_by_barcode, find_from_any_barcode, #generate_name, #labware, #labwhere_location, labwhere_locations, #parent, #received_date, #retention_instructions, #scanned_in_date, #source_plate, #source_plates, #spiked_in_buffer, #state, #storage_location

Methods included from SharedBehaviour::Named

included

Methods included from AssetLink::Associations

included

Methods included from Uuid::Uuidable

included, #unsaved_uuid!, #uuid

Methods included from Commentable

#after_comment_addition

Methods inherited from Asset

#ancestor_of_purpose, #barcode_number, #compatible_purposes, #contained_samples, #details, #generate_barcode, #get_qc_result_value_for, #has_stock_asset?, #label, #label=, #original_stock_plates, #prefix, #printable?, #printable_target, #register_stock!, #request_types, #type, #update_from_qc

Methods included from EventfulRecord

#has_many_events, #has_many_lab_events, #has_one_event_with_family

Methods included from Event::PlateEvents

#event_date, #fluidigm_stamp_date, #gel_qc_date, #pico_date, #qc_started_date, #sequenom_stamp_date

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

extended

Class Method Details

.stock_asset_purposeObject



32
33
34
# File 'app/models/multiplexed_library_tube.rb', line 32

def self.stock_asset_purpose
  Tube::Purpose.stock_mx_tube
end

.stock_asset_typeObject



28
29
30
# File 'app/models/multiplexed_library_tube.rb', line 28

def self.stock_asset_type
  StockMultiplexedLibraryTube
end

Instance Method Details

#asset_type_for_request_typesObject

Returns the type of asset that can be considered appropriate for request types.



16
17
18
# File 'app/models/multiplexed_library_tube.rb', line 16

def asset_type_for_request_types
  LibraryTube
end

#roleObject



24
25
26
# File 'app/models/multiplexed_library_tube.rb', line 24

def role
  order_roles.first.try(:role)
end

#teamObject



20
21
22
# File 'app/models/multiplexed_library_tube.rb', line 20

def team
  creation_requests.first&.product_line
end

#transfer_requestsObject

Transfer requests into a tube are direct requests where the tube is the target.



11
12
13
# File 'app/models/multiplexed_library_tube.rb', line 11

def transfer_requests
  transfer_requests_as_target
end