omf_sfa 0.1.1

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 (152) hide show
  1. data/.gitignore +24 -0
  2. data/Gemfile +6 -0
  3. data/README.md +211 -0
  4. data/Rakefile +23 -0
  5. data/bin/parse_rspec.rb +167 -0
  6. data/etc/omf-sfa/omf-sfa-am.yaml +12 -0
  7. data/examples/exogeni5nodemanifest.rspec +105 -0
  8. data/examples/instageni5nodemanifest.rspec +150 -0
  9. data/lib/omf-sfa/am/am-rest/REST_API.md +301 -0
  10. data/lib/omf-sfa/am/am-rest/account_handler.rb +145 -0
  11. data/lib/omf-sfa/am/am-rest/am_rest_server.rb +255 -0
  12. data/lib/omf-sfa/am/am-rest/api_template.html +48 -0
  13. data/lib/omf-sfa/am/am-rest/config.ru +110 -0
  14. data/lib/omf-sfa/am/am-rest/resource_handler.rb +178 -0
  15. data/lib/omf-sfa/am/am-rest/rest_handler.rb +573 -0
  16. data/lib/omf-sfa/am/am-rest/session_authenticator.rb +130 -0
  17. data/lib/omf-sfa/am/am-rpc/abstract_rpc_service.rb +60 -0
  18. data/lib/omf-sfa/am/am-rpc/am_authorizer.rb +161 -0
  19. data/lib/omf-sfa/am/am-rpc/am_rpc_api.rb +450 -0
  20. data/lib/omf-sfa/am/am-rpc/am_rpc_service.rb +402 -0
  21. data/lib/omf-sfa/am/am_liaison.rb +93 -0
  22. data/lib/omf-sfa/am/am_manager.rb +859 -0
  23. data/lib/omf-sfa/am/am_runner.rb +108 -0
  24. data/lib/omf-sfa/am/am_scheduler.rb +146 -0
  25. data/lib/omf-sfa/am/am_server.rb +194 -0
  26. data/lib/omf-sfa/am/config.ru +122 -0
  27. data/lib/omf-sfa/am/credential.rb +145 -0
  28. data/lib/omf-sfa/am/default_authorizer.rb +44 -0
  29. data/lib/omf-sfa/am/privilege_credential.rb +76 -0
  30. data/lib/omf-sfa/am/signature.rb +37 -0
  31. data/lib/omf-sfa/am/user_credential.rb +56 -0
  32. data/lib/omf-sfa/am.rb +7 -0
  33. data/lib/omf-sfa/model/abstract_prop_description.rb +87 -0
  34. data/lib/omf-sfa/model/model_class_description.rb +145 -0
  35. data/lib/omf-sfa/model/model_data_prop_description.rb +28 -0
  36. data/lib/omf-sfa/model/model_obj_prop_description.rb +49 -0
  37. data/lib/omf-sfa/model/ontology.rb +169 -0
  38. data/lib/omf-sfa/resource/README.md +24 -0
  39. data/lib/omf-sfa/resource/channel.rb +49 -0
  40. data/lib/omf-sfa/resource/comp_group.rb +41 -0
  41. data/lib/omf-sfa/resource/component_lease.rb +10 -0
  42. data/lib/omf-sfa/resource/constants.rb +24 -0
  43. data/lib/omf-sfa/resource/group_component.rb +35 -0
  44. data/lib/omf-sfa/resource/group_membership.rb +17 -0
  45. data/lib/omf-sfa/resource/gurn.rb +187 -0
  46. data/lib/omf-sfa/resource/interface.rb +78 -0
  47. data/lib/omf-sfa/resource/ip.rb +48 -0
  48. data/lib/omf-sfa/resource/link.rb +29 -0
  49. data/lib/omf-sfa/resource/node.rb +75 -0
  50. data/lib/omf-sfa/resource/oaccount.rb +94 -0
  51. data/lib/omf-sfa/resource/ocomponent.rb +134 -0
  52. data/lib/omf-sfa/resource/ogroup.rb +106 -0
  53. data/lib/omf-sfa/resource/olease.rb +61 -0
  54. data/lib/omf-sfa/resource/oproperty.rb +178 -0
  55. data/lib/omf-sfa/resource/oreference.rb +15 -0
  56. data/lib/omf-sfa/resource/oresource.rb +491 -0
  57. data/lib/omf-sfa/resource/project.rb +28 -0
  58. data/lib/omf-sfa/resource/project_membership.rb +13 -0
  59. data/lib/omf-sfa/resource/sfa_base.rb +544 -0
  60. data/lib/omf-sfa/resource/user.rb +25 -0
  61. data/lib/omf-sfa/resource.rb +20 -0
  62. data/lib/omf-sfa/util/create_sample_testbed.rb +68 -0
  63. data/lib/omf-sfa/util/load_from_sfa_xml.rb +65 -0
  64. data/lib/omf-sfa/version.rb +4 -0
  65. data/lib/omf_sfa.rb +5 -0
  66. data/omf_sfa.gemspec +46 -0
  67. data/owl/README +3 -0
  68. data/owl/ben-6509.rdf +1377 -0
  69. data/owl/ben-dell.rdf +586 -0
  70. data/owl/ben-dtn.rdf +1698 -0
  71. data/owl/ben.rdf +1335 -0
  72. data/owl/collections.owl +309 -0
  73. data/owl/compute.owl +1486 -0
  74. data/owl/domain.owl +444 -0
  75. data/owl/dtn.owl +1165 -0
  76. data/owl/ec2.owl +385 -0
  77. data/owl/ethernet.owl +466 -0
  78. data/owl/eucalyptus.owl +431 -0
  79. data/owl/id-mp-Request1.rdf +247 -0
  80. data/owl/itu-grid.owl +147 -0
  81. data/owl/kansei.owl +511 -0
  82. data/owl/layer.owl +645 -0
  83. data/owl/location.owl +117 -0
  84. data/owl/mass.rdf +608 -0
  85. data/owl/nlr.rdf +901 -0
  86. data/owl/orca.owl +181 -0
  87. data/owl/planetlab.owl +124 -0
  88. data/owl/protogeni.owl +467 -0
  89. data/owl/request-6509-2.rdf +150 -0
  90. data/owl/request-6509-3.rdf +158 -0
  91. data/owl/request-6509.rdf +199 -0
  92. data/owl/request.owl +222 -0
  93. data/owl/storage.owl +511 -0
  94. data/owl/topology.owl +608 -0
  95. data/schema/rspec-v3/ad-common.xsd +269 -0
  96. data/schema/rspec-v3/ad-reservation.rnc +12 -0
  97. data/schema/rspec-v3/ad-reservation.rng +28 -0
  98. data/schema/rspec-v3/ad-reservation.xsd +13 -0
  99. data/schema/rspec-v3/ad.rnc +151 -0
  100. data/schema/rspec-v3/ad.xsd +77 -0
  101. data/schema/rspec-v3/any-extension-schema.xsd +38 -0
  102. data/schema/rspec-v3/any-extension.rnc +30 -0
  103. data/schema/rspec-v3/common.rnc +185 -0
  104. data/schema/rspec-v3/manifest-common.xsd +244 -0
  105. data/schema/rspec-v3/manifest-request.xsd +95 -0
  106. data/schema/rspec-v3/manifest.rnc +62 -0
  107. data/schema/rspec-v3/manifest.xsd +34 -0
  108. data/schema/rspec-v3/request-common.xsd +219 -0
  109. data/schema/rspec-v3/request-reservation.rnc +12 -0
  110. data/schema/rspec-v3/request-reservation.xsd +13 -0
  111. data/schema/rspec-v3/request.rnc +118 -0
  112. data/schema/rspec-v3/request.xsd +94 -0
  113. data/share/assets/css/default.css +147 -0
  114. data/share/assets/css/rest_api.css +0 -0
  115. data/share/assets/network.html +28 -0
  116. data/share/assets/network.js +82 -0
  117. data/spec/am/am-rest/common.rb +29 -0
  118. data/spec/am/am-rest/resource_group_handler_XspecX.rb +97 -0
  119. data/spec/am/am-rest/resource_handler_spec.rb +204 -0
  120. data/spec/am/am-rpc/sfa_methods_spec.rb +150 -0
  121. data/spec/am/am_manager_spec.rb +307 -0
  122. data/spec/am/am_scheduler_spec.rb +57 -0
  123. data/spec/am/common.rb +24 -0
  124. data/spec/resource/common.rb +31 -0
  125. data/spec/resource/node_spec.rb +171 -0
  126. data/spec/resource/oaccount_spec.rb +92 -0
  127. data/spec/resource/ocomponent_spec.rb +225 -0
  128. data/spec/resource/ogroup_spec.rb +93 -0
  129. data/spec/resource/oresource_spec.rb +208 -0
  130. data/spec/resource_and_leases_spec.rb +377 -0
  131. data/test/OLD_FILES/assertion1.xml +117 -0
  132. data/test/OLD_FILES/greeter_spec.rb +15 -0
  133. data/test/OLD_FILES/mongo_test.rb +45 -0
  134. data/test/OLD_FILES/req-sfa-2.xml +6 -0
  135. data/test/OLD_FILES/req-sfa-g.xml +8 -0
  136. data/test/OLD_FILES/req-sfa-g2.xml +10 -0
  137. data/test/OLD_FILES/req-sfa-g3.xml +14 -0
  138. data/test/OLD_FILES/req-sfa.xml +6 -0
  139. data/test/OLD_FILES/req1.xml +22 -0
  140. data/test/OLD_FILES/req1b.xml +15 -0
  141. data/test/OLD_FILES/rspec-test.xml +1867 -0
  142. data/test/OLD_FILES/test.rb +67 -0
  143. data/test/OLD_FILES/test2.rb +32 -0
  144. data/test/am/am_manager_rspec_tests.rb +378 -0
  145. data/test/am/am_manager_tests.rb +518 -0
  146. data/test/am/am_scheduler_tests.rb +173 -0
  147. data/test/resource/olease_test.rb +74 -0
  148. data/test/sfa_requests/request.xml +5 -0
  149. data/test/sfa_requests/request1.xml +5 -0
  150. data/test/sfa_requests/request2.xml +5 -0
  151. data/test/sfa_requests/request3.xml +5 -0
  152. metadata +601 -0
@@ -0,0 +1,309 @@
1
+ <?xml version="1.0"?>
2
+
3
+
4
+ <!DOCTYPE rdf:RDF [
5
+ <!ENTITY foaf "http://xmlns.com/foaf/0.1/" >
6
+ <!ENTITY owl "http://www.w3.org/2002/07/owl#" >
7
+ <!ENTITY dc "http://purl.org/dc/elements/1.1/" >
8
+ <!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" >
9
+ <!ENTITY owl2xml "http://www.w3.org/2006/12/owl2-xml#" >
10
+ <!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" >
11
+ <!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
12
+ <!ENTITY collections "http://geni-orca.renci.org/owl/collections.owl" >
13
+ <!ENTITY collections2 "http://geni-orca.renci.org/owl/collections.owl#" >
14
+ ]>
15
+
16
+
17
+ <rdf:RDF xmlns="&collections;#"
18
+ xml:base="http://geni-orca.renci.org/owl/collections.owl"
19
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
20
+ xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
21
+ xmlns:owl2xml="http://www.w3.org/2006/12/owl2-xml#"
22
+ xmlns:foaf="http://xmlns.com/foaf/0.1/"
23
+ xmlns:owl="http://www.w3.org/2002/07/owl#"
24
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
25
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
26
+ xmlns:collections2="&collections;#"
27
+ xmlns:collections="http://geni-orca.renci.org/owl/collections.owl">
28
+ <owl:Ontology rdf:about="">
29
+ <rdfs:label rdf:datatype="&xsd;string"
30
+ >Collections v. 1.2</rdfs:label>
31
+ <owl:versionInfo rdf:datatype="&xsd;string">1.2</owl:versionInfo>
32
+ <dc:date rdf:datatype="&xsd;string"
33
+ >January 14, 2009</dc:date>
34
+ <dc:contributor rdf:datatype="&xsd;string">Marco Ocana</dc:contributor>
35
+ <dc:contributor rdf:datatype="&xsd;string">Paolo Ciccarese</dc:contributor>
36
+ <dc:format rdf:datatype="&xsd;string">rdf/xml</dc:format>
37
+ <dc:language>en</dc:language>
38
+ <dc:title xml:lang="en"
39
+ >Collections ontology</dc:title>
40
+ </owl:Ontology>
41
+
42
+
43
+
44
+ <!--
45
+ ///////////////////////////////////////////////////////////////////////////////////////
46
+ //
47
+ // Annotation properties
48
+ //
49
+ ///////////////////////////////////////////////////////////////////////////////////////
50
+ -->
51
+
52
+ <owl:AnnotationProperty rdf:about="&dc;date"/>
53
+ <owl:AnnotationProperty rdf:about="&dc;publisher"/>
54
+ <owl:AnnotationProperty rdf:about="&dc;title"/>
55
+ <owl:AnnotationProperty rdf:about="&dc;language"/>
56
+ <owl:AnnotationProperty rdf:about="&dc;contributor"/>
57
+ <owl:AnnotationProperty rdf:about="&dc;creator"/>
58
+ <owl:AnnotationProperty rdf:about="&dc;format"/>
59
+
60
+
61
+
62
+ <!--
63
+ ///////////////////////////////////////////////////////////////////////////////////////
64
+ //
65
+ // Object Properties
66
+ //
67
+ ///////////////////////////////////////////////////////////////////////////////////////
68
+ -->
69
+
70
+
71
+
72
+
73
+ <!-- http://geni-orca.renci.org/owl/collections.owl#element -->
74
+
75
+ <owl:ObjectProperty rdf:about="#element">
76
+ <rdfs:comment rdf:datatype="&xsd;string"
77
+ >element - The link to the members of a Set</rdfs:comment>
78
+ <rdfs:domain rdf:resource="#Collection"/>
79
+ </owl:ObjectProperty>
80
+
81
+
82
+
83
+ <!-- http://geni-orca.renci.org/owl/collections.owl#firstItem -->
84
+
85
+ <owl:ObjectProperty rdf:about="#firstItem">
86
+ <rdf:type rdf:resource="&owl;FunctionalProperty"/>
87
+ <rdfs:domain rdf:resource="#List"/>
88
+ <rdfs:range rdf:resource="#ListItem"/>
89
+ <rdfs:subPropertyOf rdf:resource="#item"/>
90
+ </owl:ObjectProperty>
91
+
92
+
93
+
94
+ <!-- http://geni-orca.renci.org/owl/collections.owl#followedBy -->
95
+
96
+ <owl:ObjectProperty rdf:about="#followedBy">
97
+ <rdf:type rdf:resource="&owl;TransitiveProperty"/>
98
+ <rdfs:comment rdf:datatype="&xsd;string"
99
+ >followedBy - The link to the first item of the list</rdfs:comment>
100
+ <rdfs:domain rdf:resource="#ListItem"/>
101
+ <rdfs:range rdf:resource="#ListItem"/>
102
+ </owl:ObjectProperty>
103
+
104
+
105
+
106
+ <!-- http://geni-orca.renci.org/owl/collections.owl#item -->
107
+
108
+ <owl:ObjectProperty rdf:about="#item">
109
+ <rdfs:comment rdf:datatype="&xsd;string"
110
+ >item - The link to every item of the Bag</rdfs:comment>
111
+ <rdfs:domain rdf:resource="#Bag"/>
112
+ <rdfs:range rdf:resource="#Item"/>
113
+ <rdfs:subPropertyOf rdf:resource="#element"/>
114
+ </owl:ObjectProperty>
115
+
116
+
117
+
118
+ <!-- http://geni-orca.renci.org/owl/collections.owl#itemContent -->
119
+
120
+ <owl:ObjectProperty rdf:about="#itemContent">
121
+ <rdf:type rdf:resource="&owl;FunctionalProperty"/>
122
+ <rdfs:comment rdf:datatype="&xsd;string"
123
+ >itemContent - The link to the actual resource to which the item refers.</rdfs:comment>
124
+ <rdfs:domain rdf:resource="#Item"/>
125
+ <rdfs:range>
126
+ <owl:Class>
127
+ <owl:complementOf rdf:resource="#Item"/>
128
+ </owl:Class>
129
+ </rdfs:range>
130
+ </owl:ObjectProperty>
131
+
132
+
133
+
134
+ <!-- http://geni-orca.renci.org/owl/collections.owl#lastItem -->
135
+
136
+ <owl:ObjectProperty rdf:about="#lastItem">
137
+ <rdf:type rdf:resource="&owl;FunctionalProperty"/>
138
+ <rdfs:comment rdf:datatype="&xsd;string"
139
+ >lastItem - The link to the first item of the list</rdfs:comment>
140
+ <rdfs:domain rdf:resource="#List"/>
141
+ <rdfs:range rdf:resource="#ListItem"/>
142
+ <rdfs:subPropertyOf rdf:resource="#item"/>
143
+ </owl:ObjectProperty>
144
+
145
+
146
+
147
+ <!-- http://geni-orca.renci.org/owl/collections.owl#nextItem -->
148
+
149
+ <owl:ObjectProperty rdf:about="#nextItem">
150
+ <rdf:type rdf:resource="&owl;FunctionalProperty"/>
151
+ <rdfs:comment rdf:datatype="&xsd;string"
152
+ >nextItem - The link to the next item in a list (ordered collection)</rdfs:comment>
153
+ <rdfs:subPropertyOf rdf:resource="#followedBy"/>
154
+ </owl:ObjectProperty>
155
+
156
+
157
+
158
+ <!-- http://geni-orca.renci.org/owl/collections.owl#preceededBy -->
159
+
160
+ <owl:ObjectProperty rdf:about="#preceededBy">
161
+ <rdf:type rdf:resource="&owl;TransitiveProperty"/>
162
+ <rdfs:comment rdf:datatype="&xsd;string"
163
+ >preceededBy - The link to the previous item in a list (ordered collection)</rdfs:comment>
164
+ <rdfs:domain rdf:resource="#ListItem"/>
165
+ <rdfs:range rdf:resource="#ListItem"/>
166
+ </owl:ObjectProperty>
167
+
168
+
169
+
170
+ <!-- http://geni-orca.renci.org/owl/collections.owl#previousItem -->
171
+
172
+ <owl:ObjectProperty rdf:about="#previousItem">
173
+ <rdf:type rdf:resource="&owl;FunctionalProperty"/>
174
+ <rdfs:comment rdf:datatype="&xsd;string"
175
+ >previousItem - The link to the previous item in a list (ordered collection)</rdfs:comment>
176
+ <owl:inverseOf rdf:resource="#nextItem"/>
177
+ <rdfs:subPropertyOf rdf:resource="#preceededBy"/>
178
+ </owl:ObjectProperty>
179
+
180
+
181
+
182
+ <!--
183
+ ///////////////////////////////////////////////////////////////////////////////////////
184
+ //
185
+ // Data properties
186
+ //
187
+ ///////////////////////////////////////////////////////////////////////////////////////
188
+ -->
189
+
190
+
191
+
192
+
193
+ <!-- http://geni-orca.renci.org/owl/collections.owl#size -->
194
+
195
+ <owl:DatatypeProperty rdf:about="#size">
196
+ <rdfs:comment rdf:datatype="&xsd;string"
197
+ >size - The number of item belonging to a collection</rdfs:comment>
198
+ <rdfs:domain rdf:resource="#Collection"/>
199
+ <rdfs:range rdf:resource="&xsd;int"/>
200
+ </owl:DatatypeProperty>
201
+
202
+
203
+
204
+ <!--
205
+ ///////////////////////////////////////////////////////////////////////////////////////
206
+ //
207
+ // Classes
208
+ //
209
+ ///////////////////////////////////////////////////////////////////////////////////////
210
+ -->
211
+
212
+
213
+
214
+
215
+ <!-- http://geni-orca.renci.org/owl/collections.owl#Bag -->
216
+
217
+ <owl:Class rdf:about="#Bag">
218
+ <rdfs:label
219
+ >(collections) Bag</rdfs:label>
220
+ <rdfs:subClassOf rdf:resource="#Collection"/>
221
+ <owl:disjointWith rdf:resource="#Set"/>
222
+ <rdfs:comment rdf:datatype="&xsd;string"
223
+ >Bag - Collection that can have a number of copies of each object</rdfs:comment>
224
+ </owl:Class>
225
+
226
+
227
+
228
+ <!-- http://geni-orca.renci.org/owl/collections.owl#Collection -->
229
+
230
+ <owl:Class rdf:about="#Collection">
231
+ <rdfs:label
232
+ >(collections) Collection</rdfs:label>
233
+ <rdfs:subClassOf rdf:resource="&owl;Thing"/>
234
+ <owl:disjointWith rdf:resource="#Item"/>
235
+ <rdfs:comment rdf:datatype="&xsd;string"
236
+ >Collection - A group of objects that can be considered as a whole.</rdfs:comment>
237
+ </owl:Class>
238
+
239
+
240
+
241
+ <!-- http://geni-orca.renci.org/owl/collections.owl#Item -->
242
+
243
+ <owl:Class rdf:about="#Item">
244
+ <rdfs:label
245
+ >(collections) Item</rdfs:label>
246
+ <rdfs:subClassOf rdf:resource="&owl;Thing"/>
247
+ <rdfs:comment rdf:datatype="&xsd;string"
248
+ >Item - Element belonging to a Bag</rdfs:comment>
249
+ </owl:Class>
250
+
251
+
252
+
253
+ <!-- http://geni-orca.renci.org/owl/collections.owl#List -->
254
+
255
+ <owl:Class rdf:about="#List">
256
+ <rdfs:label
257
+ >(collections) List</rdfs:label>
258
+ <rdfs:subClassOf rdf:resource="#Bag"/>
259
+ <rdfs:subClassOf>
260
+ <owl:Restriction>
261
+ <owl:onProperty rdf:resource="#lastItem"/>
262
+ <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
263
+ </owl:Restriction>
264
+ </rdfs:subClassOf>
265
+ <rdfs:subClassOf>
266
+ <owl:Restriction>
267
+ <owl:onProperty rdf:resource="#firstItem"/>
268
+ <owl:maxCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:maxCardinality>
269
+ </owl:Restriction>
270
+ </rdfs:subClassOf>
271
+ <rdfs:comment rdf:datatype="&xsd;string"
272
+ >List - An ordered array of items, that can be present in multiple copies</rdfs:comment>
273
+ </owl:Class>
274
+
275
+
276
+
277
+ <!-- http://geni-orca.renci.org/owl/collections.owl#ListItem -->
278
+
279
+ <owl:Class rdf:about="#ListItem">
280
+ <rdfs:label
281
+ >(collections) ListItem</rdfs:label>
282
+ <rdfs:subClassOf rdf:resource="#Item"/>
283
+ <rdfs:comment rdf:datatype="&xsd;string"
284
+ >ListItem - Element belonging to a list</rdfs:comment>
285
+ </owl:Class>
286
+
287
+
288
+
289
+ <!-- http://geni-orca.renci.org/owl/collections.owl#Set -->
290
+
291
+ <owl:Class rdf:about="#Set">
292
+ <rdfs:label
293
+ >(collections) Set</rdfs:label>
294
+ <rdfs:subClassOf rdf:resource="#Collection"/>
295
+ <rdfs:comment rdf:datatype="&xsd;string"
296
+ >Set - A collection that cannot contain duplicate elements.</rdfs:comment>
297
+ </owl:Class>
298
+
299
+
300
+
301
+ <!-- http://www.w3.org/2002/07/owl#Thing -->
302
+
303
+ <owl:Class rdf:about="&owl;Thing"/>
304
+ </rdf:RDF>
305
+
306
+
307
+
308
+ <!-- Generated by the OWL API (version 2.2.1.1101) http://owlapi.sourceforge.net -->
309
+