lims-core 3.2.3

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 (177) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +5 -0
  3. data/.rspec +1 -0
  4. data/.rvmrc +2 -0
  5. data/.travis.yml +2 -0
  6. data/.vimrc +27 -0
  7. data/.yard_templates/default/layout/html/footer.erb +0 -0
  8. data/.yardopts +1 -0
  9. data/Gemfile +54 -0
  10. data/Gemfile.lock +197 -0
  11. data/Guardfile +21 -0
  12. data/Guardfile.tmux +28 -0
  13. data/README.markdown +67 -0
  14. data/Rakefile +16 -0
  15. data/config/database.yml +16 -0
  16. data/doc/Array.html +116 -0
  17. data/doc/Array/ArrayLoggerPersistor.html +152 -0
  18. data/doc/Lims.html +114 -0
  19. data/doc/Lims/Core.html +178 -0
  20. data/doc/Lims/Core/Action.html +91 -0
  21. data/doc/Lims/Core/Actions.html +116 -0
  22. data/doc/Lims/Core/Actions/Action.html +216 -0
  23. data/doc/Lims/Core/Actions/Action/AfterEval.html +853 -0
  24. data/doc/Lims/Core/Actions/Action/InvalidParameters.html +268 -0
  25. data/doc/Lims/Core/Actions/ActionGroup.html +196 -0
  26. data/doc/Lims/Core/Actions/ActionGroup/AfterEval.html +315 -0
  27. data/doc/Lims/Core/Actions/BulkAction.html +224 -0
  28. data/doc/Lims/Core/Actions/BulkAction/AfterEval.html +253 -0
  29. data/doc/Lims/Core/Actions/TestActionGroup.html +101 -0
  30. data/doc/Lims/Core/Actions/TestActionGroup/Action.html +133 -0
  31. data/doc/Lims/Core/Actions/TestActionGroup/ActionGroup.html +127 -0
  32. data/doc/Lims/Core/Base.html +287 -0
  33. data/doc/Lims/Core/Base/AccessibleViaSuper.html +252 -0
  34. data/doc/Lims/Core/Base/ClassMethod.html +177 -0
  35. data/doc/Lims/Core/Base/HashString.html +177 -0
  36. data/doc/Lims/Core/Base/IsArrayOf.html +606 -0
  37. data/doc/Lims/Core/Base/State.html +130 -0
  38. data/doc/Lims/Core/Organization.html +113 -0
  39. data/doc/Lims/Core/Organization/Batch.html +106 -0
  40. data/doc/Lims/Core/Persistence.html +267 -0
  41. data/doc/Lims/Core/Persistence/ComparisonFilter.html +318 -0
  42. data/doc/Lims/Core/Persistence/Filter.html +252 -0
  43. data/doc/Lims/Core/Persistence/IdentityMap.html +409 -0
  44. data/doc/Lims/Core/Persistence/IdentityMap/Class.html +144 -0
  45. data/doc/Lims/Core/Persistence/IdentityMap/DuplicateError.html +126 -0
  46. data/doc/Lims/Core/Persistence/IdentityMap/DuplicateIdError.html +136 -0
  47. data/doc/Lims/Core/Persistence/IdentityMap/DuplicateObjectError.html +136 -0
  48. data/doc/Lims/Core/Persistence/IdentityMapClass.html +133 -0
  49. data/doc/Lims/Core/Persistence/Logger.html +105 -0
  50. data/doc/Lims/Core/Persistence/Logger/Persistor.html +334 -0
  51. data/doc/Lims/Core/Persistence/Logger/Session.html +452 -0
  52. data/doc/Lims/Core/Persistence/Logger/Store.html +470 -0
  53. data/doc/Lims/Core/Persistence/MessageBus.html +871 -0
  54. data/doc/Lims/Core/Persistence/MessageBus/ConnectionError.html +123 -0
  55. data/doc/Lims/Core/Persistence/MessageBus/InvalidSettingsError.html +122 -0
  56. data/doc/Lims/Core/Persistence/MultiCriteriaFilter.html +293 -0
  57. data/doc/Lims/Core/Persistence/PersistAssociationTrait.html +91 -0
  58. data/doc/Lims/Core/Persistence/PersistableTrait.html +91 -0
  59. data/doc/Lims/Core/Persistence/Persistor.html +3072 -0
  60. data/doc/Lims/Core/Persistence/Persistor/DuplicateError.html +205 -0
  61. data/doc/Lims/Core/Persistence/Persistor/DuplicateIdError.html +147 -0
  62. data/doc/Lims/Core/Persistence/Persistor/DuplicateObjectError.html +147 -0
  63. data/doc/Lims/Core/Persistence/PersistorTrait.html +91 -0
  64. data/doc/Lims/Core/Persistence/ResourceState.html +1738 -0
  65. data/doc/Lims/Core/Persistence/Search.html +269 -0
  66. data/doc/Lims/Core/Persistence/Search/CreateSearch.html +251 -0
  67. data/doc/Lims/Core/Persistence/Search/SearchPersistor.html +240 -0
  68. data/doc/Lims/Core/Persistence/Search/SearchSequelPersistor.html +396 -0
  69. data/doc/Lims/Core/Persistence/Sequel.html +117 -0
  70. data/doc/Lims/Core/Persistence/Sequel/Filters.html +462 -0
  71. data/doc/Lims/Core/Persistence/Sequel/ForTest.html +101 -0
  72. data/doc/Lims/Core/Persistence/Sequel/ForTest/Name.html +137 -0
  73. data/doc/Lims/Core/Persistence/Sequel/ForTest/Name/NamePersitor.html +143 -0
  74. data/doc/Lims/Core/Persistence/Sequel/Migrations.html +266 -0
  75. data/doc/Lims/Core/Persistence/Sequel/Persistor.html +665 -0
  76. data/doc/Lims/Core/Persistence/Sequel/Session.html +501 -0
  77. data/doc/Lims/Core/Persistence/Sequel/Store.html +417 -0
  78. data/doc/Lims/Core/Persistence/Session.html +2751 -0
  79. data/doc/Lims/Core/Persistence/Session/UnmanagedObjectError.html +111 -0
  80. data/doc/Lims/Core/Persistence/StateGroup.html +696 -0
  81. data/doc/Lims/Core/Persistence/StateList.html +498 -0
  82. data/doc/Lims/Core/Persistence/Store.html +695 -0
  83. data/doc/Lims/Core/Persistence/UuidResource.html +1044 -0
  84. data/doc/Lims/Core/Persistence/UuidResource/InvalidUuidError.html +111 -0
  85. data/doc/Lims/Core/Persistence/UuidResource/UuidResourcePersistor.html +337 -0
  86. data/doc/Lims/Core/Persistence/Uuidable.html +799 -0
  87. data/doc/Lims/Core/Persistor.html +320 -0
  88. data/doc/Lims/Core/Resource.html +165 -0
  89. data/doc/Object.html +228 -0
  90. data/doc/SessionSpec.html +101 -0
  91. data/doc/SessionSpec/Model.html +279 -0
  92. data/doc/SessionSpec/Model/ModelPersistor.html +327 -0
  93. data/doc/_index.html +732 -0
  94. data/doc/class_list.html +47 -0
  95. data/doc/css/common.css +1 -0
  96. data/doc/css/full_list.css +55 -0
  97. data/doc/css/style.css +322 -0
  98. data/doc/file.README.html +127 -0
  99. data/doc/file_list.html +49 -0
  100. data/doc/frames.html +13 -0
  101. data/doc/index.html +127 -0
  102. data/doc/js/app.js +205 -0
  103. data/doc/js/full_list.js +167 -0
  104. data/doc/js/jquery.js +16 -0
  105. data/doc/method_list.html +1894 -0
  106. data/doc/top-level-namespace.html +100 -0
  107. data/lib/common.rb +18 -0
  108. data/lib/lims-core.rb +29 -0
  109. data/lib/lims-core/actions.rb +10 -0
  110. data/lib/lims-core/actions/action.rb +185 -0
  111. data/lib/lims-core/actions/action_group.rb +54 -0
  112. data/lib/lims-core/actions/bulk_action.rb +65 -0
  113. data/lib/lims-core/base.rb +132 -0
  114. data/lib/lims-core/helpers.rb +41 -0
  115. data/lib/lims-core/persistence.rb +15 -0
  116. data/lib/lims-core/persistence/comparison_filter.rb +54 -0
  117. data/lib/lims-core/persistence/filter.rb +23 -0
  118. data/lib/lims-core/persistence/identity_map.rb +55 -0
  119. data/lib/lims-core/persistence/logger/all.rb +5 -0
  120. data/lib/lims-core/persistence/logger/persistor.rb +35 -0
  121. data/lib/lims-core/persistence/logger/session.rb +30 -0
  122. data/lib/lims-core/persistence/logger/store.rb +37 -0
  123. data/lib/lims-core/persistence/message_bus.rb +131 -0
  124. data/lib/lims-core/persistence/multi_criteria_filter.rb +50 -0
  125. data/lib/lims-core/persistence/persist_association_trait.rb +96 -0
  126. data/lib/lims-core/persistence/persistable_trait.rb +150 -0
  127. data/lib/lims-core/persistence/persistor.rb +495 -0
  128. data/lib/lims-core/persistence/resource_state.rb +157 -0
  129. data/lib/lims-core/persistence/search.rb +3 -0
  130. data/lib/lims-core/persistence/search/all.rb +3 -0
  131. data/lib/lims-core/persistence/search/create_search.rb +55 -0
  132. data/lib/lims-core/persistence/search/search_persistor.rb +45 -0
  133. data/lib/lims-core/persistence/search/search_sequel_persistor.rb +40 -0
  134. data/lib/lims-core/persistence/sequel.rb +14 -0
  135. data/lib/lims-core/persistence/sequel/filters.rb +106 -0
  136. data/lib/lims-core/persistence/sequel/migrations.rb +14 -0
  137. data/lib/lims-core/persistence/sequel/migrations/add_audit_tables.rb +147 -0
  138. data/lib/lims-core/persistence/sequel/migrations/initial.rb +156 -0
  139. data/lib/lims-core/persistence/sequel/persistor.rb +200 -0
  140. data/lib/lims-core/persistence/sequel/session.rb +136 -0
  141. data/lib/lims-core/persistence/sequel/store.rb +37 -0
  142. data/lib/lims-core/persistence/session.rb +409 -0
  143. data/lib/lims-core/persistence/state_group.rb +97 -0
  144. data/lib/lims-core/persistence/state_list.rb +56 -0
  145. data/lib/lims-core/persistence/store.rb +73 -0
  146. data/lib/lims-core/persistence/uuid_resource.rb +115 -0
  147. data/lib/lims-core/persistence/uuid_resource_persistor.rb +43 -0
  148. data/lib/lims-core/persistence/uuidable.rb +107 -0
  149. data/lib/lims-core/resource.rb +21 -0
  150. data/lib/lims-core/subclass_tracker.rb +30 -0
  151. data/lib/lims-core/version.rb +5 -0
  152. data/lims-core.gemspec +40 -0
  153. data/makefile +52 -0
  154. data/showoff/core-2012-06-11/core/01_slide.md +237 -0
  155. data/showoff/core-2012-06-11/core/02_slide.md +110 -0
  156. data/showoff/core-2012-06-11/custom.css +44 -0
  157. data/showoff/core-2012-06-11/main/01_slide.md +53 -0
  158. data/showoff/core-2012-06-11/showoff.json +10 -0
  159. data/showoff/core-2012-06-11/tp1.tpl +1 -0
  160. data/spec/actions/action_group_spec.rb +39 -0
  161. data/spec/actions/spec_helper.rb +1 -0
  162. data/spec/persistence/identity_map_spec.rb +55 -0
  163. data/spec/persistence/logger/spec_helper.rb +7 -0
  164. data/spec/persistence/logger/store_spec.rb +48 -0
  165. data/spec/persistence/message_bus_spec.rb +76 -0
  166. data/spec/persistence/sequel/session_spec.rb +125 -0
  167. data/spec/persistence/sequel/spec_helper.rb +39 -0
  168. data/spec/persistence/sequel/store_shared.rb +25 -0
  169. data/spec/persistence/sequel/store_spec.rb +22 -0
  170. data/spec/persistence/session_spec.rb +199 -0
  171. data/spec/persistence/spec_helper.rb +2 -0
  172. data/spec/persistence/uuid_resource_spec.rb +80 -0
  173. data/spec/spec_helper.rb +10 -0
  174. data/spec/subclass_tracker_sperc.rb +62 -0
  175. data/utils/constant_tree.rb +29 -0
  176. data/utils/stack.rb +48 -0
  177. metadata +402 -0
@@ -0,0 +1,130 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>
7
+ Class: Lims::Core::Base::State
8
+
9
+ &mdash; Documentation by YARD 0.7.3
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../../../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../../../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ relpath = '../../..';
19
+ if (relpath != '') relpath += '/';
20
+ </script>
21
+
22
+ <script type="text/javascript" charset="utf-8" src="../../../js/jquery.js"></script>
23
+
24
+ <script type="text/javascript" charset="utf-8" src="../../../js/app.js"></script>
25
+
26
+
27
+ </head>
28
+ <body>
29
+ <script type="text/javascript" charset="utf-8">
30
+ if (window.top.frames.main) document.body.className = 'frames';
31
+ </script>
32
+
33
+ <div id="header">
34
+ <div id="menu">
35
+
36
+ <a href="../../../_index.html">Index (S)</a> &raquo;
37
+ <span class='title'><span class='object_link'><a href="../../../Lims.html" title="Lims (module)">Lims</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../../Core.html" title="Lims::Core (module)">Core</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Base.html" title="Lims::Core::Base (module)">Base</a></span></span>
38
+ &raquo;
39
+ <span class="title">State</span>
40
+
41
+
42
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
43
+ </div>
44
+
45
+ <div id="search">
46
+
47
+ <a id="class_list_link" href="#">Class List</a>
48
+
49
+ <a id="method_list_link" href="#">Method List</a>
50
+
51
+ <a id="file_list_link" href="#">File List</a>
52
+
53
+ </div>
54
+ <div class="clear"></div>
55
+ </div>
56
+
57
+ <iframe id="search_frame"></iframe>
58
+
59
+ <div id="content"><h1>Class: Lims::Core::Base::State
60
+
61
+
62
+
63
+ </h1>
64
+
65
+ <dl class="box">
66
+
67
+ <dt class="r1">Inherits:</dt>
68
+ <dd class="r1">
69
+ <span class="inheritName">Virtus::Attribute::Object</span>
70
+
71
+ <ul class="fullTree">
72
+ <li><span class='object_link'><a href="../../../Object.html" title="Object (class)">Object</a></span></li>
73
+
74
+ <li class="next">Virtus::Attribute::Object</li>
75
+
76
+ <li class="next">Lims::Core::Base::State</li>
77
+
78
+ </ul>
79
+ <a href="#" class="inheritanceTree">show all</a>
80
+
81
+ </dd>
82
+
83
+
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+ <dt class="r2 last">Defined in:</dt>
92
+ <dd class="r2 last">lib/lims-core/base.rb</dd>
93
+
94
+ </dl>
95
+ <div class="clear"></div>
96
+
97
+ <h2>Overview</h2><div class="docstring">
98
+ <div class="discussion">
99
+
100
+ <div class="note todo">
101
+ <strong>TODO:</strong>
102
+ <div class='inline'>
103
+ <p>override state_machine to automatically add</p>
104
+ </div>
105
+ </div>
106
+
107
+
108
+ <p>attribute</p>
109
+
110
+
111
+ </div>
112
+ </div>
113
+ <div class="tags">
114
+
115
+
116
+ </div>
117
+
118
+
119
+
120
+
121
+
122
+
123
+
124
+
125
+
126
+ </div>
127
+
128
+
129
+ </body>
130
+ </html>
@@ -0,0 +1,113 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>
7
+ Module: Lims::Core::Organization
8
+
9
+ &mdash; Documentation by YARD 0.7.3
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ relpath = '../..';
19
+ if (relpath != '') relpath += '/';
20
+ </script>
21
+
22
+ <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
23
+
24
+ <script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
25
+
26
+
27
+ </head>
28
+ <body>
29
+ <script type="text/javascript" charset="utf-8">
30
+ if (window.top.frames.main) document.body.className = 'frames';
31
+ </script>
32
+
33
+ <div id="header">
34
+ <div id="menu">
35
+
36
+ <a href="../../_index.html">Index (O)</a> &raquo;
37
+ <span class='title'><span class='object_link'><a href="../../Lims.html" title="Lims (module)">Lims</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Core.html" title="Lims::Core (module)">Core</a></span></span>
38
+ &raquo;
39
+ <span class="title">Organization</span>
40
+
41
+
42
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
43
+ </div>
44
+
45
+ <div id="search">
46
+
47
+ <a id="class_list_link" href="#">Class List</a>
48
+
49
+ <a id="method_list_link" href="#">Method List</a>
50
+
51
+ <a id="file_list_link" href="#">File List</a>
52
+
53
+ </div>
54
+ <div class="clear"></div>
55
+ </div>
56
+
57
+ <iframe id="search_frame"></iframe>
58
+
59
+ <div id="content"><h1>Module: Lims::Core::Organization
60
+
61
+
62
+
63
+ </h1>
64
+
65
+ <dl class="box">
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+ <dt class="r1 last">Defined in:</dt>
75
+ <dd class="r1 last">lib/lims-core/organization.rb</dd>
76
+
77
+ </dl>
78
+ <div class="clear"></div>
79
+
80
+ <h2>Overview</h2><div class="docstring">
81
+ <div class="discussion">
82
+
83
+ <p>This module contains the different classes related to users, data release,
84
+ funding, ordering etc.</p>
85
+
86
+
87
+ </div>
88
+ </div>
89
+ <div class="tags">
90
+
91
+
92
+ </div><h2>Defined Under Namespace</h2>
93
+ <p class="children">
94
+
95
+
96
+
97
+
98
+ <strong class="classes">Classes:</strong> <span class='object_link'><a href="Organization/Batch.html" title="Lims::Core::Organization::Batch (class)">Batch</a></span>
99
+
100
+
101
+ </p>
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+ </div>
110
+
111
+
112
+ </body>
113
+ </html>
@@ -0,0 +1,106 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>
7
+ Class: Lims::Core::Organization::Batch
8
+
9
+ &mdash; Documentation by YARD 0.7.3
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../../../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../../../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ relpath = '../../..';
19
+ if (relpath != '') relpath += '/';
20
+ </script>
21
+
22
+ <script type="text/javascript" charset="utf-8" src="../../../js/jquery.js"></script>
23
+
24
+ <script type="text/javascript" charset="utf-8" src="../../../js/app.js"></script>
25
+
26
+
27
+ </head>
28
+ <body>
29
+ <script type="text/javascript" charset="utf-8">
30
+ if (window.top.frames.main) document.body.className = 'frames';
31
+ </script>
32
+
33
+ <div id="header">
34
+ <div id="menu">
35
+
36
+ <a href="../../../_index.html">Index (B)</a> &raquo;
37
+ <span class='title'><span class='object_link'><a href="../../../Lims.html" title="Lims (module)">Lims</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../../Core.html" title="Lims::Core (module)">Core</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Organization.html" title="Lims::Core::Organization (module)">Organization</a></span></span>
38
+ &raquo;
39
+ <span class="title">Batch</span>
40
+
41
+
42
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
43
+ </div>
44
+
45
+ <div id="search">
46
+
47
+ <a id="class_list_link" href="#">Class List</a>
48
+
49
+ <a id="method_list_link" href="#">Method List</a>
50
+
51
+ <a id="file_list_link" href="#">File List</a>
52
+
53
+ </div>
54
+ <div class="clear"></div>
55
+ </div>
56
+
57
+ <iframe id="search_frame"></iframe>
58
+
59
+ <div id="content"><h1>Class: Lims::Core::Organization::Batch
60
+
61
+
62
+
63
+ </h1>
64
+
65
+ <dl class="box">
66
+
67
+ <dt class="r1">Inherits:</dt>
68
+ <dd class="r1">
69
+ <span class="inheritName"><span class='object_link'><a href="../../../Object.html" title="Object (class)">Object</a></span></span>
70
+
71
+ <ul class="fullTree">
72
+ <li><span class='object_link'><a href="../../../Object.html" title="Object (class)">Object</a></span></li>
73
+
74
+ <li class="next">Lims::Core::Organization::Batch</li>
75
+
76
+ </ul>
77
+ <a href="#" class="inheritanceTree">show all</a>
78
+
79
+ </dd>
80
+
81
+
82
+
83
+
84
+
85
+
86
+
87
+
88
+
89
+ <dt class="r2 last">Defined in:</dt>
90
+ <dd class="r2 last">spec/actions/update_batch_spec.rb</dd>
91
+
92
+ </dl>
93
+ <div class="clear"></div>
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+
102
+ </div>
103
+
104
+
105
+ </body>
106
+ </html>
@@ -0,0 +1,267 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>
7
+ Module: Lims::Core::Persistence
8
+
9
+ &mdash; Documentation by YARD 0.7.3
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ relpath = '../..';
19
+ if (relpath != '') relpath += '/';
20
+ </script>
21
+
22
+ <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
23
+
24
+ <script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
25
+
26
+
27
+ </head>
28
+ <body>
29
+ <script type="text/javascript" charset="utf-8">
30
+ if (window.top.frames.main) document.body.className = 'frames';
31
+ </script>
32
+
33
+ <div id="header">
34
+ <div id="menu">
35
+
36
+ <a href="../../_index.html">Index (P)</a> &raquo;
37
+ <span class='title'><span class='object_link'><a href="../../Lims.html" title="Lims (module)">Lims</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Core.html" title="Lims::Core (module)">Core</a></span></span>
38
+ &raquo;
39
+ <span class="title">Persistence</span>
40
+
41
+
42
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
43
+ </div>
44
+
45
+ <div id="search">
46
+
47
+ <a id="class_list_link" href="#">Class List</a>
48
+
49
+ <a id="method_list_link" href="#">Method List</a>
50
+
51
+ <a id="file_list_link" href="#">File List</a>
52
+
53
+ </div>
54
+ <div class="clear"></div>
55
+ </div>
56
+
57
+ <iframe id="search_frame"></iframe>
58
+
59
+ <div id="content"><h1>Module: Lims::Core::Persistence
60
+
61
+
62
+
63
+ </h1>
64
+
65
+ <dl class="box">
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+ <dt class="r1 last">Defined in:</dt>
75
+ <dd class="r1 last">lib/lims-core/persistence.rb<span class="defines">,<br />
76
+ spec/persistence/session_spec.rb,<br /> lib/lims-core/persistence/store.rb,<br /> lib/lims-core/persistence/sequel.rb,<br /> lib/lims-core/persistence/filter.rb,<br /> spec/persistence/message_bus_spec.rb,<br /> lib/lims-core/persistence/session.rb,<br /> lib/lims-core/persistence/uuidable.rb,<br /> spec/persistence/identity_map_spec.rb,<br /> spec/persistence/sequel/store_spec.rb,<br /> spec/persistence/logger/store_spec.rb,<br /> lib/lims-core/persistence/persistor.rb,<br /> spec/persistence/uuid_resource_spec.rb,<br /> lib/lims-core/persistence/state_list.rb,<br /> spec/persistence/sequel/session_spec.rb,<br /> lib/lims-core/persistence/state_group.rb,<br /> lib/lims-core/persistence/message_bus.rb,<br /> lib/lims-core/persistence/sequel/store.rb,<br /> lib/lims-core/persistence/logger/store.rb,<br /> lib/lims-core/persistence/identity_map.rb,<br /> lib/lims-core/persistence/uuid_resource.rb,<br /> lib/lims-core/persistence/logger/session.rb,<br /> lib/lims-core/persistence/sequel/session.rb,<br /> lib/lims-core/persistence/sequel/filters.rb,<br /> lib/lims-core/persistence/resource_state.rb,<br /> lib/lims-core/persistence/logger/persistor.rb,<br /> lib/lims-core/persistence/sequel/persistor.rb,<br /> lib/lims-core/persistence/persistable_trait.rb,<br /> lib/lims-core/persistence/sequel/migrations.rb,<br /> lib/lims-core/persistence/comparison_filter.rb,<br /> lib/lims-core/persistence/search/create_search.rb,<br /> lib/lims-core/persistence/search/create_search.rb,<br /> lib/lims-core/persistence/multi_criteria_filter.rb,<br /> lib/lims-core/persistence/search/search_persistor.rb,<br /> lib/lims-core/persistence/uuid_resource_persistor.rb,<br /> lib/lims-core/persistence/persist_association_trait.rb,<br /> lib/lims-core/persistence/search/search_sequel_persistor.rb</span>
77
+ </dd>
78
+
79
+ </dl>
80
+ <div class="clear"></div>
81
+
82
+ <h2>Overview</h2><div class="docstring">
83
+ <div class="discussion">
84
+
85
+ <p>Generic persistence layer. The main objects are <span class='object_link'><a href="Persistence/Session.html" title="Lims::Core::Persistence::Session (class)">Session</a></span> which is in charge of saving and restoring object and
86
+ <span class='object_link'><a href="Persistence/Store.html" title="Lims::Core::Persistence::Store (class)">Store</a></span> via Persistors. Persistors are mixins specific to each
87
+ persistence types. For example, see the <span class='object_link'><a href="Persistence/Sequel/Persistor.html" title="Lims::Core::Persistence::Sequel::Persistor (module)">Sequel::Persistor</a></span>.</p>
88
+
89
+
90
+ </div>
91
+ </div>
92
+ <div class="tags">
93
+
94
+
95
+ </div><h2>Defined Under Namespace</h2>
96
+ <p class="children">
97
+
98
+
99
+ <strong class="modules">Modules:</strong> <span class='object_link'><a href="Persistence/IdentityMap.html" title="Lims::Core::Persistence::IdentityMap (module)">IdentityMap</a></span>, <span class='object_link'><a href="Persistence/Logger.html" title="Lims::Core::Persistence::Logger (module)">Logger</a></span>, <span class='object_link'><a href="Persistence/PersistAssociationTrait.html" title="Lims::Core::Persistence::PersistAssociationTrait (module)">PersistAssociationTrait</a></span>, <span class='object_link'><a href="Persistence/PersistableTrait.html" title="Lims::Core::Persistence::PersistableTrait (module)">PersistableTrait</a></span>, <span class='object_link'><a href="Persistence/PersistorTrait.html" title="Lims::Core::Persistence::PersistorTrait (module)">PersistorTrait</a></span>, <span class='object_link'><a href="Persistence/Sequel.html" title="Lims::Core::Persistence::Sequel (module)">Sequel</a></span>, <span class='object_link'><a href="Persistence/Uuidable.html" title="Lims::Core::Persistence::Uuidable (module)">Uuidable</a></span>
100
+
101
+
102
+
103
+ <strong class="classes">Classes:</strong> <span class='object_link'><a href="Persistence/ComparisonFilter.html" title="Lims::Core::Persistence::ComparisonFilter (class)">ComparisonFilter</a></span>, <span class='object_link'><a href="Persistence/Filter.html" title="Lims::Core::Persistence::Filter (class)">Filter</a></span>, <span class='object_link'><a href="Persistence/IdentityMapClass.html" title="Lims::Core::Persistence::IdentityMapClass (class)">IdentityMapClass</a></span>, <span class='object_link'><a href="Persistence/MessageBus.html" title="Lims::Core::Persistence::MessageBus (class)">MessageBus</a></span>, <span class='object_link'><a href="Persistence/MultiCriteriaFilter.html" title="Lims::Core::Persistence::MultiCriteriaFilter (class)">MultiCriteriaFilter</a></span>, <span class='object_link'><a href="Persistence/Persistor.html" title="Lims::Core::Persistence::Persistor (class)">Persistor</a></span>, <span class='object_link'><a href="Persistence/ResourceState.html" title="Lims::Core::Persistence::ResourceState (class)">ResourceState</a></span>, <span class='object_link'><a href="Persistence/Search.html" title="Lims::Core::Persistence::Search (class)">Search</a></span>, <span class='object_link'><a href="Persistence/Session.html" title="Lims::Core::Persistence::Session (class)">Session</a></span>, <span class='object_link'><a href="Persistence/StateGroup.html" title="Lims::Core::Persistence::StateGroup (class)">StateGroup</a></span>, <span class='object_link'><a href="Persistence/StateList.html" title="Lims::Core::Persistence::StateList (class)">StateList</a></span>, <span class='object_link'><a href="Persistence/Store.html" title="Lims::Core::Persistence::Store (class)">Store</a></span>, <span class='object_link'><a href="Persistence/UuidResource.html" title="Lims::Core::Persistence::UuidResource (class)">UuidResource</a></span>
104
+
105
+
106
+ </p>
107
+
108
+
109
+
110
+
111
+
112
+
113
+ <h2>
114
+ Class Method Summary
115
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
116
+ </h2>
117
+
118
+ <ul class="summary">
119
+
120
+ <li class="public ">
121
+ <span class="summary_signature">
122
+
123
+ <a href="#initialized_with_a_logger-class_method" title="initialized_with_a_logger (class method)">+ (Object) <strong>initialized_with_a_logger</strong>(method) </a>
124
+
125
+
126
+
127
+ </span>
128
+
129
+
130
+
131
+
132
+
133
+
134
+
135
+
136
+ <span class="summary_desc"><div class='inline'></div></span>
137
+
138
+ </li>
139
+
140
+
141
+ <li class="public ">
142
+ <span class="summary_signature">
143
+
144
+ <a href="#initialized_with_an_IO-class_method" title="initialized_with_an_IO (class method)">+ (Object) <strong>initialized_with_an_IO</strong>(io) </a>
145
+
146
+
147
+
148
+ </span>
149
+
150
+
151
+
152
+
153
+
154
+
155
+
156
+
157
+ <span class="summary_desc"><div class='inline'></div></span>
158
+
159
+ </li>
160
+
161
+
162
+ </ul>
163
+
164
+
165
+
166
+
167
+ <div id="class_method_details" class="method_details_list">
168
+ <h2>Class Method Details</h2>
169
+
170
+
171
+ <div class="method_details first">
172
+ <p class="signature first" id="initialized_with_a_logger-class_method">
173
+
174
+ + (<tt><span class='object_link'><a href="../../Object.html" title="Object (class)">Object</a></span></tt>) <strong>initialized_with_a_logger</strong>(method)
175
+
176
+
177
+
178
+ </p><table class="source_code">
179
+ <tr>
180
+ <td>
181
+ <pre class="lines">
182
+
183
+
184
+ 18
185
+ 19
186
+ 20
187
+ 21
188
+ 22
189
+ 23
190
+ 24
191
+ 25
192
+ 26
193
+ 27
194
+ 28
195
+ 29</pre>
196
+ </td>
197
+ <td>
198
+ <pre class="code"><span class="info file"># File 'spec/persistence/logger/store_spec.rb', line 18</span>
199
+
200
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id initialized_with_a_logger'>initialized_with_a_logger</span><span class='lparen'>(</span><span class='id method'>method</span><span class='rparen'>)</span>
201
+ <span class='id context'>context</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>initialized with a logger</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>do</span>
202
+ <span class='id let'>let</span> <span class='lparen'>(</span><span class='symbol'>:logger</span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='op'>::</span><span class='const'>Logger</span><span class='period'>.</span><span class='id new'>new</span><span class='lparen'>(</span><span class='gvar'>$stdout</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
203
+ <span class='id subject'>subject</span> <span class='lbrace'>{</span> <span class='id described_class'>described_class</span><span class='period'>.</span><span class='id new'>new</span><span class='lparen'>(</span><span class='id logger'>logger</span><span class='comma'>,</span> <span class='id method'>method</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
204
+ <span class='id it'>it</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>should log objects to stdout</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>do</span>
205
+ <span class='id logger'>logger</span><span class='period'>.</span><span class='id should_receive'>should_receive</span><span class='lparen'>(</span><span class='symbol'>:send</span><span class='rparen'>)</span><span class='period'>.</span><span class='id with'>with</span><span class='lparen'>(</span><span class='id method'>method</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>[&quot;A1&quot;, &quot;A2&quot;, &quot;B1&quot;, &quot;B2&quot;]</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
206
+ <span class='id subject'>subject</span><span class='period'>.</span><span class='id with_session'>with_session</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id session'>session</span><span class='op'>|</span>
207
+ <span class='id session'>session</span> <span class='op'>&lt;&lt;</span> <span class='qwords_beg'>%w(</span><span class='tstring_content'>A1</span><span class='words_sep'> </span><span class='tstring_content'>A2</span><span class='words_sep'> </span><span class='tstring_content'>B1</span><span class='words_sep'> </span><span class='tstring_content'>B2</span><span class='words_sep'>)</span>
208
+ <span class='kw'>end</span>
209
+ <span class='kw'>end</span>
210
+ <span class='kw'>end</span>
211
+ <span class='kw'>end</span></pre>
212
+ </td>
213
+ </tr>
214
+ </table>
215
+ </div>
216
+
217
+ <div class="method_details ">
218
+ <p class="signature " id="initialized_with_an_IO-class_method">
219
+
220
+ + (<tt><span class='object_link'><a href="../../Object.html" title="Object (class)">Object</a></span></tt>) <strong>initialized_with_an_IO</strong>(io)
221
+
222
+
223
+
224
+ </p><table class="source_code">
225
+ <tr>
226
+ <td>
227
+ <pre class="lines">
228
+
229
+
230
+ 30
231
+ 31
232
+ 32
233
+ 33
234
+ 34
235
+ 35
236
+ 36
237
+ 37
238
+ 38
239
+ 39
240
+ 40</pre>
241
+ </td>
242
+ <td>
243
+ <pre class="code"><span class="info file"># File 'spec/persistence/logger/store_spec.rb', line 30</span>
244
+
245
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id initialized_with_an_IO'>initialized_with_an_IO</span><span class='lparen'>(</span><span class='id io'>io</span><span class='rparen'>)</span>
246
+ <span class='id context'>context</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>initialized to stdout</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>do</span>
247
+ <span class='id subject'>subject</span> <span class='lbrace'>{</span> <span class='id described_class'>described_class</span><span class='period'>.</span><span class='id new'>new</span><span class='lparen'>(</span><span class='id io'>io</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
248
+ <span class='id it'>it</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>should log objects to stdout</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>do</span>
249
+ <span class='id io'>io</span><span class='period'>.</span><span class='id should_receive'>should_receive</span><span class='lparen'>(</span><span class='symbol'>:write</span><span class='rparen'>)</span>
250
+ <span class='id subject'>subject</span><span class='period'>.</span><span class='id with_session'>with_session</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id session'>session</span><span class='op'>|</span>
251
+ <span class='id session'>session</span> <span class='op'>&lt;&lt;</span> <span class='qwords_beg'>%w(</span><span class='tstring_content'>A1</span><span class='words_sep'> </span><span class='tstring_content'>A2</span><span class='words_sep'> </span><span class='tstring_content'>B1</span><span class='words_sep'> </span><span class='tstring_content'>B2</span><span class='words_sep'>)</span>
252
+ <span class='kw'>end</span>
253
+ <span class='kw'>end</span>
254
+ <span class='kw'>end</span>
255
+ <span class='kw'>end</span></pre>
256
+ </td>
257
+ </tr>
258
+ </table>
259
+ </div>
260
+
261
+ </div>
262
+
263
+ </div>
264
+
265
+
266
+ </body>
267
+ </html>