sequencescape-client-api 0.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (313) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +7 -0
  3. data/.rspec +1 -0
  4. data/.rvmrc +52 -0
  5. data/.yardoc/checksums +96 -0
  6. data/.yardoc/complete +0 -0
  7. data/.yardoc/object_types +0 -0
  8. data/.yardoc/objects/root.dat +0 -0
  9. data/.yardoc/proxy_types +0 -0
  10. data/Gemfile +4 -0
  11. data/README.markdown +4 -0
  12. data/Rakefile +2 -0
  13. data/doc/Array.html +192 -0
  14. data/doc/BaitLibrary.html +139 -0
  15. data/doc/Hash.html +242 -0
  16. data/doc/NilClass.html +214 -0
  17. data/doc/Sequencescape/Api/Actions/ClassActionHelpers.html +213 -0
  18. data/doc/Sequencescape/Api/Actions/InstanceActionHelpers.html +282 -0
  19. data/doc/Sequencescape/Api/Actions.html +197 -0
  20. data/doc/Sequencescape/Api/Associations/Base/InstanceMethods.html +352 -0
  21. data/doc/Sequencescape/Api/Associations/Base.html +237 -0
  22. data/doc/Sequencescape/Api/Associations/BelongsTo/AssociationProxy.html +332 -0
  23. data/doc/Sequencescape/Api/Associations/BelongsTo/CommonBehaviour/LoadHandler.html +279 -0
  24. data/doc/Sequencescape/Api/Associations/BelongsTo/CommonBehaviour.html +432 -0
  25. data/doc/Sequencescape/Api/Associations/BelongsTo/InlineAssociationProxy.html +173 -0
  26. data/doc/Sequencescape/Api/Associations/BelongsTo.html +212 -0
  27. data/doc/Sequencescape/Api/Associations/HasMany/AssociationProxy.html +366 -0
  28. data/doc/Sequencescape/Api/Associations/HasMany/InlineAssociationProxy.html +529 -0
  29. data/doc/Sequencescape/Api/Associations/HasMany/Json.html +250 -0
  30. data/doc/Sequencescape/Api/Associations/HasMany/Validation/CompositeErrors.html +493 -0
  31. data/doc/Sequencescape/Api/Associations/HasMany/Validation.html +245 -0
  32. data/doc/Sequencescape/Api/Associations/HasMany.html +212 -0
  33. data/doc/Sequencescape/Api/Associations/InstanceMethods/CompositeErrors.html +379 -0
  34. data/doc/Sequencescape/Api/Associations/InstanceMethods.html +496 -0
  35. data/doc/Sequencescape/Api/Associations.html +201 -0
  36. data/doc/Sequencescape/Api/BasicErrorHandling.html +371 -0
  37. data/doc/Sequencescape/Api/Composition/Target.html +262 -0
  38. data/doc/Sequencescape/Api/Composition.html +215 -0
  39. data/doc/Sequencescape/Api/ConnectionFactory/Actions.html +611 -0
  40. data/doc/Sequencescape/Api/ConnectionFactory/Helpers.html +233 -0
  41. data/doc/Sequencescape/Api/ConnectionFactory.html +321 -0
  42. data/doc/Sequencescape/Api/ErrorHandling/TurnOffValidationOfUuidOnlyRecords.html +189 -0
  43. data/doc/Sequencescape/Api/ErrorHandling.html +201 -0
  44. data/doc/Sequencescape/Api/FinderMethods/AllHandler.html +279 -0
  45. data/doc/Sequencescape/Api/FinderMethods/Caching.html +183 -0
  46. data/doc/Sequencescape/Api/FinderMethods/Delegation.html +189 -0
  47. data/doc/Sequencescape/Api/FinderMethods/FindByUuidHandler.html +279 -0
  48. data/doc/Sequencescape/Api/FinderMethods.html +364 -0
  49. data/doc/Sequencescape/Api/GeneralError.html +176 -0
  50. data/doc/Sequencescape/Api/JsonError.html +205 -0
  51. data/doc/Sequencescape/Api/ModifyingHandler.html +359 -0
  52. data/doc/Sequencescape/Api/PageOfResults/UpdateHandler.html +279 -0
  53. data/doc/Sequencescape/Api/PageOfResults.html +611 -0
  54. data/doc/Sequencescape/Api/Rails/ApplicationController.html +207 -0
  55. data/doc/Sequencescape/Api/Rails/Resourced.html +269 -0
  56. data/doc/Sequencescape/Api/Rails.html +117 -0
  57. data/doc/Sequencescape/Api/Resource/ActiveModel.html +287 -0
  58. data/doc/Sequencescape/Api/Resource/Attributes/InstanceMethods.html +272 -0
  59. data/doc/Sequencescape/Api/Resource/Attributes.html +199 -0
  60. data/doc/Sequencescape/Api/Resource/Groups/InstanceMethods.html +378 -0
  61. data/doc/Sequencescape/Api/Resource/Groups/Json.html +112 -0
  62. data/doc/Sequencescape/Api/Resource/Groups/Proxy/InstanceMethods.html +256 -0
  63. data/doc/Sequencescape/Api/Resource/Groups/Proxy.html +177 -0
  64. data/doc/Sequencescape/Api/Resource/Groups.html +270 -0
  65. data/doc/Sequencescape/Api/Resource/InstanceMethods.html +344 -0
  66. data/doc/Sequencescape/Api/Resource/Json/ClassMethods.html +243 -0
  67. data/doc/Sequencescape/Api/Resource/Json/CoercionHandler.html +279 -0
  68. data/doc/Sequencescape/Api/Resource/Json.html +405 -0
  69. data/doc/Sequencescape/Api/Resource/Modifications.html +295 -0
  70. data/doc/Sequencescape/Api/Resource.html +436 -0
  71. data/doc/Sequencescape/Api/ResourceInvalid.html +289 -0
  72. data/doc/Sequencescape/Api/ResourceModelProxy.html +444 -0
  73. data/doc/Sequencescape/Api/Version1.html +218 -0
  74. data/doc/Sequencescape/Api/Version2.html +222 -0
  75. data/doc/Sequencescape/Api.html +704 -0
  76. data/doc/Sequencescape/Asset.html +262 -0
  77. data/doc/Sequencescape/AssetAudit.html +258 -0
  78. data/doc/Sequencescape/AssetGroup.html +258 -0
  79. data/doc/Sequencescape/BaitLibraryLayout.html +258 -0
  80. data/doc/Sequencescape/BarcodePrinter.html +258 -0
  81. data/doc/Sequencescape/BarcodedAsset.html +293 -0
  82. data/doc/Sequencescape/Batch.html +327 -0
  83. data/doc/Sequencescape/Behaviour/Barcoded.html +195 -0
  84. data/doc/Sequencescape/Behaviour/Labeled.html +189 -0
  85. data/doc/Sequencescape/Behaviour/Qced/QcFile.html +244 -0
  86. data/doc/Sequencescape/Behaviour/Qced.html +199 -0
  87. data/doc/Sequencescape/Behaviour/Receptacle/Aliquot.html +258 -0
  88. data/doc/Sequencescape/Behaviour/Receptacle.html +195 -0
  89. data/doc/Sequencescape/Behaviour/StateDriven.html +205 -0
  90. data/doc/Sequencescape/Behaviour.html +130 -0
  91. data/doc/Sequencescape/BulkTransfer.html +258 -0
  92. data/doc/Sequencescape/Comment.html +258 -0
  93. data/doc/Sequencescape/Lane.html +282 -0
  94. data/doc/Sequencescape/LibraryEvent.html +258 -0
  95. data/doc/Sequencescape/LibraryTube.html +322 -0
  96. data/doc/Sequencescape/Lot.html +258 -0
  97. data/doc/Sequencescape/LotType/LotCreator.html +182 -0
  98. data/doc/Sequencescape/LotType.html +268 -0
  99. data/doc/Sequencescape/MultiplexedLibraryTube.html +326 -0
  100. data/doc/Sequencescape/Order.html +338 -0
  101. data/doc/Sequencescape/OrderTemplate/OrderCreator.html +182 -0
  102. data/doc/Sequencescape/OrderTemplate.html +268 -0
  103. data/doc/Sequencescape/Pipeline.html +258 -0
  104. data/doc/Sequencescape/Plate/CommentsCreation.html +184 -0
  105. data/doc/Sequencescape/Plate/CurrentVolumeSubstraction.html +236 -0
  106. data/doc/Sequencescape/Plate/Pooling.html +249 -0
  107. data/doc/Sequencescape/Plate/WellStructure.html +313 -0
  108. data/doc/Sequencescape/Plate.html +446 -0
  109. data/doc/Sequencescape/PlateConversion.html +258 -0
  110. data/doc/Sequencescape/PlateCreation.html +258 -0
  111. data/doc/Sequencescape/PlatePurpose/PlateCreation.html +186 -0
  112. data/doc/Sequencescape/PlatePurpose.html +268 -0
  113. data/doc/Sequencescape/PlateTemplate.html +282 -0
  114. data/doc/Sequencescape/PooledPlateCreation.html +258 -0
  115. data/doc/Sequencescape/Project.html +258 -0
  116. data/doc/Sequencescape/QcDecision.html +258 -0
  117. data/doc/Sequencescape/QcFile.html +327 -0
  118. data/doc/Sequencescape/Qcable.html +258 -0
  119. data/doc/Sequencescape/QcableCreator.html +258 -0
  120. data/doc/Sequencescape/Request.html +258 -0
  121. data/doc/Sequencescape/Robot.html +258 -0
  122. data/doc/Sequencescape/Sample.html +258 -0
  123. data/doc/Sequencescape/SampleTube.html +318 -0
  124. data/doc/Sequencescape/Search/BaseHandler.html +234 -0
  125. data/doc/Sequencescape/Search/MultipleResultHandler.html +276 -0
  126. data/doc/Sequencescape/Search/SingleResultHandler.html +303 -0
  127. data/doc/Sequencescape/Search.html +431 -0
  128. data/doc/Sequencescape/SpecificTubeCreation.html +258 -0
  129. data/doc/Sequencescape/Stamp.html +258 -0
  130. data/doc/Sequencescape/StateChange.html +258 -0
  131. data/doc/Sequencescape/Study.html +258 -0
  132. data/doc/Sequencescape/Submission.html +258 -0
  133. data/doc/Sequencescape/SubmissionPool.html +258 -0
  134. data/doc/Sequencescape/Tag/Group.html +219 -0
  135. data/doc/Sequencescape/Tag.html +149 -0
  136. data/doc/Sequencescape/Tag2Layout.html +258 -0
  137. data/doc/Sequencescape/Tag2LayoutTemplate.html +258 -0
  138. data/doc/Sequencescape/TagGroup.html +258 -0
  139. data/doc/Sequencescape/TagLayout.html +258 -0
  140. data/doc/Sequencescape/TagLayoutTemplate.html +258 -0
  141. data/doc/Sequencescape/Template.html +258 -0
  142. data/doc/Sequencescape/Transfer.html +258 -0
  143. data/doc/Sequencescape/TransferTemplate.html +258 -0
  144. data/doc/Sequencescape/Tube.html +319 -0
  145. data/doc/Sequencescape/TubeCreation.html +258 -0
  146. data/doc/Sequencescape/TubeFromTubeCreation.html +258 -0
  147. data/doc/Sequencescape/TubePurpose/TubeCreation.html +186 -0
  148. data/doc/Sequencescape/TubePurpose.html +268 -0
  149. data/doc/Sequencescape/User.html +258 -0
  150. data/doc/Sequencescape/VolumeUpdate.html +258 -0
  151. data/doc/Sequencescape/Well.html +362 -0
  152. data/doc/Sequencescape.html +121 -0
  153. data/doc/_index.html +1248 -0
  154. data/doc/class_list.html +51 -0
  155. data/doc/css/common.css +1 -0
  156. data/doc/css/full_list.css +58 -0
  157. data/doc/css/style.css +481 -0
  158. data/doc/file.README.html +76 -0
  159. data/doc/file_list.html +56 -0
  160. data/doc/frames.html +17 -0
  161. data/doc/index.html +76 -0
  162. data/doc/js/app.js +243 -0
  163. data/doc/js/full_list.js +216 -0
  164. data/doc/js/jquery.js +4 -0
  165. data/doc/method_list.html +1411 -0
  166. data/doc/top-level-namespace.html +114 -0
  167. data/lib/sequencescape/asset.rb +10 -0
  168. data/lib/sequencescape/asset_audit.rb +7 -0
  169. data/lib/sequencescape/asset_group.rb +9 -0
  170. data/lib/sequencescape/bait_library.rb +14 -0
  171. data/lib/sequencescape/bait_library_layout.rb +9 -0
  172. data/lib/sequencescape/barcode_printer.rb +13 -0
  173. data/lib/sequencescape/barcoded_asset.rb +12 -0
  174. data/lib/sequencescape/batch.rb +24 -0
  175. data/lib/sequencescape/behaviour/barcoded.rb +15 -0
  176. data/lib/sequencescape/behaviour/labeled.rb +14 -0
  177. data/lib/sequencescape/behaviour/qced.rb +31 -0
  178. data/lib/sequencescape/behaviour/receptacle.rb +21 -0
  179. data/lib/sequencescape/behaviour/state_driven.rb +19 -0
  180. data/lib/sequencescape/bulk_transfer.rb +8 -0
  181. data/lib/sequencescape/comment.rb +7 -0
  182. data/lib/sequencescape/custom_metadatum_collection.rb +8 -0
  183. data/lib/sequencescape/lane.rb +8 -0
  184. data/lib/sequencescape/library_event.rb +5 -0
  185. data/lib/sequencescape/library_tube.rb +7 -0
  186. data/lib/sequencescape/locale/en.yml +190 -0
  187. data/lib/sequencescape/lot.rb +11 -0
  188. data/lib/sequencescape/lot_type.rb +20 -0
  189. data/lib/sequencescape/multiplexed_library_tube.rb +6 -0
  190. data/lib/sequencescape/order.rb +13 -0
  191. data/lib/sequencescape/order_template.rb +19 -0
  192. data/lib/sequencescape/pipeline.rb +10 -0
  193. data/lib/sequencescape/plate/pooling.rb +23 -0
  194. data/lib/sequencescape/plate/well_structure.rb +27 -0
  195. data/lib/sequencescape/plate.rb +71 -0
  196. data/lib/sequencescape/plate_conversion.rb +8 -0
  197. data/lib/sequencescape/plate_creation.rb +8 -0
  198. data/lib/sequencescape/plate_purpose.rb +24 -0
  199. data/lib/sequencescape/plate_template.rb +13 -0
  200. data/lib/sequencescape/pooled_plate_creation.rb +8 -0
  201. data/lib/sequencescape/project.rb +11 -0
  202. data/lib/sequencescape/qc_decision.rb +9 -0
  203. data/lib/sequencescape/qc_file.rb +14 -0
  204. data/lib/sequencescape/qcable.rb +17 -0
  205. data/lib/sequencescape/qcable_creator.rb +13 -0
  206. data/lib/sequencescape/request.rb +16 -0
  207. data/lib/sequencescape/robot.rb +5 -0
  208. data/lib/sequencescape/sample.rb +51 -0
  209. data/lib/sequencescape/sample_tube.rb +7 -0
  210. data/lib/sequencescape/search.rb +80 -0
  211. data/lib/sequencescape/specific_tube_creation.rb +8 -0
  212. data/lib/sequencescape/stamp.rb +9 -0
  213. data/lib/sequencescape/state_change.rb +11 -0
  214. data/lib/sequencescape/study.rb +14 -0
  215. data/lib/sequencescape/submission.rb +16 -0
  216. data/lib/sequencescape/submission_pool.rb +7 -0
  217. data/lib/sequencescape/tag.rb +14 -0
  218. data/lib/sequencescape/tag2_layout.rb +10 -0
  219. data/lib/sequencescape/tag2_layout_template.rb +9 -0
  220. data/lib/sequencescape/tag_group.rb +4 -0
  221. data/lib/sequencescape/tag_layout.rb +10 -0
  222. data/lib/sequencescape/tag_layout_template.rb +15 -0
  223. data/lib/sequencescape/template.rb +6 -0
  224. data/lib/sequencescape/transfer.rb +9 -0
  225. data/lib/sequencescape/transfer_request.rb +12 -0
  226. data/lib/sequencescape/transfer_request_collection.rb +8 -0
  227. data/lib/sequencescape/transfer_template.rb +9 -0
  228. data/lib/sequencescape/tube.rb +26 -0
  229. data/lib/sequencescape/tube_creation.rb +8 -0
  230. data/lib/sequencescape/tube_from_tube_creation.rb +8 -0
  231. data/lib/sequencescape/tube_purpose.rb +24 -0
  232. data/lib/sequencescape/user.rb +13 -0
  233. data/lib/sequencescape/volume_update.rb +6 -0
  234. data/lib/sequencescape/well.rb +19 -0
  235. data/lib/sequencescape/work_completion.rb +10 -0
  236. data/lib/sequencescape-api/actions.rb +69 -0
  237. data/lib/sequencescape-api/associations/base/instance_methods.rb +57 -0
  238. data/lib/sequencescape-api/associations/base.rb +15 -0
  239. data/lib/sequencescape-api/associations/belongs_to.rb +127 -0
  240. data/lib/sequencescape-api/associations/has_many/json.rb +10 -0
  241. data/lib/sequencescape-api/associations/has_many/validation.rb +37 -0
  242. data/lib/sequencescape-api/associations/has_many.rb +123 -0
  243. data/lib/sequencescape-api/associations.rb +112 -0
  244. data/lib/sequencescape-api/capabilities.rb +11 -0
  245. data/lib/sequencescape-api/composition.rb +37 -0
  246. data/lib/sequencescape-api/connection_factory/actions.rb +154 -0
  247. data/lib/sequencescape-api/connection_factory/helpers.rb +9 -0
  248. data/lib/sequencescape-api/connection_factory.rb +40 -0
  249. data/lib/sequencescape-api/core.rb +63 -0
  250. data/lib/sequencescape-api/core_ext/array.rb +7 -0
  251. data/lib/sequencescape-api/core_ext/hash.rb +18 -0
  252. data/lib/sequencescape-api/core_ext.rb +2 -0
  253. data/lib/sequencescape-api/error_handling.rb +42 -0
  254. data/lib/sequencescape-api/errors.rb +38 -0
  255. data/lib/sequencescape-api/finder_methods.rb +184 -0
  256. data/lib/sequencescape-api/locale/en.yml +7 -0
  257. data/lib/sequencescape-api/rails.rb +88 -0
  258. data/lib/sequencescape-api/resource/active_model.rb +17 -0
  259. data/lib/sequencescape-api/resource/attribute_groups.rb +94 -0
  260. data/lib/sequencescape-api/resource/attributes.rb +87 -0
  261. data/lib/sequencescape-api/resource/instance_methods.rb +24 -0
  262. data/lib/sequencescape-api/resource/json.rb +114 -0
  263. data/lib/sequencescape-api/resource/modifications.rb +111 -0
  264. data/lib/sequencescape-api/resource.rb +47 -0
  265. data/lib/sequencescape-api/resource_model_proxy.rb +44 -0
  266. data/lib/sequencescape-api/version.rb +5 -0
  267. data/lib/sequencescape-api.rb +16 -0
  268. data/lib/sequencescape.rb +81 -0
  269. data/sequencescape-api.gemspec +32 -0
  270. data/spec/sequencescape-api/associations_spec.rb +95 -0
  271. data/spec/sequencescape-api/contracts/belongs-to-association.txt +14 -0
  272. data/spec/sequencescape-api/contracts/client-fails-authentication.txt +6 -0
  273. data/spec/sequencescape-api/contracts/create-invalid-resource.txt +10 -0
  274. data/spec/sequencescape-api/contracts/create-model-c-has-many-inline-nested.txt +10 -0
  275. data/spec/sequencescape-api/contracts/create-model-c-has-many-inline.txt +10 -0
  276. data/spec/sequencescape-api/contracts/create-model-c-has-many.txt +10 -0
  277. data/spec/sequencescape-api/contracts/create-model-c.txt +11 -0
  278. data/spec/sequencescape-api/contracts/create-via-has-many.txt +9 -0
  279. data/spec/sequencescape-api/contracts/model-a-instance.txt +21 -0
  280. data/spec/sequencescape-api/contracts/model-b-instance.txt +38 -0
  281. data/spec/sequencescape-api/contracts/model-c-instance-created.txt +17 -0
  282. data/spec/sequencescape-api/contracts/model-c-instance-updated.txt +17 -0
  283. data/spec/sequencescape-api/contracts/model-c-instance.txt +28 -0
  284. data/spec/sequencescape-api/contracts/model-c-invalid-attribute.txt +8 -0
  285. data/spec/sequencescape-api/contracts/resource-not-found.txt +6 -0
  286. data/spec/sequencescape-api/contracts/results-page-1.txt +17 -0
  287. data/spec/sequencescape-api/contracts/results-page-2.txt +18 -0
  288. data/spec/sequencescape-api/contracts/results-page-3.txt +17 -0
  289. data/spec/sequencescape-api/contracts/retrieve-belongs-to-association.txt +3 -0
  290. data/spec/sequencescape-api/contracts/retrieve-model.txt +4 -0
  291. data/spec/sequencescape-api/contracts/retrieve-results-page-1.txt +3 -0
  292. data/spec/sequencescape-api/contracts/retrieve-results-page-2.txt +3 -0
  293. data/spec/sequencescape-api/contracts/retrieve-results-page-3.txt +3 -0
  294. data/spec/sequencescape-api/contracts/retrieve-root-with-an-authorised-client.txt +5 -0
  295. data/spec/sequencescape-api/contracts/retrieve-root-with-an-unauthorised-client.txt +4 -0
  296. data/spec/sequencescape-api/contracts/retrieve-unauthorised-model-a-list.txt +4 -0
  297. data/spec/sequencescape-api/contracts/retrieve-unauthorised-model-b-list.txt +4 -0
  298. data/spec/sequencescape-api/contracts/retrieve-unauthorised-model-c-list.txt +4 -0
  299. data/spec/sequencescape-api/contracts/root-response-for-authorised-client.txt +20 -0
  300. data/spec/sequencescape-api/contracts/root-response-for-unauthorised-client.txt +28 -0
  301. data/spec/sequencescape-api/contracts/unauthorised-model-a-list.txt +15 -0
  302. data/spec/sequencescape-api/contracts/unauthorised-model-b-list.txt +14 -0
  303. data/spec/sequencescape-api/contracts/unauthorised-model-c-list.txt +15 -0
  304. data/spec/sequencescape-api/contracts/update-invalid-resource.txt +10 -0
  305. data/spec/sequencescape-api/contracts/update-model-c.txt +11 -0
  306. data/spec/sequencescape-api/finding_methods_spec.rb +34 -0
  307. data/spec/sequencescape-api/modifications_spec.rb +169 -0
  308. data/spec/sequencescape-api/root_spec.rb +58 -0
  309. data/spec/spec_helper.rb +13 -0
  310. data/spec/support/contract_helper.rb +112 -0
  311. data/spec/support/namespaces.rb +67 -0
  312. data/spec/support/shared_examples.rb +12 -0
  313. metadata +540 -0
@@ -0,0 +1,114 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Top Level Namespace
8
+
9
+ &mdash; Documentation by YARD 0.9.5
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ pathId = "";
19
+ relpath = '';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="class_list.html"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="_index.html">Index</a> &raquo;
40
+
41
+
42
+ <span class="title">Top Level Namespace</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <iframe id="search_frame" src="class_list.html"></iframe>
63
+
64
+ <div id="content"><h1>Top Level Namespace
65
+
66
+
67
+
68
+ </h1>
69
+ <div class="box_info">
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+
78
+
79
+
80
+
81
+ </div>
82
+
83
+ <h2>Defined Under Namespace</h2>
84
+ <p class="children">
85
+
86
+
87
+ <strong class="modules">Modules:</strong> <span class='object_link'><a href="Sequencescape.html" title="Sequencescape (module)">Sequencescape</a></span>
88
+
89
+
90
+
91
+ <strong class="classes">Classes:</strong> <span class='object_link'><a href="Array.html" title="Array (class)">Array</a></span>, <span class='object_link'><a href="BaitLibrary.html" title="BaitLibrary (class)">BaitLibrary</a></span>, <span class='object_link'><a href="Hash.html" title="Hash (class)">Hash</a></span>, <span class='object_link'><a href="NilClass.html" title="NilClass (class)">NilClass</a></span>
92
+
93
+
94
+ </p>
95
+
96
+
97
+
98
+
99
+
100
+
101
+
102
+
103
+
104
+ </div>
105
+
106
+ <div id="footer">
107
+ Generated on Wed Nov 16 16:31:13 2016 by
108
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
109
+ 0.9.5 (ruby-2.3.0).
110
+ </div>
111
+
112
+ </div>
113
+ </body>
114
+ </html>
@@ -0,0 +1,10 @@
1
+ require 'sequencescape-api/resource'
2
+
3
+ class Sequencescape::Asset < ::Sequencescape::Api::Resource
4
+ attribute_accessor :name
5
+ attribute_accessor :qc_state
6
+
7
+ # TODO: This is a hack for the warehouse that should be removed! The type is always known by the application
8
+ # that is using an asset (actually it comes from request JSON) so it's pointless this being here!
9
+ attribute_accessor :type
10
+ end
@@ -0,0 +1,7 @@
1
+ require 'sequencescape-api/resource'
2
+
3
+ class Sequencescape::AssetAudit < ::Sequencescape::Api::Resource
4
+ belongs_to :asset
5
+
6
+ attribute_accessor :message, :key, :created_by, :asset, :witnessed_by
7
+ end
@@ -0,0 +1,9 @@
1
+ require 'sequencescape-api/resource'
2
+
3
+ class Sequencescape::AssetGroup < ::Sequencescape::Api::Resource
4
+ belongs_to :submission
5
+ belongs_to :study
6
+ has_many :assets
7
+
8
+ attribute_accessor :name
9
+ end
@@ -0,0 +1,14 @@
1
+ class BaitLibrary
2
+ include Sequencescape::Api::Composition::Target
3
+
4
+ attribute_accessor :name
5
+ attribute_accessor :created_at, :updated_at, :conversion => :to_time
6
+
7
+ attribute_group :supplier do
8
+ attribute_accessor :name, :identifier
9
+ end
10
+
11
+ attribute_group :target do
12
+ attribute_accessor :species
13
+ end
14
+ end
@@ -0,0 +1,9 @@
1
+ require 'sequencescape-api/resource'
2
+
3
+ class Sequencescape::BaitLibraryLayout < ::Sequencescape::Api::Resource
4
+ belongs_to :user
5
+ belongs_to :plate, :class_name => 'Plate'
6
+ attribute_reader :layout
7
+
8
+ has_class_create_action(:preview!, :action => :preview)
9
+ end
@@ -0,0 +1,13 @@
1
+ require 'sequencescape-api/resource'
2
+
3
+ class Sequencescape::BarcodePrinter < Sequencescape::Api::Resource
4
+ attribute_reader :name, :active
5
+
6
+ attribute_group :service do
7
+ attribute_reader :url
8
+ end
9
+
10
+ attribute_group :type do
11
+ attribute_reader :name, :layout
12
+ end
13
+ end
@@ -0,0 +1,12 @@
1
+ require 'sequencescape-api/resource'
2
+ require 'sequencescape/asset'
3
+
4
+ class Sequencescape::BarcodedAsset < ::Sequencescape::Asset
5
+ require 'sequencescape/behaviour/barcoded'
6
+ require 'sequencescape/behaviour/qced'
7
+ # Used in transfer to make barcodes easily retrieveable
8
+ include Sequencescape::Behaviour::Barcoded
9
+ include Sequencescape::Behaviour::Qced
10
+
11
+ belongs_to :stock_plate, :class_name => 'Plate'
12
+ end
@@ -0,0 +1,24 @@
1
+ require 'sequencescape-api/resource'
2
+
3
+ class Sequencescape::Batch < ::Sequencescape::Api::Resource
4
+ belongs_to :pipeline
5
+ has_many :requests, :disposition => :inline
6
+ composed_of :user
7
+
8
+ has_update_action :start!, :action => 'start'
9
+ has_update_action :complete!, :action => 'complete'
10
+ has_update_action :release!, :action => 'release'
11
+
12
+ attribute_accessor :state, :production_state, :qc_state, :barcode
13
+
14
+ def self.state_method(name)
15
+ class_eval(%Q{def #{name}? ; state == #{name.to_s.inspect} ; end})
16
+ end
17
+
18
+ state_method(:pending)
19
+ state_method(:started)
20
+ state_method(:completed)
21
+ state_method(:released)
22
+
23
+ validates_presence_of :requests, :allow_blank => false
24
+ end
@@ -0,0 +1,15 @@
1
+ # Anything that can have a barcode is considered to be barcoded!
2
+ module Sequencescape::Behaviour
3
+ module Barcoded
4
+ def self.included(base)
5
+ base.class_eval do
6
+ attribute_group :barcode do
7
+ attribute_accessor :prefix, :number # The pieces that make up a barcode
8
+ attribute_accessor :ean13 # The EAN13 barcode number
9
+ attribute_accessor :two_dimensional # The 2D barcode
10
+ attribute_accessor :type # The type of barcode (or rather barcode printer)
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,14 @@
1
+ # Prefix depends on the submission template used and sumarises the order.
2
+ # Text at the moment is a bit redundant, being the purpose name. However
3
+ # it makes things much easier for cases where we are hashing our objects manually
4
+ module Sequencescape::Behaviour
5
+ module Labeled
6
+ def self.included(base)
7
+ base.class_eval do
8
+ attribute_group :label do
9
+ attribute_accessor :prefix, :text
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,31 @@
1
+ module Sequencescape::Behaviour
2
+ module Qced
3
+
4
+ module QcFile
5
+ def create!(attributes = nil)
6
+ attributes ||= {}
7
+
8
+ new({}, false).tap do |qc_file|
9
+ api.create(actions.create, { 'qc_file' => attributes }, Sequencescape::Api::ModifyingHandler.new(qc_file))
10
+ end
11
+ end
12
+
13
+ def create_from_file!(file, filename)
14
+ attributes ||= {}
15
+
16
+ new({}, false).tap do |qc_file|
17
+ api.create_from_file(actions.create, file, filename, 'sequencescape/qc_file', Sequencescape::Api::ModifyingHandler.new(qc_file))
18
+ end
19
+ end
20
+ end
21
+
22
+ def self.included(base)
23
+ base.class_eval do
24
+ has_many :qc_files do
25
+ include Sequencescape::Behaviour::Qced::QcFile
26
+ end
27
+ end
28
+ end
29
+
30
+ end
31
+ end
@@ -0,0 +1,21 @@
1
+ require 'sequencescape/tag'
2
+ require 'sequencescape/bait_library'
3
+
4
+ module Sequencescape::Behaviour
5
+ module Receptacle
6
+ class Aliquot < Sequencescape::Api::Resource
7
+ belongs_to :sample, :disposition => :inline
8
+ composed_of :tag
9
+ composed_of :tag2, :class_name => 'Tag'
10
+ composed_of :bait_library
11
+
12
+ attribute_accessor :suboptimal
13
+ end
14
+
15
+ def self.included(base)
16
+ base.class_eval do
17
+ has_many :aliquots, :disposition => :inline, :class_name => 'Behaviours::Receptacle::Aliquot'
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,19 @@
1
+ module Sequencescape::Behaviour
2
+ module StateDriven
3
+ def self.included(base)
4
+ base.class_eval do
5
+ attribute_reader :state
6
+
7
+ # Define a few default states
8
+ [ :pending, :started, :passed, :failed, :cancelled, :unknown, :qc_complete ].each do |state|
9
+ line = __LINE__ + 1
10
+ class_eval(%Q{
11
+ def #{state}?
12
+ state == #{state.to_s.inspect}
13
+ end
14
+ }, __FILE__, line)
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,8 @@
1
+ require 'sequencescape-api/resource'
2
+
3
+ class Sequencescape::BulkTransfer < ::Sequencescape::Api::Resource
4
+ belongs_to :user
5
+ has_many :transfers, :class_name => 'Transfer'
6
+
7
+ attribute_accessor :well_transfers
8
+ end
@@ -0,0 +1,7 @@
1
+ require 'sequencescape-api/resource'
2
+
3
+ class Sequencescape::Comment < ::Sequencescape::Api::Resource
4
+
5
+ attribute_accessor :description, :title
6
+
7
+ end
@@ -0,0 +1,8 @@
1
+ require 'sequencescape-api/resource'
2
+
3
+ class Sequencescape::CustomMetadatumCollection < Sequencescape::Api::Resource
4
+ belongs_to :asset
5
+ belongs_to :user
6
+
7
+ attribute_accessor :metadata
8
+ end
@@ -0,0 +1,8 @@
1
+ require 'sequencescape/asset'
2
+ require 'sequencescape/behaviour/receptacle'
3
+
4
+ class Sequencescape::Lane < ::Sequencescape::Asset
5
+ include Sequencescape::Behaviour::Receptacle
6
+
7
+ attribute_accessor :external_release
8
+ end
@@ -0,0 +1,5 @@
1
+ class Sequencescape::LibraryEvent < ::Sequencescape::Api::Resource
2
+ belongs_to :user
3
+ belongs_to :seed, :class_name => 'Plate'
4
+ attribute_accessor :event_type
5
+ end
@@ -0,0 +1,7 @@
1
+ require 'sequencescape/tube'
2
+
3
+ class Sequencescape::LibraryTube < ::Sequencescape::Tube
4
+ has_many :requests
5
+ belongs_to :source_request, :class_name => 'Sequencescape::Request'
6
+ belongs_to :custom_metadatum_collection
7
+ end
@@ -0,0 +1,190 @@
1
+ en:
2
+ activemodel:
3
+ models:
4
+ sequencescape:
5
+ asset: "Asset"
6
+ asset_group: "Asset group"
7
+ batch: "Batch"
8
+ library_tube: "Library tube"
9
+ pipeline: "Pipeline"
10
+ plate: "Plate"
11
+ plate_purpose: "Plate purpose"
12
+ project: "Project"
13
+ sample: "Sample"
14
+ sample_tube: "Sample tube"
15
+ study: "Study"
16
+ submission: "Submission"
17
+ submission_template: "Submission template"
18
+ well: "Well"
19
+
20
+ attributes:
21
+ sequencescape:
22
+ asset: &asset
23
+ name: "Name"
24
+ qc_state: "QC state"
25
+ barcode_prefix: "Barcode prefix"
26
+ barcode: "Barcode"
27
+ two_dimensional_barcode: "2D Barcode"
28
+
29
+ request:
30
+ request_options: &request_options
31
+ read_length: "Read length"
32
+ library_type: "Library type"
33
+ fragment_size_required:
34
+ from: "Fragment size (from)"
35
+ to: "Fragment size (to)"
36
+
37
+ asset_group:
38
+ name: "Name"
39
+ study:
40
+ name: "Study name"
41
+
42
+ batch:
43
+ state: "State"
44
+ production_state: "Production state"
45
+ qc_state: "QC state"
46
+ barcode: "Barcode"
47
+ requests: "Requests"
48
+ user:
49
+ login: "User login"
50
+
51
+ library_tube:
52
+ <<: *asset
53
+ closed: "Closed"
54
+ concentration: "Concentration"
55
+ volume: "Volume"
56
+ scanned_in_date: "Date scanned into the lab"
57
+
58
+ sample:
59
+ name: "Sample name"
60
+
61
+ source_request:
62
+ <<: *request_options
63
+
64
+ tag:
65
+ uuid: "UUID"
66
+ expected_sequence: "Expected sequence"
67
+
68
+ group:
69
+ uuid: "UUID"
70
+ name: "Name"
71
+
72
+ pipeline:
73
+ name: "Name"
74
+
75
+ plate:
76
+ <<: *asset
77
+ size: "Size"
78
+ wells: "Wells"
79
+
80
+ plate_purpose:
81
+ name: "Plate purpose name"
82
+
83
+ plate_purpose:
84
+ name: "Name"
85
+
86
+ project:
87
+ name: "Name"
88
+ approved: "Approval status"
89
+ state: "State"
90
+
91
+ project_manager: "Project manager"
92
+ cost_code: "Cost code"
93
+ funding_comments: "Funding comments"
94
+ collaborators: "Collaborators"
95
+ external_funding_source: "External funding source"
96
+ budget_division: "Budget division"
97
+ budget_cost_centre: "Budget cost centre"
98
+ funding_model: "Funding model"
99
+
100
+ roles: "Roles"
101
+
102
+ sample:
103
+ name: "Name"
104
+ sanger_id: "Sanger sample identifier"
105
+ control: "Control sample"
106
+
107
+ organism: "Organism"
108
+ cohort: "Cohort"
109
+ country_of_origin: "Country of origin"
110
+ geographical_region: "Geographical region"
111
+ ethnicity: "Ethnicity"
112
+ volume: "Volume"
113
+ supplier_plate_id: "Supplier plate identifier"
114
+ mother: "Mother"
115
+ father: "Father"
116
+ replicate: "Replicate"
117
+ gc_content: "GC content level"
118
+ gender: "Gender"
119
+ dna_source: "DNA source"
120
+ public_name: "Public name"
121
+ common_name: "Common name"
122
+ strain_att: "Strain"
123
+ taxon_id: "Taxon identifier"
124
+ ebi_accession_number: "ENA accession number"
125
+ description: "Description"
126
+ sra_hold: "Sample visibility"
127
+ reference_genome: "Reference genome"
128
+
129
+ sample_tube:
130
+ <<: *asset
131
+ closed: "Closed"
132
+ concentration: "Concentration"
133
+ volume: "Volume"
134
+ scanned_in_date: "Date scanned into lab"
135
+
136
+ sample:
137
+ name: "Sample name"
138
+
139
+ study:
140
+ name: "Name"
141
+ ethically_approved: "Ethical approval status"
142
+ state: "State"
143
+ abbreviation: "Abbreviation"
144
+
145
+ type: "Type of study"
146
+ sac_sponsor: "Faculty sponsor"
147
+ reference_genome: "Reference genome"
148
+ accession_number: "ENA accession number"
149
+ description: "Description"
150
+ abstract: "Abstract"
151
+
152
+ contaminated_human_dna: "Contaminated with human DNA"
153
+ contains_human_dna: "Contains human DNA"
154
+ data_release_sort_of_study: "Type of study"
155
+ data_release_strategy: "Release strategy"
156
+
157
+ submission:
158
+ state: "State"
159
+
160
+ # TODO: Wonder how you can deal with nesting of 'name' in these
161
+ study: "Study"
162
+ project: "Project"
163
+ asset_group: "Asset group"
164
+
165
+ assets: "Asset UUIDs"
166
+
167
+ request_types: "Request types"
168
+
169
+ request_options:
170
+ <<: *request_options
171
+ number_of_lanes: "Number of lanes"
172
+
173
+ submission_template:
174
+ name: "Name"
175
+
176
+ well:
177
+ location: "Location on plate"
178
+
179
+ errors:
180
+ models:
181
+ sequencescape:
182
+ request:
183
+ attributes:
184
+ state:
185
+ inclusion: "is not a valid state"
186
+
187
+ study:
188
+ attributes:
189
+ name:
190
+ blank: "can't be blank"