Class: Bio::BaseSpace::Sample
- Defined in:
- lib/basespace/model/sample.rb
Overview
Representation of a BaseSpace Sample object.
Instance Attribute Summary
Attributes inherited from Model
Instance Method Summary collapse
-
#get_access_str(scope = 'write') ⇒ Object
Returns the scope-string to be used for requesting BaseSpace access to the sample.
-
#get_files(api, my_qp = {}) ⇒ Object
Returns a list of File objects.
-
#get_referenced_app_results(api) ⇒ Object
Return the AppResults referenced by this sample.
-
#initialize ⇒ Sample
constructor
Return a new Sample instance.
-
#is_init ⇒ Object
Test if the sample instance has been initialized.
-
#to_s ⇒ Object
Return the name of the sample.
Methods inherited from Model
#get_attr, #method_missing, #set_attr, #to_str
Constructor Details
#initialize ⇒ Sample
Return a new Sample instance.
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/basespace/model/sample.rb', line 25 def initialize @swagger_types = { 'HrefGenome' => 'str', 'SampleNumber' => 'int', 'ExperimentName' => 'str', 'HrefFiles' => 'str', 'AppSession' => 'dict', 'IsPairedEnd' => 'bool', 'Read1' => 'int', 'Read2' => 'int', 'NumReadsRaw' => 'int', 'NumReadsPF' => 'int', 'Id' => 'str', 'Href' => 'str', 'UserOwnedBy' => 'UserCompact', 'Name' => 'str', 'SampleId' => 'str', 'Status' => 'str', 'StatusSummary' => 'str', 'DateCreated' => 'datetime', 'References' => 'dict', # NOTE Is this correct? Because references is a list. 'Run' => 'RunCompact', } @attributes = { 'Name' => nil, # str 'HrefFiles' => nil, # str 'AppSession' => nil, # dict 'DateCreated' => nil, # datetime 'SampleNumber' => nil, # int 'Id' => nil, # str 'Href' => nil, # str 'UserOwnedBy' => nil, # UserCompact 'ExperimentName' => nil, # str 'Run' => nil, # RunCompact 'HrefGenome' => nil, # str 'IsPairedEnd' => nil, # bool 'Read1' => nil, # int 'Read2' => nil, # int 'NumReadsRaw' => nil, # int 'NumReadsPF' => nil, # int 'References' => nil, # dict 'SampleId' => nil, # dict 'Status' => nil, # dict 'StatusSummary' => nil, # dict } end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Bio::BaseSpace::Model
Instance Method Details
#get_access_str(scope = 'write') ⇒ Object
Returns the scope-string to be used for requesting BaseSpace access to the sample.
scope
-
The scope type that is requested (write|read).
91 92 93 94 |
# File 'lib/basespace/model/sample.rb', line 91 def get_access_str(scope = 'write') is_init return scope + ' sample ' + get_attr('Id').to_s end |
#get_files(api, my_qp = {}) ⇒ Object
Returns a list of File objects.
api
-
BaseSpaceAPI instance.
my_qp
-
Query parameters to sort and filter the file list by.
118 119 120 121 122 |
# File 'lib/basespace/model/sample.rb', line 118 def get_files(api, my_qp = {}) is_init query_pars = QueryParameters.new(my_qp) return api.get_files_by_sample(get_attr('Id'), query_pars) end |
#get_referenced_app_results(api) ⇒ Object
Return the AppResults referenced by this sample.
Note: the returned AppResult objects do not have their “References” field set, to get a fully populate AppResult object you must use get_app_result_by_id in BaseSpaceAPI.
api
-
BaseSpaceAPI instance.
102 103 104 105 106 107 108 109 110 111 112 |
# File 'lib/basespace/model/sample.rb', line 102 def get_referenced_app_results(api) res = [] get_attr('References').each do |s| if s[:type] == 'AppResult' json_app_result = s[:content] my_ar = api.serialize_object(json_app_result, 'AppResult') res << my_ar end end return res end |
#is_init ⇒ Object
Test if the sample instance has been initialized.
Throws ModelNotInitializedError, if the Id variable is not set.
80 81 82 |
# File 'lib/basespace/model/sample.rb', line 80 def is_init raise ModelNotInitializedError.new('The sample model has not been initialized yet') unless get_attr('Id') end |
#to_s ⇒ Object
Return the name of the sample.
73 74 75 |
# File 'lib/basespace/model/sample.rb', line 73 def to_s return get_attr('Name') end |