puppet 3.6.2 → 3.7.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of puppet might be problematic. Click here for more details.

Files changed (751) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +2 -3
  3. data/Gemfile +14 -10
  4. data/README.md +1 -1
  5. data/ext/build_defaults.yaml +16 -1
  6. data/ext/debian/control +3 -2
  7. data/ext/debian/puppet-common.dirs +1 -0
  8. data/ext/debian/puppet-common.postinst +8 -8
  9. data/ext/debian/puppet-common.postrm +2 -1
  10. data/ext/project_data.yaml +16 -12
  11. data/ext/rack/example-passenger-vhost.conf +2 -2
  12. data/ext/redhat/puppet.spec.erb +6 -3
  13. data/ext/windows/service/daemon.rb +47 -41
  14. data/install.rb +1 -1
  15. data/lib/puppet.rb +34 -24
  16. data/lib/puppet/application.rb +34 -1
  17. data/lib/puppet/application/agent.rb +9 -8
  18. data/lib/puppet/application/apply.rb +14 -5
  19. data/lib/puppet/application/doc.rb +4 -11
  20. data/lib/puppet/application/master.rb +19 -17
  21. data/lib/puppet/application/queue.rb +1 -1
  22. data/lib/puppet/application/resource.rb +0 -1
  23. data/lib/puppet/configurer.rb +39 -2
  24. data/lib/puppet/configurer/downloader.rb +5 -10
  25. data/lib/puppet/configurer/downloader_factory.rb +34 -0
  26. data/lib/puppet/configurer/plugin_handler.rb +11 -17
  27. data/lib/puppet/defaults.rb +244 -119
  28. data/lib/puppet/environments.rb +8 -0
  29. data/lib/puppet/external/nagios/base.rb +1 -1
  30. data/lib/puppet/external/pson/pure/generator.rb +1 -8
  31. data/lib/puppet/face/ca.rb +7 -0
  32. data/lib/puppet/face/file/download.rb +5 -2
  33. data/lib/puppet/face/file/store.rb +1 -1
  34. data/lib/puppet/face/instrumentation_data.rb +2 -1
  35. data/lib/puppet/face/instrumentation_listener.rb +2 -1
  36. data/lib/puppet/face/instrumentation_probe.rb +2 -1
  37. data/lib/puppet/face/module/build.rb +2 -2
  38. data/lib/puppet/face/module/generate.rb +20 -12
  39. data/lib/puppet/face/module/install.rb +4 -3
  40. data/lib/puppet/face/module/uninstall.rb +7 -0
  41. data/lib/puppet/face/module/upgrade.rb +11 -3
  42. data/lib/puppet/face/node/clean.rb +1 -1
  43. data/lib/puppet/face/parser.rb +99 -7
  44. data/lib/puppet/feature/base.rb +18 -12
  45. data/lib/puppet/feature/cfacter.rb +14 -0
  46. data/lib/puppet/feature/pe_license.rb +4 -0
  47. data/lib/puppet/file_bucket/dipper.rb +19 -12
  48. data/lib/puppet/file_bucket/file.rb +73 -10
  49. data/lib/puppet/file_serving/configuration/parser.rb +3 -3
  50. data/lib/puppet/file_system.rb +1 -1
  51. data/lib/puppet/file_system/file19.rb +41 -0
  52. data/lib/puppet/file_system/file19windows.rb +0 -1
  53. data/lib/puppet/file_system/uniquefile.rb +190 -0
  54. data/lib/puppet/forge.rb +34 -7
  55. data/lib/puppet/forge/errors.rb +5 -6
  56. data/lib/puppet/forge/repository.rb +14 -2
  57. data/lib/puppet/functions.rb +19 -12
  58. data/lib/puppet/functions/assert_type.rb +27 -10
  59. data/lib/puppet/functions/each.rb +111 -0
  60. data/lib/puppet/functions/epp.rb +54 -0
  61. data/lib/puppet/functions/filter.rb +113 -0
  62. data/lib/puppet/functions/inline_epp.rb +88 -0
  63. data/lib/puppet/functions/map.rb +97 -0
  64. data/lib/puppet/functions/match.rb +102 -0
  65. data/lib/puppet/functions/reduce.rb +94 -0
  66. data/lib/puppet/functions/slice.rb +126 -0
  67. data/lib/puppet/functions/with.rb +23 -0
  68. data/lib/puppet/indirector/catalog/compiler.rb +4 -4
  69. data/lib/puppet/indirector/data_binding/hiera.rb +2 -45
  70. data/lib/puppet/indirector/facts/couch.rb +3 -1
  71. data/lib/puppet/indirector/facts/facter.rb +52 -65
  72. data/lib/puppet/indirector/file_bucket_file/file.rb +6 -3
  73. data/lib/puppet/indirector/hiera.rb +48 -0
  74. data/lib/puppet/indirector/indirection.rb +1 -1
  75. data/lib/puppet/indirector/request.rb +9 -3
  76. data/lib/puppet/indirector/resource/ral.rb +1 -1
  77. data/lib/puppet/indirector/rest.rb +7 -3
  78. data/lib/puppet/loaders.rb +0 -1
  79. data/lib/puppet/module.rb +2 -1
  80. data/lib/puppet/module_tool.rb +2 -0
  81. data/lib/puppet/module_tool/applications/application.rb +4 -5
  82. data/lib/puppet/module_tool/applications/builder.rb +64 -5
  83. data/lib/puppet/module_tool/applications/uninstaller.rb +3 -2
  84. data/lib/puppet/module_tool/applications/unpacker.rb +14 -0
  85. data/lib/puppet/module_tool/applications/upgrader.rb +23 -13
  86. data/lib/puppet/module_tool/dependency.rb +12 -0
  87. data/lib/puppet/module_tool/errors/shared.rb +1 -1
  88. data/lib/puppet/module_tool/errors/upgrader.rb +20 -0
  89. data/lib/puppet/module_tool/installed_modules.rb +6 -1
  90. data/lib/puppet/module_tool/metadata.rb +53 -3
  91. data/lib/puppet/module_tool/modulefile.rb +1 -1
  92. data/lib/puppet/module_tool/skeleton/templates/generator/Gemfile +7 -0
  93. data/lib/puppet/module_tool/skeleton/templates/generator/manifests/init.pp.erb +1 -1
  94. data/lib/puppet/module_tool/skeleton/templates/generator/spec/spec_helper.rb +1 -17
  95. data/lib/puppet/module_tool/tar/mini.rb +20 -2
  96. data/lib/puppet/network/http.rb +5 -0
  97. data/lib/puppet/network/http/api/v1.rb +2 -2
  98. data/lib/puppet/network/http/api/v2/environments.rb +15 -1
  99. data/lib/puppet/network/http/connection.rb +54 -68
  100. data/lib/puppet/network/http/factory.rb +44 -0
  101. data/lib/puppet/network/http/handler.rb +12 -6
  102. data/lib/puppet/network/http/nocache_pool.rb +21 -0
  103. data/lib/puppet/network/http/pool.rb +120 -0
  104. data/lib/puppet/network/http/rack/rest.rb +3 -1
  105. data/lib/puppet/network/http/session.rb +17 -0
  106. data/lib/puppet/network/http/site.rb +39 -0
  107. data/lib/puppet/network/http/webrick/rest.rb +3 -1
  108. data/lib/puppet/network/http_pool.rb +3 -4
  109. data/lib/puppet/node.rb +19 -6
  110. data/lib/puppet/node/environment.rb +34 -8
  111. data/lib/puppet/parser/ast/collection.rb +4 -0
  112. data/lib/puppet/parser/ast/collexpr.rb +1 -1
  113. data/lib/puppet/parser/ast/node.rb +5 -0
  114. data/lib/puppet/parser/ast/pops_bridge.rb +49 -6
  115. data/lib/puppet/parser/compiler.rb +66 -38
  116. data/lib/puppet/parser/e4_parser_adapter.rb +2 -2
  117. data/lib/puppet/parser/files.rb +76 -33
  118. data/lib/puppet/parser/functions.rb +1 -7
  119. data/lib/puppet/parser/functions/assert_type.rb +31 -0
  120. data/lib/puppet/parser/functions/contain.rb +15 -5
  121. data/lib/puppet/parser/functions/create_resources.rb +5 -1
  122. data/lib/puppet/parser/functions/digest.rb +5 -0
  123. data/lib/puppet/parser/functions/each.rb +46 -107
  124. data/lib/puppet/parser/functions/epp.rb +13 -9
  125. data/lib/puppet/parser/functions/file.rb +20 -12
  126. data/lib/puppet/parser/functions/filter.rb +32 -88
  127. data/lib/puppet/parser/functions/include.rb +12 -24
  128. data/lib/puppet/parser/functions/inline_epp.rb +9 -12
  129. data/lib/puppet/parser/functions/lookup.rb +1 -1
  130. data/lib/puppet/parser/functions/map.rb +30 -83
  131. data/lib/puppet/parser/functions/match.rb +28 -0
  132. data/lib/puppet/parser/functions/reduce.rb +69 -98
  133. data/lib/puppet/parser/functions/require.rb +13 -5
  134. data/lib/puppet/parser/functions/search.rb +6 -1
  135. data/lib/puppet/parser/functions/slice.rb +35 -103
  136. data/lib/puppet/parser/functions/template.rb +12 -5
  137. data/lib/puppet/parser/functions/with.rb +21 -0
  138. data/lib/puppet/parser/lexer.rb +1 -1
  139. data/lib/puppet/parser/parser_factory.rb +21 -33
  140. data/lib/puppet/parser/resource.rb +2 -3
  141. data/lib/puppet/parser/scope.rb +85 -15
  142. data/lib/puppet/pops.rb +9 -11
  143. data/lib/puppet/pops/adapters.rb +2 -1
  144. data/lib/puppet/pops/binder/bindings_checker.rb +4 -4
  145. data/lib/puppet/pops/binder/bindings_factory.rb +6 -6
  146. data/lib/puppet/pops/binder/bindings_label_provider.rb +1 -1
  147. data/lib/puppet/pops/binder/bindings_loader.rb +2 -2
  148. data/lib/puppet/pops/binder/bindings_model.rb +58 -191
  149. data/lib/puppet/pops/binder/bindings_model_dumper.rb +1 -1
  150. data/lib/puppet/pops/binder/bindings_model_meta.rb +215 -0
  151. data/lib/puppet/pops/binder/injector.rb +9 -9
  152. data/lib/puppet/pops/binder/key_factory.rb +2 -2
  153. data/lib/puppet/pops/binder/lookup.rb +14 -6
  154. data/lib/puppet/pops/binder/producers.rb +9 -12
  155. data/lib/puppet/pops/evaluator/access_operator.rb +35 -29
  156. data/lib/puppet/pops/evaluator/callable_mismatch_describer.rb +175 -0
  157. data/lib/puppet/pops/evaluator/callable_signature.rb +1 -2
  158. data/lib/puppet/pops/evaluator/closure.rb +151 -35
  159. data/lib/puppet/pops/evaluator/compare_operator.rb +26 -22
  160. data/lib/puppet/pops/evaluator/epp_evaluator.rb +16 -15
  161. data/lib/puppet/pops/evaluator/evaluator_impl.rb +277 -229
  162. data/lib/puppet/pops/evaluator/relationship_operator.rb +3 -2
  163. data/lib/puppet/pops/evaluator/runtime3_support.rb +86 -53
  164. data/lib/puppet/pops/functions/dispatch.rb +9 -4
  165. data/lib/puppet/pops/functions/dispatcher.rb +2 -169
  166. data/lib/puppet/pops/issue_reporter.rb +14 -6
  167. data/lib/puppet/pops/issues.rb +96 -21
  168. data/lib/puppet/pops/loader/base_loader.rb +3 -3
  169. data/lib/puppet/pops/loader/loader.rb +1 -1
  170. data/lib/puppet/pops/loader/loader_paths.rb +2 -21
  171. data/lib/puppet/pops/loader/ruby_function_instantiator.rb +1 -1
  172. data/lib/puppet/pops/loader/static_loader.rb +12 -2
  173. data/lib/puppet/pops/model/ast_transformer.rb +4 -24
  174. data/lib/puppet/pops/model/factory.rb +72 -10
  175. data/lib/puppet/pops/model/model.rb +82 -574
  176. data/lib/puppet/pops/model/model_label_provider.rb +4 -2
  177. data/lib/puppet/pops/model/model_meta.rb +576 -0
  178. data/lib/puppet/pops/model/model_tree_dumper.rb +27 -5
  179. data/lib/puppet/pops/parser/egrammar.ra +209 -221
  180. data/lib/puppet/pops/parser/eparser.rb +1459 -1431
  181. data/lib/puppet/pops/parser/evaluating_parser.rb +15 -75
  182. data/lib/puppet/pops/parser/lexer2.rb +14 -10
  183. data/lib/puppet/pops/parser/lexer_support.rb +6 -0
  184. data/lib/puppet/pops/parser/locator.rb +1 -1
  185. data/lib/puppet/pops/parser/parser_support.rb +31 -49
  186. data/lib/puppet/pops/patterns.rb +10 -10
  187. data/lib/puppet/pops/semantic_error.rb +1 -1
  188. data/lib/puppet/pops/types/class_loader.rb +24 -13
  189. data/lib/puppet/pops/types/type_calculator.rb +188 -87
  190. data/lib/puppet/pops/types/type_factory.rb +79 -53
  191. data/lib/puppet/pops/types/type_parser.rb +22 -16
  192. data/lib/puppet/pops/types/types.rb +283 -392
  193. data/lib/puppet/pops/types/types_meta.rb +223 -0
  194. data/lib/puppet/pops/utils.rb +16 -14
  195. data/lib/puppet/pops/validation/checker4_0.rb +264 -18
  196. data/lib/puppet/pops/validation/validator_factory_4_0.rb +0 -1
  197. data/lib/puppet/pops/visitor.rb +0 -103
  198. data/lib/puppet/provider/exec.rb +10 -1
  199. data/lib/puppet/provider/file/windows.rb +3 -4
  200. data/lib/puppet/provider/group/windows_adsi.rb +10 -10
  201. data/lib/puppet/provider/nameservice/directoryservice.rb +3 -4
  202. data/lib/puppet/provider/package/apt.rb +5 -1
  203. data/lib/puppet/provider/package/gem.rb +7 -3
  204. data/lib/puppet/provider/package/openbsd.rb +84 -7
  205. data/lib/puppet/provider/package/pacman.rb +29 -4
  206. data/lib/puppet/provider/package/rpm.rb +5 -7
  207. data/lib/puppet/provider/package/sun.rb +5 -1
  208. data/lib/puppet/provider/package/windows.rb +6 -1
  209. data/lib/puppet/provider/package/windows/exe_package.rb +1 -1
  210. data/lib/puppet/provider/package/windows/msi_package.rb +1 -1
  211. data/lib/puppet/provider/package/windows/package.rb +13 -1
  212. data/lib/puppet/provider/package/yum.rb +7 -3
  213. data/lib/puppet/provider/package/zypper.rb +5 -1
  214. data/lib/puppet/provider/parsedfile.rb +17 -1
  215. data/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +6 -12
  216. data/lib/puppet/provider/service/freebsd.rb +12 -12
  217. data/lib/puppet/provider/service/init.rb +5 -0
  218. data/lib/puppet/provider/service/launchd.rb +0 -3
  219. data/lib/puppet/provider/service/openbsd.rb +8 -7
  220. data/lib/puppet/provider/ssh_authorized_key/parsed.rb +2 -2
  221. data/lib/puppet/provider/sshkey/parsed.rb +5 -0
  222. data/lib/puppet/provider/user/user_role_add.rb +5 -4
  223. data/lib/puppet/provider/user/windows_adsi.rb +8 -8
  224. data/lib/puppet/provider/zone/solaris.rb +1 -1
  225. data/lib/puppet/reference/metaparameter.rb +8 -6
  226. data/lib/puppet/reports/store.rb +4 -9
  227. data/lib/puppet/resource.rb +75 -11
  228. data/lib/puppet/resource/catalog.rb +9 -7
  229. data/lib/puppet/resource/type.rb +27 -0
  230. data/lib/puppet/settings.rb +61 -41
  231. data/lib/puppet/settings/base_setting.rb +9 -3
  232. data/lib/puppet/settings/environment_conf.rb +32 -4
  233. data/lib/puppet/settings/file_setting.rb +9 -1
  234. data/lib/puppet/settings/priority_setting.rb +5 -5
  235. data/lib/puppet/ssl.rb +1 -0
  236. data/lib/puppet/ssl/certificate_authority.rb +15 -6
  237. data/lib/puppet/ssl/certificate_authority/autosign_command.rb +2 -1
  238. data/lib/puppet/ssl/host.rb +3 -2
  239. data/lib/puppet/ssl/inventory.rb +11 -6
  240. data/lib/puppet/ssl/validator/default_validator.rb +1 -0
  241. data/lib/puppet/ssl/validator/no_validator.rb +3 -0
  242. data/lib/puppet/transaction.rb +29 -0
  243. data/lib/puppet/transaction/resource_harness.rb +16 -3
  244. data/lib/puppet/type.rb +71 -49
  245. data/lib/puppet/type/exec.rb +36 -8
  246. data/lib/puppet/type/file.rb +56 -16
  247. data/lib/puppet/type/file/content.rb +3 -3
  248. data/lib/puppet/type/file/mode.rb +12 -3
  249. data/lib/puppet/type/file/source.rb +4 -1
  250. data/lib/puppet/type/group.rb +1 -1
  251. data/lib/puppet/type/mount.rb +1 -3
  252. data/lib/puppet/type/resources.rb +59 -35
  253. data/lib/puppet/type/ssh_authorized_key.rb +54 -16
  254. data/lib/puppet/type/sshkey.rb +1 -1
  255. data/lib/puppet/type/user.rb +17 -11
  256. data/lib/puppet/type/yumrepo.rb +59 -8
  257. data/lib/puppet/type/zone.rb +3 -6
  258. data/lib/puppet/util.rb +64 -55
  259. data/lib/puppet/util/autoload.rb +2 -2
  260. data/lib/puppet/util/colors.rb +61 -19
  261. data/lib/puppet/util/command_line.rb +21 -4
  262. data/lib/puppet/util/execution.rb +41 -29
  263. data/lib/puppet/util/feature.rb +15 -4
  264. data/lib/puppet/util/filetype.rb +6 -2
  265. data/lib/puppet/util/http_proxy.rb +29 -2
  266. data/lib/puppet/util/lockfile.rb +1 -1
  267. data/lib/puppet/util/log/destinations.rb +7 -3
  268. data/lib/puppet/util/logging.rb +44 -14
  269. data/lib/puppet/util/pidlock.rb +11 -5
  270. data/lib/puppet/util/posix.rb +21 -31
  271. data/lib/puppet/util/profiler.rb +17 -9
  272. data/lib/puppet/util/profiler/aggregate.rb +85 -0
  273. data/lib/puppet/util/profiler/around_profiler.rb +67 -0
  274. data/lib/puppet/util/profiler/logging.rb +12 -11
  275. data/lib/puppet/util/profiler/wall_clock.rb +7 -6
  276. data/lib/puppet/util/rdoc.rb +8 -1
  277. data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +1 -1
  278. data/lib/puppet/util/suidmanager.rb +1 -8
  279. data/lib/puppet/util/windows.rb +14 -3
  280. data/lib/puppet/util/windows/access_control_list.rb +4 -4
  281. data/lib/puppet/util/{adsi.rb → windows/adsi.rb} +99 -37
  282. data/lib/puppet/util/windows/api_types.rb +255 -0
  283. data/lib/puppet/util/windows/com.rb +224 -0
  284. data/lib/puppet/util/windows/error.rb +72 -5
  285. data/lib/puppet/util/windows/file.rb +254 -132
  286. data/lib/puppet/util/windows/process.rb +293 -177
  287. data/lib/puppet/util/windows/registry.rb +12 -2
  288. data/lib/puppet/util/windows/root_certs.rb +16 -9
  289. data/lib/puppet/util/windows/security.rb +501 -232
  290. data/lib/puppet/util/windows/sid.rb +80 -36
  291. data/lib/puppet/util/windows/string.rb +2 -0
  292. data/lib/puppet/util/windows/taskscheduler.rb +1241 -0
  293. data/lib/puppet/util/windows/user.rb +241 -57
  294. data/lib/puppet/vendor.rb +3 -1
  295. data/lib/puppet/vendor/load_pathspec.rb +1 -0
  296. data/lib/puppet/vendor/load_rgen.rb +1 -0
  297. data/lib/puppet/vendor/pathspec/CHANGELOG.md +2 -0
  298. data/lib/puppet/vendor/pathspec/LICENSE +201 -0
  299. data/lib/puppet/vendor/pathspec/PUPPET_README.md +6 -0
  300. data/lib/puppet/vendor/pathspec/README.md +53 -0
  301. data/lib/puppet/vendor/pathspec/lib/pathspec.rb +121 -0
  302. data/lib/puppet/vendor/pathspec/lib/pathspec/gitignorespec.rb +275 -0
  303. data/lib/puppet/vendor/pathspec/lib/pathspec/regexspec.rb +17 -0
  304. data/lib/puppet/vendor/pathspec/lib/pathspec/spec.rb +14 -0
  305. data/lib/puppet/vendor/require_vendored.rb +2 -0
  306. data/lib/puppet/vendor/rgen/CHANGELOG +197 -0
  307. data/lib/puppet/vendor/rgen/MIT-LICENSE +20 -0
  308. data/lib/puppet/vendor/rgen/PUPPET_README.md +6 -0
  309. data/lib/puppet/vendor/rgen/README.rdoc +78 -0
  310. data/lib/puppet/vendor/rgen/Rakefile +41 -0
  311. data/lib/puppet/vendor/rgen/TODO +41 -0
  312. data/lib/puppet/vendor/rgen/anounce.txt +61 -0
  313. data/lib/puppet/vendor/rgen/design_rationale.txt +71 -0
  314. data/lib/puppet/vendor/rgen/lib/ea_support/ea_support.rb +54 -0
  315. data/lib/puppet/vendor/rgen/lib/ea_support/id_store.rb +32 -0
  316. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_ea_metamodel.rb +562 -0
  317. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_ea_metamodel_ext.rb +45 -0
  318. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_ea_metamodel_generator.rb +43 -0
  319. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_ea_to_uml13.rb +103 -0
  320. data/lib/puppet/vendor/rgen/lib/ea_support/uml13_to_uml13_ea.rb +89 -0
  321. data/lib/puppet/vendor/rgen/lib/metamodels/uml13_metamodel.rb +559 -0
  322. data/lib/puppet/vendor/rgen/lib/metamodels/uml13_metamodel_ext.rb +26 -0
  323. data/lib/puppet/vendor/rgen/lib/mmgen/metamodel_generator.rb +20 -0
  324. data/lib/puppet/vendor/rgen/lib/mmgen/mm_ext/ecore_mmgen_ext.rb +91 -0
  325. data/lib/puppet/vendor/rgen/lib/mmgen/mmgen.rb +28 -0
  326. data/lib/puppet/vendor/rgen/lib/mmgen/templates/annotations.tpl +37 -0
  327. data/lib/puppet/vendor/rgen/lib/mmgen/templates/metamodel_generator.tpl +172 -0
  328. data/lib/puppet/vendor/rgen/lib/rgen/array_extensions.rb +45 -0
  329. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore.rb +218 -0
  330. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore_builder_methods.rb +81 -0
  331. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore_ext.rb +69 -0
  332. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore_interface.rb +47 -0
  333. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ecore_to_ruby.rb +167 -0
  334. data/lib/puppet/vendor/rgen/lib/rgen/ecore/ruby_to_ecore.rb +91 -0
  335. data/lib/puppet/vendor/rgen/lib/rgen/environment.rb +129 -0
  336. data/lib/puppet/vendor/rgen/lib/rgen/fragment/dump_file_cache.rb +63 -0
  337. data/lib/puppet/vendor/rgen/lib/rgen/fragment/fragmented_model.rb +140 -0
  338. data/lib/puppet/vendor/rgen/lib/rgen/fragment/model_fragment.rb +289 -0
  339. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/abstract_instantiator.rb +66 -0
  340. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/abstract_xml_instantiator.rb +66 -0
  341. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/default_xml_instantiator.rb +117 -0
  342. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/ecore_xml_instantiator.rb +169 -0
  343. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/json_instantiator.rb +126 -0
  344. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/json_parser.rb +331 -0
  345. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/json_parser.y +94 -0
  346. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/nodebased_xml_instantiator.rb +137 -0
  347. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/qualified_name_resolver.rb +97 -0
  348. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/reference_resolver.rb +128 -0
  349. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/resolution_helper.rb +47 -0
  350. data/lib/puppet/vendor/rgen/lib/rgen/instantiator/xmi11_instantiator.rb +168 -0
  351. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder.rb +224 -0
  352. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/builder_extensions.rb +556 -0
  353. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/builder_runtime.rb +174 -0
  354. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/constant_order_helper.rb +89 -0
  355. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/data_types.rb +77 -0
  356. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/intermediate/annotation.rb +30 -0
  357. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/intermediate/feature.rb +168 -0
  358. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/mm_multiple.rb +23 -0
  359. data/lib/puppet/vendor/rgen/lib/rgen/metamodel_builder/module_extension.rb +42 -0
  360. data/lib/puppet/vendor/rgen/lib/rgen/model_builder.rb +32 -0
  361. data/lib/puppet/vendor/rgen/lib/rgen/model_builder/builder_context.rb +334 -0
  362. data/lib/puppet/vendor/rgen/lib/rgen/model_builder/model_serializer.rb +225 -0
  363. data/lib/puppet/vendor/rgen/lib/rgen/model_builder/reference_resolver.rb +156 -0
  364. data/lib/puppet/vendor/rgen/lib/rgen/serializer/json_serializer.rb +121 -0
  365. data/lib/puppet/vendor/rgen/lib/rgen/serializer/opposite_reference_filter.rb +18 -0
  366. data/lib/puppet/vendor/rgen/lib/rgen/serializer/qualified_name_provider.rb +47 -0
  367. data/lib/puppet/vendor/rgen/lib/rgen/serializer/xmi11_serializer.rb +116 -0
  368. data/lib/puppet/vendor/rgen/lib/rgen/serializer/xmi20_serializer.rb +71 -0
  369. data/lib/puppet/vendor/rgen/lib/rgen/serializer/xml_serializer.rb +98 -0
  370. data/lib/puppet/vendor/rgen/lib/rgen/template_language.rb +297 -0
  371. data/lib/puppet/vendor/rgen/lib/rgen/template_language/directory_template_container.rb +83 -0
  372. data/lib/puppet/vendor/rgen/lib/rgen/template_language/output_handler.rb +87 -0
  373. data/lib/puppet/vendor/rgen/lib/rgen/template_language/template_container.rb +234 -0
  374. data/lib/puppet/vendor/rgen/lib/rgen/template_language/template_helper.rb +26 -0
  375. data/lib/puppet/vendor/rgen/lib/rgen/transformer.rb +475 -0
  376. data/lib/puppet/vendor/rgen/lib/rgen/util/auto_class_creator.rb +61 -0
  377. data/lib/puppet/vendor/rgen/lib/rgen/util/cached_glob.rb +67 -0
  378. data/lib/puppet/vendor/rgen/lib/rgen/util/file_cache_map.rb +124 -0
  379. data/lib/puppet/vendor/rgen/lib/rgen/util/file_change_detector.rb +84 -0
  380. data/lib/puppet/vendor/rgen/lib/rgen/util/method_delegation.rb +114 -0
  381. data/lib/puppet/vendor/rgen/lib/rgen/util/model_comparator.rb +68 -0
  382. data/lib/puppet/vendor/rgen/lib/rgen/util/model_comparator_base.rb +142 -0
  383. data/lib/puppet/vendor/rgen/lib/rgen/util/model_dumper.rb +29 -0
  384. data/lib/puppet/vendor/rgen/lib/rgen/util/name_helper.rb +42 -0
  385. data/lib/puppet/vendor/rgen/lib/rgen/util/pattern_matcher.rb +329 -0
  386. data/lib/puppet/vendor/rgen/lib/transformers/ecore_to_uml13.rb +79 -0
  387. data/lib/puppet/vendor/rgen/lib/transformers/uml13_to_ecore.rb +127 -0
  388. data/lib/puppet/vendor/rgen/test/array_extensions_test.rb +64 -0
  389. data/lib/puppet/vendor/rgen/test/ea_instantiator_test.rb +35 -0
  390. data/lib/puppet/vendor/rgen/test/ea_serializer_test.rb +23 -0
  391. data/lib/puppet/vendor/rgen/test/ecore_self_test.rb +54 -0
  392. data/lib/puppet/vendor/rgen/test/environment_test.rb +90 -0
  393. data/lib/puppet/vendor/rgen/test/json_test.rb +171 -0
  394. data/lib/puppet/vendor/rgen/test/metamodel_builder_test.rb +1482 -0
  395. data/lib/puppet/vendor/rgen/test/metamodel_from_ecore_test.rb +57 -0
  396. data/lib/puppet/vendor/rgen/test/metamodel_order_test.rb +131 -0
  397. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test.rb +98 -0
  398. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test/TestModel.rb +70 -0
  399. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test/houseMetamodel.ecore +42 -0
  400. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test/houseMetamodel_from_ecore.rb +44 -0
  401. data/lib/puppet/vendor/rgen/test/metamodel_roundtrip_test/using_builtin_types.ecore +9 -0
  402. data/lib/puppet/vendor/rgen/test/method_delegation_test.rb +178 -0
  403. data/lib/puppet/vendor/rgen/test/model_builder/builder_context_test.rb +59 -0
  404. data/lib/puppet/vendor/rgen/test/model_builder/builder_test.rb +242 -0
  405. data/lib/puppet/vendor/rgen/test/model_builder/ecore_original.rb +163 -0
  406. data/lib/puppet/vendor/rgen/test/model_builder/ecore_original_regenerated.rb +163 -0
  407. data/lib/puppet/vendor/rgen/test/model_builder/reference_resolver_test.rb +156 -0
  408. data/lib/puppet/vendor/rgen/test/model_builder/serializer_test.rb +94 -0
  409. data/lib/puppet/vendor/rgen/test/model_builder/statemachine_metamodel.rb +42 -0
  410. data/lib/puppet/vendor/rgen/test/model_builder/test_model/statemachine1.rb +23 -0
  411. data/lib/puppet/vendor/rgen/test/model_builder_test.rb +6 -0
  412. data/lib/puppet/vendor/rgen/test/model_fragment_test.rb +30 -0
  413. data/lib/puppet/vendor/rgen/test/output_handler_test.rb +58 -0
  414. data/lib/puppet/vendor/rgen/test/qualified_name_provider_test.rb +48 -0
  415. data/lib/puppet/vendor/rgen/test/qualified_name_resolver_test.rb +102 -0
  416. data/lib/puppet/vendor/rgen/test/reference_resolver_test.rb +117 -0
  417. data/lib/puppet/vendor/rgen/test/rgen_test.rb +26 -0
  418. data/lib/puppet/vendor/rgen/test/template_language_test.rb +163 -0
  419. data/lib/puppet/vendor/rgen/test/template_language_test/expected_result1.txt +29 -0
  420. data/lib/puppet/vendor/rgen/test/template_language_test/expected_result2.txt +9 -0
  421. data/lib/puppet/vendor/rgen/test/template_language_test/expected_result3.txt +4 -0
  422. data/lib/puppet/vendor/rgen/test/template_language_test/indentStringTestDefaultIndent.out +1 -0
  423. data/lib/puppet/vendor/rgen/test/template_language_test/indentStringTestTabIndent.out +1 -0
  424. data/lib/puppet/vendor/rgen/test/template_language_test/templates/callback_indent_test/a.tpl +12 -0
  425. data/lib/puppet/vendor/rgen/test/template_language_test/templates/callback_indent_test/b.tpl +5 -0
  426. data/lib/puppet/vendor/rgen/test/template_language_test/templates/code/array.tpl +11 -0
  427. data/lib/puppet/vendor/rgen/test/template_language_test/templates/content/author.tpl +7 -0
  428. data/lib/puppet/vendor/rgen/test/template_language_test/templates/content/chapter.tpl +5 -0
  429. data/lib/puppet/vendor/rgen/test/template_language_test/templates/define_local_test/local.tpl +8 -0
  430. data/lib/puppet/vendor/rgen/test/template_language_test/templates/define_local_test/test.tpl +8 -0
  431. data/lib/puppet/vendor/rgen/test/template_language_test/templates/evaluate_test/test.tpl +7 -0
  432. data/lib/puppet/vendor/rgen/test/template_language_test/templates/indent_string_test.tpl +12 -0
  433. data/lib/puppet/vendor/rgen/test/template_language_test/templates/index/c/cmod.tpl +1 -0
  434. data/lib/puppet/vendor/rgen/test/template_language_test/templates/index/chapter.tpl +3 -0
  435. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_backslash_r_test.tpl +5 -0
  436. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/no_indent.tpl +3 -0
  437. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/sub1/no_indent.tpl +3 -0
  438. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/test.tpl +24 -0
  439. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/test2.tpl +13 -0
  440. data/lib/puppet/vendor/rgen/test/template_language_test/templates/no_indent_test/test3.tpl +10 -0
  441. data/lib/puppet/vendor/rgen/test/template_language_test/templates/null_context_test.tpl +17 -0
  442. data/lib/puppet/vendor/rgen/test/template_language_test/templates/root.tpl +31 -0
  443. data/lib/puppet/vendor/rgen/test/template_language_test/templates/template_resolution_test/sub1.tpl +9 -0
  444. data/lib/puppet/vendor/rgen/test/template_language_test/templates/template_resolution_test/sub1/sub1.tpl +3 -0
  445. data/lib/puppet/vendor/rgen/test/template_language_test/templates/template_resolution_test/test.tpl +4 -0
  446. data/lib/puppet/vendor/rgen/test/template_language_test/testout.txt +29 -0
  447. data/lib/puppet/vendor/rgen/test/testmodel/class_model_checker.rb +119 -0
  448. data/lib/puppet/vendor/rgen/test/testmodel/ea_testmodel.eap +0 -0
  449. data/lib/puppet/vendor/rgen/test/testmodel/ea_testmodel.xml +1029 -0
  450. data/lib/puppet/vendor/rgen/test/testmodel/ea_testmodel_partial.xml +317 -0
  451. data/lib/puppet/vendor/rgen/test/testmodel/ecore_model_checker.rb +101 -0
  452. data/lib/puppet/vendor/rgen/test/testmodel/manual_testmodel.xml +22 -0
  453. data/lib/puppet/vendor/rgen/test/testmodel/object_model_checker.rb +67 -0
  454. data/lib/puppet/vendor/rgen/test/transformer_test.rb +254 -0
  455. data/lib/puppet/vendor/rgen/test/util/file_cache_map_test.rb +99 -0
  456. data/lib/puppet/vendor/rgen/test/util/pattern_matcher_test.rb +97 -0
  457. data/lib/puppet/vendor/rgen/test/util_test.rb +5 -0
  458. data/lib/puppet/vendor/rgen/test/xml_instantiator_test.rb +160 -0
  459. data/lib/puppet/vendor/rgen/test/xml_instantiator_test/simple_ecore_model_checker.rb +94 -0
  460. data/lib/puppet/vendor/rgen/test/xml_instantiator_test/simple_xmi_ecore_instantiator.rb +53 -0
  461. data/lib/puppet/vendor/rgen/test/xml_instantiator_test/simple_xmi_metamodel.rb +49 -0
  462. data/lib/puppet/vendor/rgen/test/xml_instantiator_test/simple_xmi_to_ecore.rb +75 -0
  463. data/lib/puppet/vendor/safe_yaml/PUPPET_README.md +6 -0
  464. data/lib/puppet/vendor/semantic/PUPPET_README.md +6 -0
  465. data/lib/puppet/version.rb +1 -1
  466. data/spec/fixtures/integration/node/environment/sitedir2/00_a.pp +2 -0
  467. data/spec/fixtures/integration/node/environment/sitedir2/02_folder/01_b.pp +6 -0
  468. data/spec/fixtures/integration/node/environment/sitedir2/03_c.pp +1 -0
  469. data/spec/fixtures/integration/node/environment/sitedir2/04_include.pp +2 -0
  470. data/spec/fixtures/releases/jamtur01-apache/manifests/vhost.pp +1 -1
  471. data/spec/fixtures/unit/indirector/hiera/global.yaml +10 -0
  472. data/spec/fixtures/unit/indirector/hiera/invalid.yaml +1 -0
  473. data/spec/fixtures/unit/parser/functions/create_resources/foo/manifests/init.pp +3 -0
  474. data/spec/fixtures/unit/parser/functions/create_resources/foo/manifests/wrongdefine.pp +3 -0
  475. data/spec/fixtures/unit/parser/lexer/argumentdefaults.pp +2 -2
  476. data/spec/fixtures/unit/parser/lexer/casestatement.pp +14 -14
  477. data/spec/fixtures/unit/parser/lexer/classheirarchy.pp +3 -3
  478. data/spec/fixtures/unit/parser/lexer/classincludes.pp +3 -3
  479. data/spec/fixtures/unit/parser/lexer/classpathtest.pp +1 -1
  480. data/spec/fixtures/unit/parser/lexer/collection_override.pp +1 -1
  481. data/spec/fixtures/unit/parser/lexer/componentrequire.pp +2 -2
  482. data/spec/fixtures/unit/parser/lexer/deepclassheirarchy.pp +5 -5
  483. data/spec/fixtures/unit/parser/lexer/defineoverrides.pp +2 -2
  484. data/spec/fixtures/unit/parser/lexer/filecreate.pp +2 -2
  485. data/spec/fixtures/unit/parser/lexer/ifexpression.pp +1 -1
  486. data/spec/fixtures/unit/parser/lexer/implicititeration.pp +4 -4
  487. data/spec/fixtures/unit/parser/lexer/multipleinstances.pp +3 -3
  488. data/spec/fixtures/unit/parser/lexer/multisubs.pp +2 -2
  489. data/spec/fixtures/unit/parser/lexer/namevartest.pp +2 -2
  490. data/spec/fixtures/unit/parser/lexer/simpledefaults.pp +1 -1
  491. data/spec/fixtures/unit/pops/parser/lexer/argumentdefaults.pp +1 -1
  492. data/spec/fixtures/unit/pops/parser/lexer/casestatement.pp +14 -14
  493. data/spec/fixtures/unit/pops/parser/lexer/classheirarchy.pp +3 -3
  494. data/spec/fixtures/unit/pops/parser/lexer/classincludes.pp +3 -3
  495. data/spec/fixtures/unit/pops/parser/lexer/classpathtest.pp +1 -1
  496. data/spec/fixtures/unit/pops/parser/lexer/collection_override.pp +1 -1
  497. data/spec/fixtures/unit/pops/parser/lexer/componentrequire.pp +2 -2
  498. data/spec/fixtures/unit/pops/parser/lexer/deepclassheirarchy.pp +5 -5
  499. data/spec/fixtures/unit/pops/parser/lexer/defineoverrides.pp +2 -2
  500. data/spec/fixtures/unit/pops/parser/lexer/filecreate.pp +2 -2
  501. data/spec/fixtures/unit/pops/parser/lexer/ifexpression.pp +1 -1
  502. data/spec/fixtures/unit/pops/parser/lexer/implicititeration.pp +4 -4
  503. data/spec/fixtures/unit/pops/parser/lexer/multipleinstances.pp +3 -3
  504. data/spec/fixtures/unit/pops/parser/lexer/multisubs.pp +2 -2
  505. data/spec/fixtures/unit/pops/parser/lexer/namevartest.pp +2 -2
  506. data/spec/fixtures/unit/pops/parser/lexer/simpledefaults.pp +1 -1
  507. data/spec/fixtures/unit/provider/package/gem/gem-list-single-package +4 -0
  508. data/spec/fixtures/unit/type/user/authorized_keys +1 -1
  509. data/spec/integration/agent/logging_spec.rb +4 -0
  510. data/spec/integration/application/doc_spec.rb +4 -3
  511. data/spec/integration/configurer_spec.rb +0 -14
  512. data/spec/integration/defaults_spec.rb +26 -0
  513. data/spec/integration/environments/default_manifest_spec.rb +274 -0
  514. data/spec/integration/faces/documentation_spec.rb +0 -4
  515. data/spec/integration/file_bucket/file_spec.rb +21 -0
  516. data/spec/integration/indirector/catalog/compiler_spec.rb +0 -2
  517. data/spec/integration/indirector/catalog/queue_spec.rb +0 -2
  518. data/spec/integration/indirector/facts/facter_spec.rb +1 -1
  519. data/spec/integration/indirector/file_content/file_server_spec.rb +2 -2
  520. data/spec/integration/node/environment_spec.rb +24 -8
  521. data/spec/integration/parser/catalog_spec.rb +10 -10
  522. data/spec/integration/parser/class_spec.rb +37 -0
  523. data/spec/integration/parser/collector_spec.rb +234 -75
  524. data/spec/integration/parser/compiler_spec.rb +385 -401
  525. data/spec/integration/parser/conditionals_spec.rb +117 -0
  526. data/spec/integration/parser/future_compiler_spec.rb +359 -8
  527. data/spec/integration/parser/node_spec.rb +185 -0
  528. data/spec/integration/parser/resource_expressions_spec.rb +286 -0
  529. data/spec/integration/parser/ruby_manifest_spec.rb +0 -4
  530. data/spec/integration/parser/scope_spec.rb +94 -151
  531. data/spec/integration/provider/cron/crontab_spec.rb +137 -148
  532. data/spec/integration/ssl/certificate_authority_spec.rb +26 -0
  533. data/spec/integration/ssl/certificate_request_spec.rb +0 -6
  534. data/spec/integration/ssl/certificate_revocation_list_spec.rb +0 -2
  535. data/spec/integration/ssl/host_spec.rb +0 -2
  536. data/spec/integration/transaction_spec.rb +16 -0
  537. data/spec/integration/type/file_spec.rb +14 -13
  538. data/spec/integration/type/nagios_spec.rb +6 -15
  539. data/spec/integration/type/sshkey_spec.rb +22 -0
  540. data/spec/integration/type/tidy_spec.rb +3 -0
  541. data/spec/integration/type/user_spec.rb +8 -3
  542. data/spec/integration/util/autoload_spec.rb +6 -6
  543. data/spec/integration/util/rdoc/parser_spec.rb +7 -0
  544. data/spec/integration/util/windows/process_spec.rb +12 -0
  545. data/spec/integration/util/windows/security_spec.rb +36 -35
  546. data/spec/integration/util/windows/user_spec.rb +75 -9
  547. data/spec/integration/util_spec.rb +2 -2
  548. data/spec/lib/matchers/resource.rb +1 -0
  549. data/spec/lib/puppet_spec/compiler.rb +15 -2
  550. data/spec/lib/puppet_spec/files.rb +10 -0
  551. data/spec/lib/puppet_spec/language.rb +74 -0
  552. data/spec/lib/puppet_spec/matchers.rb +59 -32
  553. data/spec/lib/puppet_spec/module_tool/stub_source.rb +3 -0
  554. data/spec/shared_behaviours/hiera_indirections.rb +99 -0
  555. data/spec/shared_behaviours/iterative_functions.rb +69 -0
  556. data/spec/unit/application/apply_spec.rb +4 -2
  557. data/spec/unit/application/doc_spec.rb +17 -13
  558. data/spec/unit/application/master_spec.rb +35 -27
  559. data/spec/unit/application/resource_spec.rb +0 -5
  560. data/spec/unit/configurer/downloader_factory_spec.rb +96 -0
  561. data/spec/unit/configurer/downloader_spec.rb +3 -24
  562. data/spec/unit/configurer/plugin_handler_spec.rb +22 -22
  563. data/spec/unit/configurer_spec.rb +0 -4
  564. data/spec/unit/defaults_spec.rb +30 -0
  565. data/spec/unit/face/config_spec.rb +2 -1
  566. data/spec/unit/face/module/build_spec.rb +2 -2
  567. data/spec/unit/face/module/install_spec.rb +8 -8
  568. data/spec/unit/face/parser_spec.rb +71 -33
  569. data/spec/unit/file_bucket/file_spec.rb +2 -2
  570. data/spec/unit/file_system/uniquefile_spec.rb +184 -0
  571. data/spec/unit/forge/errors_spec.rb +4 -6
  572. data/spec/unit/forge/module_release_spec.rb +178 -89
  573. data/spec/unit/forge/repository_spec.rb +110 -2
  574. data/spec/unit/forge_spec.rb +39 -3
  575. data/spec/unit/functions/assert_type_spec.rb +22 -3
  576. data/spec/unit/{parser/methods → functions}/each_spec.rb +21 -1
  577. data/spec/unit/{parser/functions → functions}/epp_spec.rb +61 -9
  578. data/spec/unit/{parser/methods → functions}/filter_spec.rb +34 -38
  579. data/spec/unit/{parser/functions → functions}/inline_epp_spec.rb +18 -3
  580. data/spec/unit/functions/map_spec.rb +169 -0
  581. data/spec/unit/functions/match_spec.rb +57 -0
  582. data/spec/unit/{parser/methods → functions}/reduce_spec.rb +23 -5
  583. data/spec/unit/{parser/methods → functions}/slice_spec.rb +34 -21
  584. data/spec/unit/functions/with_spec.rb +35 -0
  585. data/spec/unit/functions4_spec.rb +7 -8
  586. data/spec/unit/indirector/catalog/compiler_spec.rb +0 -2
  587. data/spec/unit/indirector/catalog/static_compiler_spec.rb +11 -0
  588. data/spec/unit/indirector/data_binding/hiera_spec.rb +1 -96
  589. data/spec/unit/indirector/facts/facter_spec.rb +69 -102
  590. data/spec/unit/indirector/hiera_spec.rb +17 -0
  591. data/spec/unit/indirector/request_spec.rb +2 -4
  592. data/spec/unit/indirector/resource/ral_spec.rb +5 -0
  593. data/spec/unit/indirector/resource_type/parser_spec.rb +17 -12
  594. data/spec/unit/indirector/rest_spec.rb +36 -6
  595. data/spec/unit/interface/face_collection_spec.rb +2 -2
  596. data/spec/unit/module_tool/applications/builder_spec.rb +364 -14
  597. data/spec/unit/module_tool/applications/uninstaller_spec.rb +22 -0
  598. data/spec/unit/module_tool/applications/unpacker_spec.rb +40 -0
  599. data/spec/unit/module_tool/applications/upgrader_spec.rb +22 -0
  600. data/spec/unit/module_tool/installed_modules_spec.rb +49 -0
  601. data/spec/unit/module_tool/metadata_spec.rb +72 -4
  602. data/spec/unit/module_tool/tar/mini_spec.rb +2 -1
  603. data/spec/unit/network/authentication_spec.rb +4 -0
  604. data/spec/unit/network/http/api/v2/environments_spec.rb +24 -3
  605. data/spec/unit/network/http/connection_spec.rb +127 -92
  606. data/spec/unit/network/http/factory_spec.rb +82 -0
  607. data/spec/unit/network/http/handler_spec.rb +23 -13
  608. data/spec/unit/network/http/nocache_pool_spec.rb +43 -0
  609. data/spec/unit/network/http/pool_spec.rb +269 -0
  610. data/spec/unit/network/http/rack/rest_spec.rb +1 -1
  611. data/spec/unit/network/http/session_spec.rb +43 -0
  612. data/spec/unit/network/http/site_spec.rb +90 -0
  613. data/spec/unit/network/http/webrick_spec.rb +1 -1
  614. data/spec/unit/network/http_pool_spec.rb +9 -6
  615. data/spec/unit/network/http_spec.rb +10 -0
  616. data/spec/unit/node/environment_spec.rb +54 -0
  617. data/spec/unit/node_spec.rb +3 -5
  618. data/spec/unit/parser/compiler_spec.rb +9 -2
  619. data/spec/unit/parser/files_spec.rb +19 -0
  620. data/spec/unit/parser/functions/contain_spec.rb +51 -0
  621. data/spec/unit/parser/functions/create_resources_spec.rb +8 -1
  622. data/spec/unit/parser/functions/digest_spec.rb +31 -0
  623. data/spec/unit/parser/functions/file_spec.rb +48 -5
  624. data/spec/unit/parser/functions/include_spec.rb +15 -1
  625. data/spec/unit/parser/functions/realize_spec.rb +43 -35
  626. data/spec/unit/parser/functions/require_spec.rb +19 -5
  627. data/spec/unit/parser/functions/search_spec.rb +5 -0
  628. data/spec/unit/parser/functions/shared.rb +82 -0
  629. data/spec/unit/parser/functions_spec.rb +1 -1
  630. data/spec/unit/parser/lexer_spec.rb +10 -1
  631. data/spec/unit/parser/type_loader_spec.rb +0 -1
  632. data/spec/unit/pops/benchmark_spec.rb +1 -1
  633. data/spec/unit/pops/binder/bindings_composer_spec.rb +24 -22
  634. data/spec/unit/pops/binder/injector_spec.rb +8 -6
  635. data/spec/unit/pops/evaluator/access_ops_spec.rb +3 -3
  636. data/spec/unit/pops/evaluator/comparison_ops_spec.rb +7 -4
  637. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +250 -30
  638. data/spec/unit/pops/evaluator/logical_ops_spec.rb +2 -2
  639. data/spec/unit/pops/evaluator/variables_spec.rb +0 -105
  640. data/spec/unit/pops/issues_spec.rb +170 -0
  641. data/spec/unit/pops/loaders/dependency_loader_spec.rb +17 -0
  642. data/spec/unit/pops/loaders/loader_paths_spec.rb +4 -15
  643. data/spec/unit/pops/loaders/loaders_spec.rb +31 -11
  644. data/spec/unit/pops/loaders/module_loaders_spec.rb +0 -29
  645. data/spec/unit/pops/loaders/static_loader_spec.rb +6 -0
  646. data/spec/unit/pops/parser/epp_parser_spec.rb +38 -9
  647. data/spec/unit/pops/parser/evaluating_parser_spec.rb +0 -1
  648. data/spec/unit/pops/parser/lexer2_spec.rb +21 -4
  649. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +5 -0
  650. data/spec/unit/pops/parser/parse_calls_spec.rb +6 -3
  651. data/spec/unit/pops/parser/parse_conditionals_spec.rb +12 -5
  652. data/spec/unit/pops/parser/parse_containers_spec.rb +62 -7
  653. data/spec/unit/pops/parser/parse_resource_spec.rb +155 -73
  654. data/spec/unit/pops/parser/parser_spec.rb +16 -0
  655. data/spec/unit/pops/parser/parsing_typed_parameters_spec.rb +72 -0
  656. data/spec/unit/pops/transformer/transform_calls_spec.rb +1 -1
  657. data/spec/unit/pops/types/type_calculator_spec.rb +254 -57
  658. data/spec/unit/pops/types/type_factory_spec.rb +8 -3
  659. data/spec/unit/pops/types/type_parser_spec.rb +26 -5
  660. data/spec/unit/pops/validator/validator_spec.rb +143 -27
  661. data/spec/unit/provider/exec/posix_spec.rb +22 -14
  662. data/spec/unit/provider/exec/shell_spec.rb +2 -2
  663. data/spec/unit/provider/file/windows_spec.rb +7 -7
  664. data/spec/unit/provider/group/windows_adsi_spec.rb +17 -17
  665. data/spec/unit/provider/package/gem_spec.rb +10 -0
  666. data/spec/unit/provider/package/openbsd_spec.rb +66 -9
  667. data/spec/unit/provider/package/pacman_spec.rb +90 -71
  668. data/spec/unit/provider/package/windows/package_spec.rb +21 -6
  669. data/spec/unit/provider/package/yum_spec.rb +1 -0
  670. data/spec/unit/provider/parsedfile_spec.rb +1 -1
  671. data/spec/unit/provider/scheduled_task/win32_taskscheduler_spec.rb +9 -9
  672. data/spec/unit/provider/service/openbsd_spec.rb +26 -2
  673. data/spec/unit/provider/service/upstart_spec.rb +12 -1
  674. data/spec/unit/provider/ssh_authorized_key/parsed_spec.rb +6 -0
  675. data/spec/unit/provider/user/user_role_add_spec.rb +23 -1
  676. data/spec/unit/provider/user/windows_adsi_spec.rb +17 -17
  677. data/spec/unit/reports/store_spec.rb +0 -16
  678. data/spec/unit/resource/catalog_spec.rb +0 -5
  679. data/spec/unit/resource_spec.rb +2 -2
  680. data/spec/unit/settings/autosign_setting_spec.rb +2 -2
  681. data/spec/unit/settings/environment_conf_spec.rb +77 -10
  682. data/spec/unit/settings/file_setting_spec.rb +5 -4
  683. data/spec/unit/settings/priority_setting_spec.rb +4 -4
  684. data/spec/unit/settings_spec.rb +41 -3
  685. data/spec/unit/ssl/certificate_authority_spec.rb +25 -2
  686. data/spec/unit/ssl/inventory_spec.rb +13 -0
  687. data/spec/unit/ssl/validator_spec.rb +0 -1
  688. data/spec/unit/transaction/resource_harness_spec.rb +64 -0
  689. data/spec/unit/transaction_spec.rb +98 -47
  690. data/spec/unit/type/cron_spec.rb +3 -3
  691. data/spec/unit/type/exec_spec.rb +9 -0
  692. data/spec/unit/type/file/content_spec.rb +54 -71
  693. data/spec/unit/type/file/mode_spec.rb +26 -1
  694. data/spec/unit/type/file/source_spec.rb +26 -4
  695. data/spec/unit/type/file_spec.rb +3 -3
  696. data/spec/unit/type/nagios_spec.rb +12 -3
  697. data/spec/unit/type/resources_spec.rb +64 -30
  698. data/spec/unit/type/user_spec.rb +1 -1
  699. data/spec/unit/type/yumrepo_spec.rb +136 -0
  700. data/spec/unit/type/zone_spec.rb +44 -1
  701. data/spec/unit/type_spec.rb +20 -0
  702. data/spec/unit/util/colors_spec.rb +14 -8
  703. data/spec/unit/util/command_line_spec.rb +11 -7
  704. data/spec/unit/util/execution_spec.rb +35 -42
  705. data/spec/unit/util/feature_spec.rb +12 -0
  706. data/spec/unit/util/http_proxy_spec.rb +43 -1
  707. data/spec/unit/util/log/destinations_spec.rb +45 -1
  708. data/spec/unit/util/logging_spec.rb +38 -0
  709. data/spec/unit/util/pidlock_spec.rb +37 -1
  710. data/spec/unit/util/profiler/aggregate_spec.rb +59 -0
  711. data/spec/unit/util/profiler/around_profiler_spec.rb +61 -0
  712. data/spec/unit/util/profiler/logging_spec.rb +18 -29
  713. data/spec/unit/util/profiler/wall_clock_spec.rb +1 -1
  714. data/spec/unit/util/profiler_spec.rb +55 -0
  715. data/spec/unit/util/queue_spec.rb +0 -1
  716. data/spec/unit/util/rdoc/parser_spec.rb +14 -6
  717. data/spec/unit/util/tagging_spec.rb +1 -1
  718. data/spec/unit/util/windows/access_control_entry_spec.rb +1 -1
  719. data/spec/unit/util/{adsi_spec.rb → windows/adsi_spec.rb} +111 -108
  720. data/spec/unit/util/windows/api_types_spec.rb +28 -0
  721. data/spec/unit/util/windows/registry_spec.rb +7 -6
  722. data/spec/unit/util/windows/sid_spec.rb +3 -6
  723. data/spec/unit/util/windows/string_spec.rb +4 -0
  724. data/spec/unit/util/zaml_spec.rb +5 -1
  725. data/tasks/benchmark.rake +40 -5
  726. data/tasks/parser.rake +16 -2
  727. data/tasks/yard.rake +1 -1
  728. metadata +296 -68
  729. data/lib/puppet/file_system/tempfile.rb +0 -20
  730. data/lib/puppet/parser/e_parser_adapter.rb +0 -119
  731. data/lib/puppet/parser/functions/collect.rb +0 -15
  732. data/lib/puppet/parser/functions/select.rb +0 -15
  733. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +0 -109
  734. data/lib/puppet/pops/parser/lexer.rb +0 -753
  735. data/lib/puppet/pops/parser/makefile +0 -6
  736. data/lib/puppet/pops/validation/checker3_1.rb +0 -558
  737. data/lib/puppet/pops/validation/validator_factory_3_1.rb +0 -31
  738. data/lib/puppet/util/profiler/none.rb +0 -8
  739. data/spec/unit/face/certificate_request_spec.rb +0 -7
  740. data/spec/unit/face/certificate_revocation_list_spec.rb +0 -7
  741. data/spec/unit/face/key_spec.rb +0 -7
  742. data/spec/unit/face/report_spec.rb +0 -7
  743. data/spec/unit/face/resource_spec.rb +0 -7
  744. data/spec/unit/face/resource_type_spec.rb +0 -7
  745. data/spec/unit/file_system/tempfile_spec.rb +0 -48
  746. data/spec/unit/parser/eparser_adapter_spec.rb +0 -407
  747. data/spec/unit/parser/methods/map_spec.rb +0 -184
  748. data/spec/unit/parser/methods/shared.rb +0 -45
  749. data/spec/unit/pops/parser/lexer_spec.rb +0 -840
  750. data/spec/unit/pops/transformer/transform_resource_spec.rb +0 -185
  751. data/spec/unit/util/profiler/none_spec.rb +0 -12
@@ -0,0 +1,9 @@
1
+ <% define 'Sub1', :for => Object do %>
2
+ Sub1
3
+ <% end %>
4
+
5
+ <% define 'Test', :for => Object do %>
6
+ <% expand 'Sub1' %>
7
+ <% expand 'sub1::Sub1' %>
8
+ <% expand 'sub1/sub1::Sub1' %>
9
+ <% end %>
@@ -0,0 +1,3 @@
1
+ <% define 'Sub1', :for => Object do %>
2
+ Sub1 in sub1
3
+ <% end %>
@@ -0,0 +1,4 @@
1
+ <% define 'Test', :for => Object do %>
2
+ <% expand 'sub1::Sub1' %>
3
+ <% expand 'sub1/sub1::Sub1' %>
4
+ <% end %>
@@ -0,0 +1,29 @@
1
+ Document: SomeDocument
2
+
3
+ by Martin, EMail: martin(at)somewhe.re and Otherguy, EMail: other(at)somewhereel.se
4
+
5
+ Index:
6
+ 1 Intro in SomeDocument
7
+ 2 MainPart in SomeDocument
8
+ 3 Summary in SomeDocument
9
+
10
+ ----------------
11
+
12
+ Chapters in one line:
13
+ *** Intro ***, *** MainPart ***, *** Summary ***
14
+
15
+ Chapters each in one line:
16
+ *** Intro ***,
17
+ *** MainPart ***,
18
+ *** Summary ***
19
+
20
+ Here are some code examples:
21
+ int myArray[5] = {
22
+ 1,
23
+ 2,
24
+ 3,
25
+ 4,
26
+ 5
27
+ };
28
+ Text from Root
29
+ Text from Root
@@ -0,0 +1,119 @@
1
+ require 'metamodels/uml13_metamodel'
2
+ require 'metamodels/uml13_metamodel_ext'
3
+
4
+ module Testmodel
5
+
6
+ # Checks the UML Class model elements from the example model
7
+ #
8
+ module ClassModelChecker
9
+
10
+ def checkClassModel(envUML)
11
+
12
+ # check main package
13
+ mainPackage = envUML.find(:class => UML13::Package, :name => "HouseMetamodel").first
14
+ assert_not_nil mainPackage
15
+
16
+ # check Rooms package
17
+ subs = mainPackage.ownedElement.select{|e| e.is_a?(UML13::Package)}
18
+ assert_equal 1, subs.size
19
+ roomsPackage = subs.first
20
+ assert_equal "Rooms", roomsPackage.name
21
+
22
+ # check main package classes
23
+ classes = mainPackage.ownedElement.select{|e| e.is_a?(UML13::Class)}
24
+ assert_equal 3, classes.size
25
+ houseClass = classes.find{|c| c.name == "House"}
26
+ personClass = classes.find{|c| c.name == "Person"}
27
+ meetingPlaceClass = classes.find{|c| c.name == "MeetingPlace"}
28
+ cookingPlaceInterface = mainPackage.ownedElement.find{|e| e.is_a?(UML13::Interface) && e.name == "CookingPlace"}
29
+ assert_not_nil houseClass
30
+ assert_not_nil personClass
31
+ assert_not_nil meetingPlaceClass
32
+ assert_not_nil cookingPlaceInterface
33
+
34
+ # check Rooms package classes
35
+ classes = roomsPackage.ownedElement.select{|e| e.is_a?(UML13::Class)}
36
+ assert_equal 3, classes.size
37
+ roomClass = classes.find{|c| c.name == "Room"}
38
+ kitchenClass = classes.find{|c| c.name == "Kitchen"}
39
+ bathroomClass = classes.find{|c| c.name == "Bathroom"}
40
+ assert_not_nil roomClass
41
+ assert_not_nil kitchenClass
42
+ assert_not_nil bathroomClass
43
+
44
+ # check Room inheritance
45
+ assert_equal 2, roomClass.specialization.child.size
46
+ assert_not_nil roomClass.specialization.child.find{|c| c.name == "Kitchen"}
47
+ assert_not_nil roomClass.specialization.child.find{|c| c.name == "Bathroom"}
48
+ assert_equal 2, kitchenClass.generalization.parent.size
49
+ assert_equal roomClass.object_id, kitchenClass.generalization.parent.find{|c| c.name == "Room"}.object_id
50
+ assert_equal meetingPlaceClass.object_id, kitchenClass.generalization.parent.find{|c| c.name == "MeetingPlace"}.object_id
51
+ assert_equal 1, bathroomClass.generalization.parent.size
52
+ assert_equal roomClass.object_id, bathroomClass.generalization.parent.first.object_id
53
+ assert_not_nil kitchenClass.clientDependency.find{|d| d.stereotype.name == "implements"}
54
+ assert_equal cookingPlaceInterface.object_id, kitchenClass.clientDependency.supplier.find{|c| c.name == "CookingPlace"}.object_id
55
+ assert_equal kitchenClass.object_id, cookingPlaceInterface.supplierDependency.client.find{|c| c.name == "Kitchen"}.object_id
56
+
57
+ # check House-Room "part of" association
58
+ assert_equal 1, houseClass.localCompositeEnd.size
59
+ roomEnd = houseClass.localCompositeEnd.first.otherEnd
60
+ assert_equal UML13::Association, roomEnd.association.class
61
+ assert_equal roomClass.object_id, roomEnd.type.object_id
62
+ assert_equal "room", roomEnd.name
63
+ assert_equal UML13::Multiplicity, roomEnd.multiplicity.class
64
+ assert_equal "1", roomEnd.multiplicity.range.first.lower
65
+ assert_equal "*", roomEnd.multiplicity.range.first.upper
66
+
67
+ assert_equal 1, roomClass.remoteCompositeEnd.size
68
+ assert_equal houseClass.object_id, roomClass.remoteCompositeEnd.first.type.object_id
69
+ assert_equal "house", roomClass.remoteCompositeEnd.first.name
70
+
71
+ # check House OUT associations
72
+ assert_equal 2, houseClass.remoteNavigableEnd.size
73
+ bathEnd = houseClass.remoteNavigableEnd.find{|e| e.name == "bathroom"}
74
+ kitchenEnd = houseClass.remoteNavigableEnd.find{|e| e.name== "kitchen"}
75
+ assert_not_nil bathEnd
76
+ assert_not_nil kitchenEnd
77
+ assert_equal UML13::Association, bathEnd.association.class
78
+ assert_equal UML13::Association, kitchenEnd.association.class
79
+ assert_equal "1", kitchenEnd.multiplicity.range.first.lower
80
+ assert_equal "1", kitchenEnd.multiplicity.range.first.upper
81
+
82
+ # check House IN associations
83
+ assert_equal 3, houseClass.localNavigableEnd.size
84
+ homeEnd = houseClass.localNavigableEnd.find{|e| e.name == "home"}
85
+ assert_not_nil homeEnd
86
+ assert_equal UML13::Association, homeEnd.association.class
87
+ assert_equal "0", homeEnd.multiplicity.range.first.lower
88
+ assert_equal "*", homeEnd.multiplicity.range.first.upper
89
+
90
+ # check House all associations
91
+ assert_equal 4, houseClass.associationEnd.size
92
+ end
93
+
94
+ def checkClassModelPartial(envUML)
95
+ # HouseMetamodel package is not part of the partial export
96
+ mainPackage = envUML.find(:class => UML13::Package, :name => "HouseMetamodel").first
97
+ assert_nil mainPackage
98
+
99
+ roomsPackage = envUML.find(:class => UML13::Package, :name => "Rooms").first
100
+ assert_not_nil roomsPackage
101
+
102
+ roomClass = envUML.find(:class => UML13::Class, :name => "Room").first
103
+ assert_not_nil roomClass
104
+
105
+ # House is created from an EAStub
106
+ houseClass = roomClass.remoteCompositeEnd.first.type
107
+ assert_not_nil houseClass
108
+ assert_equal "House", houseClass.name
109
+ # House is not in a package since it's just a stub
110
+ assert houseClass.namespace.nil?
111
+
112
+ # in the partial model, House has only 3 (not 4) associations
113
+ # since the fourth class (Person) is not in Rooms package
114
+ assert_equal 3, houseClass.associationEnd.size
115
+ end
116
+
117
+ end
118
+
119
+ end
@@ -0,0 +1,1029 @@
1
+ <?xml version="1.0" encoding="windows-1252"?>
2
+ <XMI xmi.version="1.1" xmlns:UML="omg.org/UML1.3" timestamp="2007-06-14 08:25:40">
3
+ <XMI.header>
4
+ <XMI.documentation>
5
+ <XMI.exporter>Enterprise Architect</XMI.exporter>
6
+ <XMI.exporterVersion>2.5</XMI.exporterVersion>
7
+ </XMI.documentation>
8
+ </XMI.header>
9
+ <XMI.content>
10
+ <UML:Model name="EA Model" xmi.id="MX_EAID_B216CC15_6D9C_4c10_9015_96740F924D1C">
11
+ <UML:Namespace.ownedElement>
12
+ <UML:Class name="EARootClass" xmi.id="EAID_11111111_5487_4080_A7F4_41526CB0AA00" isRoot="true" isLeaf="false" isAbstract="false"/>
13
+ <UML:Package name="Views" xmi.id="EAPK_B216CC15_6D9C_4c10_9015_96740F924D1C" isRoot="true" isLeaf="false" isAbstract="false" visibility="public">
14
+ <UML:ModelElement.taggedValue>
15
+ <UML:TaggedValue tag="ea_package_id" value="1"/>
16
+ <UML:TaggedValue tag="iscontrolled" value="FALSE"/>
17
+ <UML:TaggedValue tag="isprotected" value="FALSE"/>
18
+ <UML:TaggedValue tag="usedtd" value="FALSE"/>
19
+ <UML:TaggedValue tag="logxml" value="FALSE"/>
20
+ </UML:ModelElement.taggedValue>
21
+ <UML:Namespace.ownedElement>
22
+ <UML:Collaboration xmi.id="EAID_B216CC15_6D9C_4c10_9015_96740F924D1C_Collaboration" name="Collaborations">
23
+ <UML:Namespace.ownedElement>
24
+ <UML:ClassifierRole name="HouseMetamodel" xmi.id="EAID_A1B83D59_CAE1_422c_BA5F_D3624D7156AD" visibility="public" base="EAID_11111111_5487_4080_A7F4_41526CB0AA00">
25
+ <UML:ModelElement.taggedValue>
26
+ <UML:TaggedValue tag="isSpecification" value="false"/>
27
+ <UML:TaggedValue tag="ea_stype" value="Package"/>
28
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
29
+ <UML:TaggedValue tag="version" value="1.0"/>
30
+ <UML:TaggedValue tag="package" value="EAPK_B216CC15_6D9C_4c10_9015_96740F924D1C"/>
31
+ <UML:TaggedValue tag="date_created" value="2006-06-26 08:41:49"/>
32
+ <UML:TaggedValue tag="date_modified" value="2006-06-26 08:41:49"/>
33
+ <UML:TaggedValue tag="gentype" value="Java"/>
34
+ <UML:TaggedValue tag="tagged" value="0"/>
35
+ <UML:TaggedValue tag="package2" value="EAID_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
36
+ <UML:TaggedValue tag="package_name" value="Views"/>
37
+ <UML:TaggedValue tag="phase" value="1.0"/>
38
+ <UML:TaggedValue tag="complexity" value="1"/>
39
+ <UML:TaggedValue tag="status" value="Proposed"/>
40
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
41
+ </UML:ModelElement.taggedValue>
42
+ </UML:ClassifierRole>
43
+ <UML:ClassifierRole name="HouseExampleModel" xmi.id="EAID_06C9C958_C14A_41f4_89A9_6873CCED37A7" visibility="public" base="EAID_11111111_5487_4080_A7F4_41526CB0AA00">
44
+ <UML:ModelElement.taggedValue>
45
+ <UML:TaggedValue tag="isSpecification" value="false"/>
46
+ <UML:TaggedValue tag="ea_stype" value="Package"/>
47
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
48
+ <UML:TaggedValue tag="version" value="1.0"/>
49
+ <UML:TaggedValue tag="package" value="EAPK_B216CC15_6D9C_4c10_9015_96740F924D1C"/>
50
+ <UML:TaggedValue tag="date_created" value="2006-07-20 18:34:43"/>
51
+ <UML:TaggedValue tag="date_modified" value="2006-07-20 18:34:43"/>
52
+ <UML:TaggedValue tag="gentype" value="Java"/>
53
+ <UML:TaggedValue tag="tagged" value="0"/>
54
+ <UML:TaggedValue tag="package2" value="EAID_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
55
+ <UML:TaggedValue tag="package_name" value="Views"/>
56
+ <UML:TaggedValue tag="phase" value="1.0"/>
57
+ <UML:TaggedValue tag="complexity" value="1"/>
58
+ <UML:TaggedValue tag="status" value="Proposed"/>
59
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
60
+ </UML:ModelElement.taggedValue>
61
+ </UML:ClassifierRole>
62
+ </UML:Namespace.ownedElement>
63
+ <UML:Collaboration.interaction/>
64
+ </UML:Collaboration>
65
+ <UML:Package name="HouseMetamodel" xmi.id="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD" isRoot="true" isLeaf="false" isAbstract="false" visibility="public">
66
+ <UML:ModelElement.name>HouseMetamodel</UML:ModelElement.name>
67
+ <UML:ModelElement.taggedValue>
68
+ <UML:TaggedValue tag="created" value="2006-06-26 00:00:00"/>
69
+ <UML:TaggedValue tag="modified" value="2006-06-26 00:00:00"/>
70
+ <UML:TaggedValue tag="iscontrolled" value="FALSE"/>
71
+ <UML:TaggedValue tag="isprotected" value="FALSE"/>
72
+ <UML:TaggedValue tag="usedtd" value="FALSE"/>
73
+ <UML:TaggedValue tag="logxml" value="FALSE"/>
74
+ <UML:TaggedValue tag="ea_package_id" value="44"/>
75
+ <UML:TaggedValue tag="phase" value="1.0"/>
76
+ <UML:TaggedValue tag="status" value="Proposed"/>
77
+ <UML:TaggedValue tag="complexity" value="1"/>
78
+ <UML:TaggedValue tag="ea_stype" value="Public"/>
79
+ </UML:ModelElement.taggedValue>
80
+ <UML:Namespace.ownedElement>
81
+ <UML:Class name="House" xmi.id="EAID_436D81AD_A9B0_44d8_8AD1_86BB0808DA32" visibility="public" namespace="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD" isRoot="false" isLeaf="false" isAbstract="false" isActive="false">
82
+ <UML:ModelElement.stereotype>
83
+ <UML:Stereotype name="dummy"/>
84
+ </UML:ModelElement.stereotype>
85
+ <UML:ModelElement.taggedValue>
86
+ <UML:TaggedValue tag="isSpecification" value="false"/>
87
+ <UML:TaggedValue tag="ea_stype" value="Class"/>
88
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
89
+ <UML:TaggedValue tag="version" value="1.0"/>
90
+ <UML:TaggedValue tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
91
+ <UML:TaggedValue tag="date_created" value="2005-09-16 19:52:18"/>
92
+ <UML:TaggedValue tag="date_modified" value="2006-02-28 08:29:19"/>
93
+ <UML:TaggedValue tag="gentype" value="Java"/>
94
+ <UML:TaggedValue tag="tagged" value="0"/>
95
+ <UML:TaggedValue tag="package_name" value="HouseMetamodel"/>
96
+ <UML:TaggedValue tag="phase" value="1.0"/>
97
+ <UML:TaggedValue tag="complexity" value="1"/>
98
+ <UML:TaggedValue tag="status" value="Proposed"/>
99
+ <UML:TaggedValue tag="stereotype" value="dummy"/>
100
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
101
+ </UML:ModelElement.taggedValue>
102
+ <UML:Classifier.feature>
103
+ <UML:Attribute name="address" visibility="private" ownerScope="instance" changeable="none" targetScope="instance">
104
+ <UML:Attribute.initialValue>
105
+ <UML:Expression/>
106
+ </UML:Attribute.initialValue>
107
+ <UML:StructuralFeature.type>
108
+ <UML:Classifier xmi.idref="eaxmiid0"/>
109
+ </UML:StructuralFeature.type>
110
+ <UML:ModelElement.taggedValue>
111
+ <UML:TaggedValue tag="type" value="String"/>
112
+ <UML:TaggedValue tag="derived" value="0"/>
113
+ <UML:TaggedValue tag="containment" value="Not Specified"/>
114
+ <UML:TaggedValue tag="ordered" value="0"/>
115
+ <UML:TaggedValue tag="collection" value="false"/>
116
+ <UML:TaggedValue tag="position" value="0"/>
117
+ <UML:TaggedValue tag="lowerBound" value="1"/>
118
+ <UML:TaggedValue tag="upperBound" value="1"/>
119
+ <UML:TaggedValue tag="duplicates" value="0"/>
120
+ <UML:TaggedValue tag="ea_guid" value="{A8DF581B-9AC6-4f75-AB48-8FAEDFC6E068}"/>
121
+ <UML:TaggedValue tag="styleex" value="volatile=0;"/>
122
+ </UML:ModelElement.taggedValue>
123
+ </UML:Attribute>
124
+ </UML:Classifier.feature>
125
+ </UML:Class>
126
+ <UML:Association xmi.id="EAID_161BF4FA_8F48_441f_AF1F_D36014D57A1F" visibility="public" isRoot="false" isLeaf="false" isAbstract="false">
127
+ <UML:ModelElement.taggedValue>
128
+ <UML:TaggedValue tag="style" value="3"/>
129
+ <UML:TaggedValue tag="ea_type" value="Association"/>
130
+ <UML:TaggedValue tag="direction" value="Source -&gt; Destination"/>
131
+ <UML:TaggedValue tag="linemode" value="3"/>
132
+ <UML:TaggedValue tag="seqno" value="0"/>
133
+ <UML:TaggedValue tag="headStyle" value="0"/>
134
+ <UML:TaggedValue tag="lineStyle" value="0"/>
135
+ <UML:TaggedValue tag="privatedata5" value="SX=8;SY=5;EX=8;EY=5;"/>
136
+ <UML:TaggedValue tag="virtualInheritance" value="0"/>
137
+ </UML:ModelElement.taggedValue>
138
+ <UML:Association.connection>
139
+ <UML:AssociationEnd visibility="public" aggregation="none" isOrdered="false" isNavigable="false" type="EAID_436D81AD_A9B0_44d8_8AD1_86BB0808DA32">
140
+ <UML:ModelElement.taggedValue>
141
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
142
+ </UML:ModelElement.taggedValue>
143
+ </UML:AssociationEnd>
144
+ <UML:AssociationEnd visibility="public" multiplicity="1" name="bathroom" aggregation="none" isOrdered="false" isNavigable="true" type="EAID_244CC9E5_1F81_4164_9215_C048EC679543">
145
+ <UML:ModelElement.taggedValue>
146
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
147
+ </UML:ModelElement.taggedValue>
148
+ </UML:AssociationEnd>
149
+ </UML:Association.connection>
150
+ </UML:Association>
151
+ <UML:Association xmi.id="EAID_9F0FF178_300F_45f4_B31F_9633AF770E44" visibility="public" isRoot="false" isLeaf="false" isAbstract="false">
152
+ <UML:ModelElement.taggedValue>
153
+ <UML:TaggedValue tag="style" value="3"/>
154
+ <UML:TaggedValue tag="ea_type" value="Association"/>
155
+ <UML:TaggedValue tag="direction" value="Bi-Directional"/>
156
+ <UML:TaggedValue tag="linemode" value="3"/>
157
+ <UML:TaggedValue tag="seqno" value="0"/>
158
+ <UML:TaggedValue tag="headStyle" value="0"/>
159
+ <UML:TaggedValue tag="lineStyle" value="0"/>
160
+ <UML:TaggedValue tag="privatedata5" value="SX=6;SY=-12;EX=-44;EY=-9;EDGE=1;"/>
161
+ <UML:TaggedValue tag="virtualInheritance" value="0"/>
162
+ </UML:ModelElement.taggedValue>
163
+ <UML:Association.connection>
164
+ <UML:AssociationEnd visibility="public" multiplicity="1" name="kitchen" aggregation="none" isOrdered="false" isNavigable="true" type="EAID_9CE44C59_37E4_4117_8C05_F87C4DC33529">
165
+ <UML:ModelElement.taggedValue>
166
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
167
+ </UML:ModelElement.taggedValue>
168
+ </UML:AssociationEnd>
169
+ <UML:AssociationEnd visibility="public" multiplicity="1" name="house" aggregation="none" isOrdered="false" isNavigable="true" type="EAID_436D81AD_A9B0_44d8_8AD1_86BB0808DA32">
170
+ <UML:ModelElement.taggedValue>
171
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
172
+ </UML:ModelElement.taggedValue>
173
+ </UML:AssociationEnd>
174
+ </UML:Association.connection>
175
+ </UML:Association>
176
+ <UML:Association xmi.id="EAID_A9112D1C_DCB6_4040_B466_D5F560898B33" visibility="public" isRoot="false" isLeaf="false" isAbstract="false">
177
+ <UML:ModelElement.taggedValue>
178
+ <UML:TaggedValue tag="style" value="3"/>
179
+ <UML:TaggedValue tag="ea_type" value="Association"/>
180
+ <UML:TaggedValue tag="direction" value="Source -&gt; Destination"/>
181
+ <UML:TaggedValue tag="linemode" value="3"/>
182
+ <UML:TaggedValue tag="seqno" value="0"/>
183
+ <UML:TaggedValue tag="headStyle" value="0"/>
184
+ <UML:TaggedValue tag="lineStyle" value="0"/>
185
+ <UML:TaggedValue tag="virtualInheritance" value="0"/>
186
+ </UML:ModelElement.taggedValue>
187
+ <UML:Association.connection>
188
+ <UML:AssociationEnd visibility="public" aggregation="none" isOrdered="false" isNavigable="false" type="EAID_2F1D9CC6_F38F_4a34_B3C4_B92915108384">
189
+ <UML:ModelElement.taggedValue>
190
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
191
+ </UML:ModelElement.taggedValue>
192
+ </UML:AssociationEnd>
193
+ <UML:AssociationEnd visibility="public" multiplicity="0..*" name="home" aggregation="none" isOrdered="false" isNavigable="true" type="EAID_436D81AD_A9B0_44d8_8AD1_86BB0808DA32">
194
+ <UML:ModelElement.taggedValue>
195
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
196
+ </UML:ModelElement.taggedValue>
197
+ </UML:AssociationEnd>
198
+ </UML:Association.connection>
199
+ </UML:Association>
200
+ <UML:Association xmi.id="EAID_F15A2B25_0DA9_4203_8FC9_25645610B5E5" visibility="public" isRoot="false" isLeaf="false" isAbstract="false">
201
+ <UML:ModelElement.taggedValue>
202
+ <UML:TaggedValue tag="style" value="3"/>
203
+ <UML:TaggedValue tag="ea_type" value="Aggregation"/>
204
+ <UML:TaggedValue tag="direction" value="Source -&gt; Destination"/>
205
+ <UML:TaggedValue tag="linemode" value="3"/>
206
+ <UML:TaggedValue tag="seqno" value="0"/>
207
+ <UML:TaggedValue tag="subtype" value="Strong"/>
208
+ <UML:TaggedValue tag="headStyle" value="0"/>
209
+ <UML:TaggedValue tag="lineStyle" value="0"/>
210
+ <UML:TaggedValue tag="privatedata5" value="SX=-2;SY=-1;EX=-2;EY=-1;"/>
211
+ <UML:TaggedValue tag="virtualInheritance" value="0"/>
212
+ </UML:ModelElement.taggedValue>
213
+ <UML:Association.connection>
214
+ <UML:AssociationEnd visibility="public" multiplicity="1..*" name="room" aggregation="none" isOrdered="false" isNavigable="false" type="EAID_14DB5E54_CD7B_4c84_998C_44960049D7E0">
215
+ <UML:ModelElement.taggedValue>
216
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
217
+ </UML:ModelElement.taggedValue>
218
+ </UML:AssociationEnd>
219
+ <UML:AssociationEnd visibility="public" multiplicity="1" name="house" aggregation="composite" isOrdered="false" isNavigable="true" type="EAID_436D81AD_A9B0_44d8_8AD1_86BB0808DA32">
220
+ <UML:ModelElement.taggedValue>
221
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
222
+ </UML:ModelElement.taggedValue>
223
+ </UML:AssociationEnd>
224
+ </UML:Association.connection>
225
+ </UML:Association>
226
+ <UML:Collaboration xmi.id="EAID_A1B83D59_CAE1_422c_BA5F_D3624D7156AD_Collaboration" name="Collaborations">
227
+ <UML:Namespace.ownedElement>
228
+ <UML:ClassifierRole name="Rooms" xmi.id="EAID_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08" visibility="public" base="EAID_11111111_5487_4080_A7F4_41526CB0AA00">
229
+ <UML:ModelElement.taggedValue>
230
+ <UML:TaggedValue tag="isSpecification" value="false"/>
231
+ <UML:TaggedValue tag="ea_stype" value="Package"/>
232
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
233
+ <UML:TaggedValue tag="version" value="1.0"/>
234
+ <UML:TaggedValue tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
235
+ <UML:TaggedValue tag="date_created" value="2006-06-23 08:28:49"/>
236
+ <UML:TaggedValue tag="date_modified" value="2006-06-23 08:28:49"/>
237
+ <UML:TaggedValue tag="gentype" value="Java"/>
238
+ <UML:TaggedValue tag="tagged" value="0"/>
239
+ <UML:TaggedValue tag="package2" value="EAID_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08"/>
240
+ <UML:TaggedValue tag="package_name" value="HouseMetamodel"/>
241
+ <UML:TaggedValue tag="phase" value="1.0"/>
242
+ <UML:TaggedValue tag="complexity" value="1"/>
243
+ <UML:TaggedValue tag="status" value="Proposed"/>
244
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
245
+ </UML:ModelElement.taggedValue>
246
+ </UML:ClassifierRole>
247
+ </UML:Namespace.ownedElement>
248
+ <UML:Collaboration.interaction/>
249
+ </UML:Collaboration>
250
+ <UML:Class name="Person" xmi.id="EAID_2F1D9CC6_F38F_4a34_B3C4_B92915108384" visibility="public" namespace="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD" isRoot="false" isLeaf="false" isAbstract="false" isActive="false">
251
+ <UML:ModelElement.taggedValue>
252
+ <UML:TaggedValue tag="isSpecification" value="false"/>
253
+ <UML:TaggedValue tag="ea_stype" value="Class"/>
254
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
255
+ <UML:TaggedValue tag="version" value="1.0"/>
256
+ <UML:TaggedValue tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
257
+ <UML:TaggedValue tag="date_created" value="2006-06-27 08:34:23"/>
258
+ <UML:TaggedValue tag="date_modified" value="2006-06-27 08:34:26"/>
259
+ <UML:TaggedValue tag="gentype" value="Java"/>
260
+ <UML:TaggedValue tag="tagged" value="0"/>
261
+ <UML:TaggedValue tag="package_name" value="HouseMetamodel"/>
262
+ <UML:TaggedValue tag="phase" value="1.0"/>
263
+ <UML:TaggedValue tag="complexity" value="1"/>
264
+ <UML:TaggedValue tag="status" value="Proposed"/>
265
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
266
+ </UML:ModelElement.taggedValue>
267
+ </UML:Class>
268
+ <UML:Comment xmi.id="EAID_9D7C072D_2F74_4348_B1D9_BA3CFA72FC6F" visibility="public" namespace="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD">
269
+ <UML:ModelElement.taggedValue>
270
+ <UML:TaggedValue tag="isSpecification" value="false"/>
271
+ <UML:TaggedValue tag="ea_stype" value="Note"/>
272
+ <UML:TaggedValue tag="ea_ntype" value="1"/>
273
+ <UML:TaggedValue tag="version" value="1.0"/>
274
+ <UML:TaggedValue tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
275
+ <UML:TaggedValue tag="date_created" value="2006-07-07 08:08:53"/>
276
+ <UML:TaggedValue tag="date_modified" value="2006-07-07 08:09:48"/>
277
+ <UML:TaggedValue tag="gentype" value="&lt;none&gt;"/>
278
+ <UML:TaggedValue tag="tagged" value="0"/>
279
+ <UML:TaggedValue tag="package_name" value="HouseMetamodel"/>
280
+ <UML:TaggedValue tag="phase" value="1.0"/>
281
+ <UML:TaggedValue tag="complexity" value="1"/>
282
+ <UML:TaggedValue tag="documentation" value="this aggregation is navigable from room to house (EA does not show it)"/>
283
+ <UML:TaggedValue tag="status" value="Proposed"/>
284
+ <UML:TaggedValue tag="relatedlinks" value="idref1=EAID_F15A2B25_0DA9_4203_8FC9_25645610B5E5;"/>
285
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
286
+ </UML:ModelElement.taggedValue>
287
+ </UML:Comment>
288
+ <UML:Class name="MeetingPlace" xmi.id="EAID_CB9E84D4_9064_49d0_BF1E_EE53C05853EF" visibility="public" namespace="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD" isRoot="false" isLeaf="false" isAbstract="false" isActive="false">
289
+ <UML:ModelElement.taggedValue>
290
+ <UML:TaggedValue tag="isSpecification" value="false"/>
291
+ <UML:TaggedValue tag="ea_stype" value="Class"/>
292
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
293
+ <UML:TaggedValue tag="version" value="1.0"/>
294
+ <UML:TaggedValue tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
295
+ <UML:TaggedValue tag="date_created" value="2006-07-12 08:40:46"/>
296
+ <UML:TaggedValue tag="date_modified" value="2007-06-14 08:22:21"/>
297
+ <UML:TaggedValue tag="gentype" value="Java"/>
298
+ <UML:TaggedValue tag="tagged" value="0"/>
299
+ <UML:TaggedValue tag="package_name" value="HouseMetamodel"/>
300
+ <UML:TaggedValue tag="phase" value="1.0"/>
301
+ <UML:TaggedValue tag="complexity" value="1"/>
302
+ <UML:TaggedValue tag="status" value="Proposed"/>
303
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
304
+ </UML:ModelElement.taggedValue>
305
+ </UML:Class>
306
+ <UML:Generalization subtype="EAID_9CE44C59_37E4_4117_8C05_F87C4DC33529" supertype="EAID_CB9E84D4_9064_49d0_BF1E_EE53C05853EF" xmi.id="EAID_E824691D_2AE7_4c9c_8408_881A2B85516F" visibility="public">
307
+ <UML:ModelElement.taggedValue>
308
+ <UML:TaggedValue tag="style" value="3"/>
309
+ <UML:TaggedValue tag="ea_type" value="Generalization"/>
310
+ <UML:TaggedValue tag="direction" value="Source -&gt; Destination"/>
311
+ <UML:TaggedValue tag="linemode" value="3"/>
312
+ <UML:TaggedValue tag="seqno" value="0"/>
313
+ <UML:TaggedValue tag="headStyle" value="0"/>
314
+ <UML:TaggedValue tag="lineStyle" value="0"/>
315
+ <UML:TaggedValue tag="src_visibility" value="Public"/>
316
+ <UML:TaggedValue tag="src_isOrdered" value="false"/>
317
+ <UML:TaggedValue tag="src_isNavigable" value="false"/>
318
+ <UML:TaggedValue tag="dst_visibility" value="Public"/>
319
+ <UML:TaggedValue tag="dst_isOrdered" value="false"/>
320
+ <UML:TaggedValue tag="dst_isNavigable" value="true"/>
321
+ <UML:TaggedValue tag="$ea_xref_property" value="$XREFPROP=$XID={8AAF19F7-EC93-4dda-ADD1-69A07CC671D7}$XID;$NAM=CustomProperties$NAM;$TYP=connector property$TYP;$VIS=Public$VIS;$DES=@PROP=@NAME=isSubstitutable@ENDNAME;@TYPE=boolean@ENDTYPE;@VALU=@ENDVALU;@PRMT=@ENDPRMT;@ENDPROP;$DES;$CLT={E824691D-2AE7-4c9c-8408-881A2B85516F}$CLT;$SUP=&lt;none&gt;$SUP;$ENDXREF;"/>
322
+ <UML:TaggedValue tag="privatedata5" value="SX=-24;SY=-16;"/>
323
+ </UML:ModelElement.taggedValue>
324
+ </UML:Generalization>
325
+ <UML:Interface name="CookingPlace" xmi.id="EAID_E21E535F_E300_4405_A917_28FFB4B2DB6E" visibility="public" namespace="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD" isRoot="false" isLeaf="false" isAbstract="true">
326
+ <UML:ModelElement.stereotype>
327
+ <UML:Stereotype name="interface"/>
328
+ </UML:ModelElement.stereotype>
329
+ <UML:ModelElement.taggedValue>
330
+ <UML:TaggedValue tag="isSpecification" value="false"/>
331
+ <UML:TaggedValue tag="ea_stype" value="Interface"/>
332
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
333
+ <UML:TaggedValue tag="version" value="1.0"/>
334
+ <UML:TaggedValue tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
335
+ <UML:TaggedValue tag="date_created" value="2007-06-14 08:22:21"/>
336
+ <UML:TaggedValue tag="date_modified" value="2007-06-14 08:23:36"/>
337
+ <UML:TaggedValue tag="gentype" value="Java"/>
338
+ <UML:TaggedValue tag="tagged" value="0"/>
339
+ <UML:TaggedValue tag="package_name" value="HouseMetamodel"/>
340
+ <UML:TaggedValue tag="phase" value="1.0"/>
341
+ <UML:TaggedValue tag="complexity" value="1"/>
342
+ <UML:TaggedValue tag="status" value="Proposed"/>
343
+ <UML:TaggedValue tag="stereotype" value="interface"/>
344
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
345
+ </UML:ModelElement.taggedValue>
346
+ </UML:Interface>
347
+ <UML:Dependency client="EAID_9CE44C59_37E4_4117_8C05_F87C4DC33529" supplier="EAID_E21E535F_E300_4405_A917_28FFB4B2DB6E" xmi.id="EAID_9613E9DD_8709_4e9e_92D8_2F6CA9835851" visibility="public">
348
+ <UML:ModelElement.stereotype>
349
+ <UML:Stereotype name="implements"/>
350
+ </UML:ModelElement.stereotype>
351
+ <UML:ModelElement.taggedValue>
352
+ <UML:TaggedValue tag="style" value="3"/>
353
+ <UML:TaggedValue tag="ea_type" value="Dependency"/>
354
+ <UML:TaggedValue tag="direction" value="Source -&gt; Destination"/>
355
+ <UML:TaggedValue tag="linemode" value="3"/>
356
+ <UML:TaggedValue tag="seqno" value="0"/>
357
+ <UML:TaggedValue tag="stereotype" value="implements"/>
358
+ <UML:TaggedValue tag="headStyle" value="0"/>
359
+ <UML:TaggedValue tag="lineStyle" value="0"/>
360
+ <UML:TaggedValue tag="conditional" value="�implements�"/>
361
+ <UML:TaggedValue tag="src_visibility" value="Public"/>
362
+ <UML:TaggedValue tag="src_aggregation" value="0"/>
363
+ <UML:TaggedValue tag="src_isOrdered" value="false"/>
364
+ <UML:TaggedValue tag="src_isNavigable" value="false"/>
365
+ <UML:TaggedValue tag="src_containment" value="Unspecified"/>
366
+ <UML:TaggedValue tag="dst_visibility" value="Public"/>
367
+ <UML:TaggedValue tag="dst_aggregation" value="0"/>
368
+ <UML:TaggedValue tag="dst_isOrdered" value="false"/>
369
+ <UML:TaggedValue tag="dst_isNavigable" value="true"/>
370
+ <UML:TaggedValue tag="dst_containment" value="Unspecified"/>
371
+ <UML:TaggedValue tag="virtualInheritance" value="0"/>
372
+ <UML:TaggedValue tag="mb" value="�implements�"/>
373
+ </UML:ModelElement.taggedValue>
374
+ </UML:Dependency>
375
+ <UML:Package name="Rooms" xmi.id="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08" isRoot="true" isLeaf="false" isAbstract="false" visibility="public">
376
+ <UML:ModelElement.name>Rooms</UML:ModelElement.name>
377
+ <UML:ModelElement.taggedValue>
378
+ <UML:TaggedValue tag="created" value="2006-06-23 00:00:00"/>
379
+ <UML:TaggedValue tag="modified" value="2006-06-23 00:00:00"/>
380
+ <UML:TaggedValue tag="iscontrolled" value="FALSE"/>
381
+ <UML:TaggedValue tag="isprotected" value="FALSE"/>
382
+ <UML:TaggedValue tag="usedtd" value="FALSE"/>
383
+ <UML:TaggedValue tag="logxml" value="FALSE"/>
384
+ <UML:TaggedValue tag="phase" value="1.0"/>
385
+ <UML:TaggedValue tag="status" value="Proposed"/>
386
+ <UML:TaggedValue tag="complexity" value="1"/>
387
+ <UML:TaggedValue tag="ea_stype" value="Public"/>
388
+ </UML:ModelElement.taggedValue>
389
+ <UML:Namespace.ownedElement>
390
+ <UML:Class name="Room" xmi.id="EAID_14DB5E54_CD7B_4c84_998C_44960049D7E0" visibility="public" namespace="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08" isRoot="false" isLeaf="false" isAbstract="false" isActive="false">
391
+ <UML:ModelElement.taggedValue>
392
+ <UML:TaggedValue tag="isSpecification" value="false"/>
393
+ <UML:TaggedValue tag="ea_stype" value="Class"/>
394
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
395
+ <UML:TaggedValue tag="version" value="1.0"/>
396
+ <UML:TaggedValue tag="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08"/>
397
+ <UML:TaggedValue tag="date_created" value="2005-09-16 19:52:28"/>
398
+ <UML:TaggedValue tag="date_modified" value="2006-06-22 21:15:25"/>
399
+ <UML:TaggedValue tag="gentype" value="Java"/>
400
+ <UML:TaggedValue tag="tagged" value="0"/>
401
+ <UML:TaggedValue tag="package_name" value="Rooms"/>
402
+ <UML:TaggedValue tag="phase" value="1.0"/>
403
+ <UML:TaggedValue tag="complexity" value="1"/>
404
+ <UML:TaggedValue tag="status" value="Proposed"/>
405
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
406
+ </UML:ModelElement.taggedValue>
407
+ <UML:Classifier.feature>
408
+ <UML:Operation name="enter" visibility="public" ownerScope="instance" isQuery="false" concurrency="sequential">
409
+ <UML:ModelElement.taggedValue>
410
+ <UML:TaggedValue tag="type" value="void"/>
411
+ <UML:TaggedValue tag="const" value="false"/>
412
+ <UML:TaggedValue tag="synchronised" value="0"/>
413
+ <UML:TaggedValue tag="concurrency" value="Sequential"/>
414
+ <UML:TaggedValue tag="position" value="0"/>
415
+ <UML:TaggedValue tag="returnarray" value="0"/>
416
+ <UML:TaggedValue tag="pure" value="0"/>
417
+ <UML:TaggedValue tag="ea_guid" value="{A8C01177-4523-44c4-87F7-F2B8F9F3C915}"/>
418
+ </UML:ModelElement.taggedValue>
419
+ <UML:BehavioralFeature.parameter>
420
+ <UML:Parameter kind="return" visibility="public">
421
+ <UML:Parameter.type>
422
+ <UML:Classifier xmi.idref="eaxmiid1"/>
423
+ </UML:Parameter.type>
424
+ <UML:ModelElement.taggedValue>
425
+ <UML:TaggedValue tag="pos" value="0"/>
426
+ <UML:TaggedValue tag="type" value="void"/>
427
+ <UML:TaggedValue tag="const" value="0"/>
428
+ <UML:TaggedValue tag="ea_guid" value="{A8C01177-4523-44c4-87F7-F2B8F9F3C915}"/>
429
+ </UML:ModelElement.taggedValue>
430
+ <UML:Parameter.defaultValue>
431
+ <UML:Expression/>
432
+ </UML:Parameter.defaultValue>
433
+ </UML:Parameter>
434
+ </UML:BehavioralFeature.parameter>
435
+ </UML:Operation>
436
+ </UML:Classifier.feature>
437
+ </UML:Class>
438
+ <UML:Generalization subtype="EAID_244CC9E5_1F81_4164_9215_C048EC679543" supertype="EAID_14DB5E54_CD7B_4c84_998C_44960049D7E0" xmi.id="EAID_03052911_3625_4472_8C6B_5E1742FED753" visibility="public">
439
+ <UML:ModelElement.taggedValue>
440
+ <UML:TaggedValue tag="style" value="3"/>
441
+ <UML:TaggedValue tag="ea_type" value="Generalization"/>
442
+ <UML:TaggedValue tag="direction" value="Source -&gt; Destination"/>
443
+ <UML:TaggedValue tag="linemode" value="3"/>
444
+ <UML:TaggedValue tag="seqno" value="0"/>
445
+ <UML:TaggedValue tag="headStyle" value="0"/>
446
+ <UML:TaggedValue tag="lineStyle" value="0"/>
447
+ <UML:TaggedValue tag="src_visibility" value="Public"/>
448
+ <UML:TaggedValue tag="src_isOrdered" value="false"/>
449
+ <UML:TaggedValue tag="src_isNavigable" value="false"/>
450
+ <UML:TaggedValue tag="dst_visibility" value="Public"/>
451
+ <UML:TaggedValue tag="dst_isOrdered" value="false"/>
452
+ <UML:TaggedValue tag="dst_isNavigable" value="true"/>
453
+ <UML:TaggedValue tag="$ea_xref_property" value="$XREFPROP=$XID={DF243A69-1029-4c4c-A1A0-C821A1DF9623}$XID;$NAM=CustomProperties$NAM;$TYP=connector property$TYP;$VIS=Public$VIS;$DES=@PROP=@NAME=isSubstitutable@ENDNAME;@TYPE=boolean@ENDTYPE;@VALU=@ENDVALU;@PRMT=@ENDPRMT;@ENDPROP;$DES;$CLT={03052911-3625-4472-8C6B-5E1742FED753}$CLT;$SUP=&lt;none&gt;$SUP;$ENDXREF;"/>
454
+ </UML:ModelElement.taggedValue>
455
+ </UML:Generalization>
456
+ <UML:Generalization subtype="EAID_9CE44C59_37E4_4117_8C05_F87C4DC33529" supertype="EAID_14DB5E54_CD7B_4c84_998C_44960049D7E0" xmi.id="EAID_C3D18D92_3A5C_4112_9958_926A259BAE24" visibility="public">
457
+ <UML:ModelElement.taggedValue>
458
+ <UML:TaggedValue tag="style" value="3"/>
459
+ <UML:TaggedValue tag="ea_type" value="Generalization"/>
460
+ <UML:TaggedValue tag="direction" value="Source -&gt; Destination"/>
461
+ <UML:TaggedValue tag="linemode" value="3"/>
462
+ <UML:TaggedValue tag="seqno" value="0"/>
463
+ <UML:TaggedValue tag="headStyle" value="0"/>
464
+ <UML:TaggedValue tag="lineStyle" value="0"/>
465
+ <UML:TaggedValue tag="src_visibility" value="Public"/>
466
+ <UML:TaggedValue tag="src_isOrdered" value="false"/>
467
+ <UML:TaggedValue tag="src_isNavigable" value="false"/>
468
+ <UML:TaggedValue tag="dst_visibility" value="Public"/>
469
+ <UML:TaggedValue tag="dst_isOrdered" value="false"/>
470
+ <UML:TaggedValue tag="dst_isNavigable" value="true"/>
471
+ <UML:TaggedValue tag="$ea_xref_property" value="$XREFPROP=$XID={DB1C706A-470A-45ed-89DA-601821419545}$XID;$NAM=CustomProperties$NAM;$TYP=connector property$TYP;$VIS=Public$VIS;$DES=@PROP=@NAME=isSubstitutable@ENDNAME;@TYPE=boolean@ENDTYPE;@VALU=@ENDVALU;@PRMT=@ENDPRMT;@ENDPROP;$DES;$CLT={C3D18D92-3A5C-4112-9958-926A259BAE24}$CLT;$SUP=&lt;none&gt;$SUP;$ENDXREF;"/>
472
+ <UML:TaggedValue tag="privatedata5" value="EX=37;EY=3;"/>
473
+ </UML:ModelElement.taggedValue>
474
+ </UML:Generalization>
475
+ <UML:Class name="Kitchen" xmi.id="EAID_9CE44C59_37E4_4117_8C05_F87C4DC33529" visibility="public" namespace="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08" isRoot="false" isLeaf="false" isAbstract="false" isActive="false">
476
+ <UML:ModelElement.taggedValue>
477
+ <UML:TaggedValue tag="isSpecification" value="false"/>
478
+ <UML:TaggedValue tag="ea_stype" value="Class"/>
479
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
480
+ <UML:TaggedValue tag="version" value="1.0"/>
481
+ <UML:TaggedValue tag="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08"/>
482
+ <UML:TaggedValue tag="date_created" value="2005-11-30 19:26:13"/>
483
+ <UML:TaggedValue tag="date_modified" value="2006-06-22 21:15:34"/>
484
+ <UML:TaggedValue tag="gentype" value="Java"/>
485
+ <UML:TaggedValue tag="tagged" value="0"/>
486
+ <UML:TaggedValue tag="package_name" value="Rooms"/>
487
+ <UML:TaggedValue tag="phase" value="1.0"/>
488
+ <UML:TaggedValue tag="complexity" value="1"/>
489
+ <UML:TaggedValue tag="status" value="Proposed"/>
490
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
491
+ </UML:ModelElement.taggedValue>
492
+ </UML:Class>
493
+ <UML:Class name="Bathroom" xmi.id="EAID_244CC9E5_1F81_4164_9215_C048EC679543" visibility="public" namespace="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08" isRoot="false" isLeaf="false" isAbstract="false" isActive="false">
494
+ <UML:ModelElement.taggedValue>
495
+ <UML:TaggedValue tag="isSpecification" value="false"/>
496
+ <UML:TaggedValue tag="ea_stype" value="Class"/>
497
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
498
+ <UML:TaggedValue tag="version" value="1.0"/>
499
+ <UML:TaggedValue tag="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08"/>
500
+ <UML:TaggedValue tag="date_created" value="2006-06-27 08:32:25"/>
501
+ <UML:TaggedValue tag="date_modified" value="2006-06-27 08:34:23"/>
502
+ <UML:TaggedValue tag="gentype" value="Java"/>
503
+ <UML:TaggedValue tag="tagged" value="0"/>
504
+ <UML:TaggedValue tag="package_name" value="Rooms"/>
505
+ <UML:TaggedValue tag="phase" value="1.0"/>
506
+ <UML:TaggedValue tag="complexity" value="1"/>
507
+ <UML:TaggedValue tag="status" value="Proposed"/>
508
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
509
+ </UML:ModelElement.taggedValue>
510
+ </UML:Class>
511
+ </UML:Namespace.ownedElement>
512
+ </UML:Package>
513
+ </UML:Namespace.ownedElement>
514
+ </UML:Package>
515
+ <UML:Package name="HouseExampleModel" xmi.id="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7" isRoot="true" isLeaf="false" isAbstract="false" visibility="public">
516
+ <UML:ModelElement.name>HouseExampleModel</UML:ModelElement.name>
517
+ <UML:ModelElement.taggedValue>
518
+ <UML:TaggedValue tag="created" value="2006-07-20 00:00:00"/>
519
+ <UML:TaggedValue tag="modified" value="2006-07-20 00:00:00"/>
520
+ <UML:TaggedValue tag="iscontrolled" value="FALSE"/>
521
+ <UML:TaggedValue tag="isprotected" value="FALSE"/>
522
+ <UML:TaggedValue tag="usedtd" value="FALSE"/>
523
+ <UML:TaggedValue tag="logxml" value="FALSE"/>
524
+ <UML:TaggedValue tag="ea_package_id" value="46"/>
525
+ <UML:TaggedValue tag="phase" value="1.0"/>
526
+ <UML:TaggedValue tag="status" value="Proposed"/>
527
+ <UML:TaggedValue tag="complexity" value="1"/>
528
+ <UML:TaggedValue tag="ea_stype" value="Public"/>
529
+ </UML:ModelElement.taggedValue>
530
+ <UML:Namespace.ownedElement>
531
+ <UML:Collaboration xmi.id="EAID_06C9C958_C14A_41f4_89A9_6873CCED37A7_Collaboration" name="Collaborations">
532
+ <UML:Namespace.ownedElement>
533
+ <UML:ClassifierRole name="SomeonesHouse" xmi.id="EAID_3D59084A_BBC6_4d6b_B8E5_9A764D27563B" visibility="public" base="EAID_11111111_5487_4080_A7F4_41526CB0AA00">
534
+ <UML:ModelElement.taggedValue>
535
+ <UML:TaggedValue tag="isSpecification" value="false"/>
536
+ <UML:TaggedValue tag="ea_stype" value="Object"/>
537
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
538
+ <UML:TaggedValue tag="version" value="1.0"/>
539
+ <UML:TaggedValue tag="classifier" value="EAID_436D81AD_A9B0_44d8_8AD1_86BB0808DA32"/>
540
+ <UML:TaggedValue tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
541
+ <UML:TaggedValue tag="classname" value="House"/>
542
+ <UML:TaggedValue tag="date_created" value="2006-07-20 18:35:22"/>
543
+ <UML:TaggedValue tag="date_modified" value="2006-07-21 19:34:53"/>
544
+ <UML:TaggedValue tag="gentype" value="Java"/>
545
+ <UML:TaggedValue tag="tagged" value="0"/>
546
+ <UML:TaggedValue tag="package_name" value="HouseExampleModel"/>
547
+ <UML:TaggedValue tag="phase" value="1.0"/>
548
+ <UML:TaggedValue tag="complexity" value="1"/>
549
+ <UML:TaggedValue tag="status" value="Proposed"/>
550
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
551
+ </UML:ModelElement.taggedValue>
552
+ </UML:ClassifierRole>
553
+ <UML:AssociationRole xmi.id="EAID_AFD66AB6_337B_49c5_9FA9_0CFAFEB77AA7" visibility="public" isRoot="false" isLeaf="false" isAbstract="false">
554
+ <UML:ModelElement.taggedValue>
555
+ <UML:TaggedValue tag="style" value="3"/>
556
+ <UML:TaggedValue tag="ea_type" value="Association"/>
557
+ <UML:TaggedValue tag="direction" value="Unspecified"/>
558
+ <UML:TaggedValue tag="linemode" value="3"/>
559
+ <UML:TaggedValue tag="seqno" value="0"/>
560
+ <UML:TaggedValue tag="headStyle" value="0"/>
561
+ <UML:TaggedValue tag="lineStyle" value="0"/>
562
+ <UML:TaggedValue tag="src_visibility" value="Public"/>
563
+ <UML:TaggedValue tag="src_aggregation" value="0"/>
564
+ <UML:TaggedValue tag="src_isOrdered" value="false"/>
565
+ <UML:TaggedValue tag="src_isNavigable" value="true"/>
566
+ <UML:TaggedValue tag="src_containment" value="Unspecified"/>
567
+ <UML:TaggedValue tag="dst_visibility" value="Public"/>
568
+ <UML:TaggedValue tag="dst_name" value="home"/>
569
+ <UML:TaggedValue tag="dst_aggregation" value="0"/>
570
+ <UML:TaggedValue tag="dst_isOrdered" value="false"/>
571
+ <UML:TaggedValue tag="dst_isNavigable" value="true"/>
572
+ <UML:TaggedValue tag="dst_containment" value="Unspecified"/>
573
+ <UML:TaggedValue tag="virtualInheritance" value="0"/>
574
+ </UML:ModelElement.taggedValue>
575
+ <UML:Association.connection>
576
+ <UML:AssociationEndRole visibility="public" aggregation="none" isOrdered="false" isNavigable="true" type="EAID_960E757D_3D81_43e2_BA2E_5F7341421EA5">
577
+ <UML:ModelElement.taggedValue>
578
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
579
+ </UML:ModelElement.taggedValue>
580
+ </UML:AssociationEndRole>
581
+ <UML:AssociationEndRole visibility="public" name="home" aggregation="none" isOrdered="false" isNavigable="true" type="EAID_3D59084A_BBC6_4d6b_B8E5_9A764D27563B">
582
+ <UML:ModelElement.taggedValue>
583
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
584
+ </UML:ModelElement.taggedValue>
585
+ </UML:AssociationEndRole>
586
+ </UML:Association.connection>
587
+ </UML:AssociationRole>
588
+ <UML:ClassifierRole name="GreenRoom" xmi.id="EAID_597D270D_65EB_4941_908B_A42419BD7C3F" visibility="public" base="EAID_11111111_5487_4080_A7F4_41526CB0AA00">
589
+ <UML:ModelElement.taggedValue>
590
+ <UML:TaggedValue tag="isSpecification" value="false"/>
591
+ <UML:TaggedValue tag="ea_stype" value="Object"/>
592
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
593
+ <UML:TaggedValue tag="version" value="1.0"/>
594
+ <UML:TaggedValue tag="classifier" value="EAID_14DB5E54_CD7B_4c84_998C_44960049D7E0"/>
595
+ <UML:TaggedValue tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
596
+ <UML:TaggedValue tag="classname" value="Room"/>
597
+ <UML:TaggedValue tag="date_created" value="2006-07-20 18:35:32"/>
598
+ <UML:TaggedValue tag="date_modified" value="2006-07-21 19:34:11"/>
599
+ <UML:TaggedValue tag="gentype" value="Java"/>
600
+ <UML:TaggedValue tag="tagged" value="0"/>
601
+ <UML:TaggedValue tag="package_name" value="HouseExampleModel"/>
602
+ <UML:TaggedValue tag="phase" value="1.0"/>
603
+ <UML:TaggedValue tag="complexity" value="1"/>
604
+ <UML:TaggedValue tag="status" value="Proposed"/>
605
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
606
+ </UML:ModelElement.taggedValue>
607
+ </UML:ClassifierRole>
608
+ <UML:ClassifierRole name="YellowRoom" xmi.id="EAID_5D770C43_247F_41e6_BC35_93C5A9204E76" visibility="public" base="EAID_11111111_5487_4080_A7F4_41526CB0AA00">
609
+ <UML:ModelElement.taggedValue>
610
+ <UML:TaggedValue tag="isSpecification" value="false"/>
611
+ <UML:TaggedValue tag="ea_stype" value="Object"/>
612
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
613
+ <UML:TaggedValue tag="version" value="1.0"/>
614
+ <UML:TaggedValue tag="classifier" value="EAID_14DB5E54_CD7B_4c84_998C_44960049D7E0"/>
615
+ <UML:TaggedValue tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
616
+ <UML:TaggedValue tag="classname" value="Room"/>
617
+ <UML:TaggedValue tag="date_created" value="2006-07-21 19:22:58"/>
618
+ <UML:TaggedValue tag="date_modified" value="2006-07-21 19:34:27"/>
619
+ <UML:TaggedValue tag="gentype" value="Java"/>
620
+ <UML:TaggedValue tag="tagged" value="0"/>
621
+ <UML:TaggedValue tag="package_name" value="HouseExampleModel"/>
622
+ <UML:TaggedValue tag="phase" value="1.0"/>
623
+ <UML:TaggedValue tag="complexity" value="1"/>
624
+ <UML:TaggedValue tag="status" value="Proposed"/>
625
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
626
+ </UML:ModelElement.taggedValue>
627
+ </UML:ClassifierRole>
628
+ <UML:ClassifierRole name="HotRoom" xmi.id="EAID_9907C98A_7E63_47dc_8A4D_ED020B68C41D" visibility="public" base="EAID_11111111_5487_4080_A7F4_41526CB0AA00">
629
+ <UML:ModelElement.taggedValue>
630
+ <UML:TaggedValue tag="isSpecification" value="false"/>
631
+ <UML:TaggedValue tag="ea_stype" value="Object"/>
632
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
633
+ <UML:TaggedValue tag="version" value="1.0"/>
634
+ <UML:TaggedValue tag="classifier" value="EAID_9CE44C59_37E4_4117_8C05_F87C4DC33529"/>
635
+ <UML:TaggedValue tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
636
+ <UML:TaggedValue tag="classname" value="Kitchen"/>
637
+ <UML:TaggedValue tag="date_created" value="2006-07-21 19:27:21"/>
638
+ <UML:TaggedValue tag="date_modified" value="2006-07-21 19:33:56"/>
639
+ <UML:TaggedValue tag="gentype" value="Java"/>
640
+ <UML:TaggedValue tag="tagged" value="0"/>
641
+ <UML:TaggedValue tag="package_name" value="HouseExampleModel"/>
642
+ <UML:TaggedValue tag="phase" value="1.0"/>
643
+ <UML:TaggedValue tag="complexity" value="1"/>
644
+ <UML:TaggedValue tag="status" value="Proposed"/>
645
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
646
+ </UML:ModelElement.taggedValue>
647
+ </UML:ClassifierRole>
648
+ <UML:ClassifierRole name="Someone" xmi.id="EAID_960E757D_3D81_43e2_BA2E_5F7341421EA5" visibility="public" base="EAID_11111111_5487_4080_A7F4_41526CB0AA00">
649
+ <UML:ModelElement.taggedValue>
650
+ <UML:TaggedValue tag="isSpecification" value="false"/>
651
+ <UML:TaggedValue tag="ea_stype" value="Object"/>
652
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
653
+ <UML:TaggedValue tag="version" value="1.0"/>
654
+ <UML:TaggedValue tag="classifier" value="EAID_2F1D9CC6_F38F_4a34_B3C4_B92915108384"/>
655
+ <UML:TaggedValue tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
656
+ <UML:TaggedValue tag="classname" value="Person"/>
657
+ <UML:TaggedValue tag="date_created" value="2006-07-21 19:29:45"/>
658
+ <UML:TaggedValue tag="date_modified" value="2006-07-21 19:35:00"/>
659
+ <UML:TaggedValue tag="gentype" value="Java"/>
660
+ <UML:TaggedValue tag="tagged" value="0"/>
661
+ <UML:TaggedValue tag="package_name" value="HouseExampleModel"/>
662
+ <UML:TaggedValue tag="phase" value="1.0"/>
663
+ <UML:TaggedValue tag="complexity" value="1"/>
664
+ <UML:TaggedValue tag="status" value="Proposed"/>
665
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
666
+ </UML:ModelElement.taggedValue>
667
+ </UML:ClassifierRole>
668
+ <UML:ClassifierRole name="WetRoom" xmi.id="EAID_783325F8_9AA7_4836_A0D9_DDA9103CDC71" visibility="public" base="EAID_11111111_5487_4080_A7F4_41526CB0AA00">
669
+ <UML:ModelElement.taggedValue>
670
+ <UML:TaggedValue tag="isSpecification" value="false"/>
671
+ <UML:TaggedValue tag="ea_stype" value="Object"/>
672
+ <UML:TaggedValue tag="ea_ntype" value="0"/>
673
+ <UML:TaggedValue tag="version" value="1.0"/>
674
+ <UML:TaggedValue tag="classifier" value="EAID_244CC9E5_1F81_4164_9215_C048EC679543"/>
675
+ <UML:TaggedValue tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
676
+ <UML:TaggedValue tag="classname" value="Bathroom"/>
677
+ <UML:TaggedValue tag="date_created" value="2006-07-21 19:31:18"/>
678
+ <UML:TaggedValue tag="date_modified" value="2006-07-21 19:34:02"/>
679
+ <UML:TaggedValue tag="gentype" value="Java"/>
680
+ <UML:TaggedValue tag="tagged" value="0"/>
681
+ <UML:TaggedValue tag="package_name" value="HouseExampleModel"/>
682
+ <UML:TaggedValue tag="phase" value="1.0"/>
683
+ <UML:TaggedValue tag="complexity" value="1"/>
684
+ <UML:TaggedValue tag="status" value="Proposed"/>
685
+ <UML:TaggedValue tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
686
+ </UML:ModelElement.taggedValue>
687
+ </UML:ClassifierRole>
688
+ </UML:Namespace.ownedElement>
689
+ <UML:Collaboration.interaction/>
690
+ </UML:Collaboration>
691
+ <UML:Association xmi.id="EAID_3F0E9949_A749_4958_9A1B_40E3F0E12393" visibility="public" isRoot="false" isLeaf="false" isAbstract="false">
692
+ <UML:ModelElement.taggedValue>
693
+ <UML:TaggedValue tag="style" value="3"/>
694
+ <UML:TaggedValue tag="ea_type" value="Aggregation"/>
695
+ <UML:TaggedValue tag="direction" value="Source -&gt; Destination"/>
696
+ <UML:TaggedValue tag="linemode" value="3"/>
697
+ <UML:TaggedValue tag="seqno" value="0"/>
698
+ <UML:TaggedValue tag="subtype" value="Strong"/>
699
+ <UML:TaggedValue tag="headStyle" value="0"/>
700
+ <UML:TaggedValue tag="lineStyle" value="0"/>
701
+ <UML:TaggedValue tag="virtualInheritance" value="0"/>
702
+ </UML:ModelElement.taggedValue>
703
+ <UML:Association.connection>
704
+ <UML:AssociationEnd visibility="public" name="room" aggregation="none" isOrdered="false" isNavigable="false" type="EAID_597D270D_65EB_4941_908B_A42419BD7C3F">
705
+ <UML:ModelElement.taggedValue>
706
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
707
+ </UML:ModelElement.taggedValue>
708
+ </UML:AssociationEnd>
709
+ <UML:AssociationEnd visibility="public" aggregation="composite" isOrdered="false" isNavigable="true" type="EAID_3D59084A_BBC6_4d6b_B8E5_9A764D27563B">
710
+ <UML:ModelElement.taggedValue>
711
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
712
+ </UML:ModelElement.taggedValue>
713
+ </UML:AssociationEnd>
714
+ </UML:Association.connection>
715
+ </UML:Association>
716
+ <UML:Association xmi.id="EAID_9DDBD985_D9D5_408c_A8F4_40085F2E8E5B" visibility="public" isRoot="false" isLeaf="false" isAbstract="false">
717
+ <UML:ModelElement.taggedValue>
718
+ <UML:TaggedValue tag="style" value="3"/>
719
+ <UML:TaggedValue tag="ea_type" value="Aggregation"/>
720
+ <UML:TaggedValue tag="direction" value="Source -&gt; Destination"/>
721
+ <UML:TaggedValue tag="linemode" value="3"/>
722
+ <UML:TaggedValue tag="seqno" value="0"/>
723
+ <UML:TaggedValue tag="subtype" value="Strong"/>
724
+ <UML:TaggedValue tag="headStyle" value="0"/>
725
+ <UML:TaggedValue tag="lineStyle" value="0"/>
726
+ <UML:TaggedValue tag="virtualInheritance" value="0"/>
727
+ </UML:ModelElement.taggedValue>
728
+ <UML:Association.connection>
729
+ <UML:AssociationEnd visibility="public" name="room" aggregation="none" isOrdered="false" isNavigable="false" type="EAID_9907C98A_7E63_47dc_8A4D_ED020B68C41D">
730
+ <UML:ModelElement.taggedValue>
731
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
732
+ </UML:ModelElement.taggedValue>
733
+ </UML:AssociationEnd>
734
+ <UML:AssociationEnd visibility="public" aggregation="composite" isOrdered="false" isNavigable="true" type="EAID_3D59084A_BBC6_4d6b_B8E5_9A764D27563B">
735
+ <UML:ModelElement.taggedValue>
736
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
737
+ </UML:ModelElement.taggedValue>
738
+ </UML:AssociationEnd>
739
+ </UML:Association.connection>
740
+ </UML:Association>
741
+ <UML:Association xmi.id="EAID_D775B2C1_C7AF_4a19_A4D5_7B3AC816664C" visibility="public" isRoot="false" isLeaf="false" isAbstract="false">
742
+ <UML:ModelElement.taggedValue>
743
+ <UML:TaggedValue tag="style" value="3"/>
744
+ <UML:TaggedValue tag="ea_type" value="Aggregation"/>
745
+ <UML:TaggedValue tag="direction" value="Source -&gt; Destination"/>
746
+ <UML:TaggedValue tag="linemode" value="3"/>
747
+ <UML:TaggedValue tag="seqno" value="0"/>
748
+ <UML:TaggedValue tag="subtype" value="Strong"/>
749
+ <UML:TaggedValue tag="headStyle" value="0"/>
750
+ <UML:TaggedValue tag="lineStyle" value="0"/>
751
+ <UML:TaggedValue tag="virtualInheritance" value="0"/>
752
+ </UML:ModelElement.taggedValue>
753
+ <UML:Association.connection>
754
+ <UML:AssociationEnd visibility="public" name="room" aggregation="none" isOrdered="false" isNavigable="false" type="EAID_5D770C43_247F_41e6_BC35_93C5A9204E76">
755
+ <UML:ModelElement.taggedValue>
756
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
757
+ </UML:ModelElement.taggedValue>
758
+ </UML:AssociationEnd>
759
+ <UML:AssociationEnd visibility="public" aggregation="composite" isOrdered="false" isNavigable="true" type="EAID_3D59084A_BBC6_4d6b_B8E5_9A764D27563B">
760
+ <UML:ModelElement.taggedValue>
761
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
762
+ </UML:ModelElement.taggedValue>
763
+ </UML:AssociationEnd>
764
+ </UML:Association.connection>
765
+ </UML:Association>
766
+ <UML:Association xmi.id="EAID_FF2ECD20_22FF_4734_9DB4_8316A98DDC16" visibility="public" isRoot="false" isLeaf="false" isAbstract="false">
767
+ <UML:ModelElement.taggedValue>
768
+ <UML:TaggedValue tag="style" value="3"/>
769
+ <UML:TaggedValue tag="ea_type" value="Aggregation"/>
770
+ <UML:TaggedValue tag="direction" value="Source -&gt; Destination"/>
771
+ <UML:TaggedValue tag="linemode" value="3"/>
772
+ <UML:TaggedValue tag="seqno" value="0"/>
773
+ <UML:TaggedValue tag="subtype" value="Strong"/>
774
+ <UML:TaggedValue tag="headStyle" value="0"/>
775
+ <UML:TaggedValue tag="lineStyle" value="0"/>
776
+ <UML:TaggedValue tag="privatedata5" value="SX=36;SY=-9;EX=45;EY=-9;"/>
777
+ <UML:TaggedValue tag="virtualInheritance" value="0"/>
778
+ </UML:ModelElement.taggedValue>
779
+ <UML:Association.connection>
780
+ <UML:AssociationEnd visibility="public" name="room" aggregation="none" isOrdered="false" isNavigable="false" type="EAID_783325F8_9AA7_4836_A0D9_DDA9103CDC71">
781
+ <UML:ModelElement.taggedValue>
782
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
783
+ </UML:ModelElement.taggedValue>
784
+ </UML:AssociationEnd>
785
+ <UML:AssociationEnd visibility="public" aggregation="composite" isOrdered="false" isNavigable="true" type="EAID_3D59084A_BBC6_4d6b_B8E5_9A764D27563B">
786
+ <UML:ModelElement.taggedValue>
787
+ <UML:TaggedValue tag="containment" value="Unspecified"/>
788
+ </UML:ModelElement.taggedValue>
789
+ </UML:AssociationEnd>
790
+ </UML:Association.connection>
791
+ </UML:Association>
792
+ </UML:Namespace.ownedElement>
793
+ </UML:Package>
794
+ </UML:Namespace.ownedElement>
795
+ </UML:Package>
796
+ <UML:DataType xmi.id="eaxmiid0" name="String" visibility="private" isRoot="false" isLeaf="false" isAbstract="false"/>
797
+ <UML:DataType xmi.id="eaxmiid1" name="void" visibility="private" isRoot="false" isLeaf="false" isAbstract="false"/>
798
+ </UML:Namespace.ownedElement>
799
+ </UML:Model>
800
+ <UML:DiagramElement geometry="Left=260;Top=103;Right=359;Bottom=173;" subject="EAID_436D81AD_A9B0_44d8_8AD1_86BB0808DA32" seqno="7" style="DUID=CDDEF3BC;LBL=;">
801
+ <UML:ModelElement.taggedValue>
802
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
803
+ </UML:ModelElement.taggedValue>
804
+ </UML:DiagramElement>
805
+ <UML:DiagramElement geometry="Left=472;Top=163;Right=562;Bottom=233;" subject="EAID_2F1D9CC6_F38F_4a34_B3C4_B92915108384" seqno="3" style="DUID=12DDDFF9;LBL=;">
806
+ <UML:ModelElement.taggedValue>
807
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
808
+ </UML:ModelElement.taggedValue>
809
+ </UML:DiagramElement>
810
+ <UML:DiagramElement geometry="Left=415;Top=252;Right=530;Bottom=323;" subject="EAID_9D7C072D_2F74_4348_B1D9_BA3CFA72FC6F" seqno="8" style="DUID=FAD2A1B5;LBL=;">
811
+ <UML:ModelElement.taggedValue>
812
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
813
+ </UML:ModelElement.taggedValue>
814
+ </UML:DiagramElement>
815
+ <UML:DiagramElement geometry="Left=21;Top=241;Right=111;Bottom=311;" subject="EAID_CB9E84D4_9064_49d0_BF1E_EE53C05853EF" seqno="2" style="DUID=E58486A8;LBL=;">
816
+ <UML:ModelElement.taggedValue>
817
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
818
+ </UML:ModelElement.taggedValue>
819
+ </UML:DiagramElement>
820
+ <UML:DiagramElement geometry="Left=108;Top=132;Right=198;Bottom=222;" subject="EAID_E21E535F_E300_4405_A917_28FFB4B2DB6E" seqno="1" style="DUID=1CE36E20;">
821
+ <UML:ModelElement.taggedValue>
822
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
823
+ </UML:ModelElement.taggedValue>
824
+ </UML:DiagramElement>
825
+ <UML:DiagramElement geometry="Left=265;Top=280;Right=355;Bottom=350;" subject="EAID_14DB5E54_CD7B_4c84_998C_44960049D7E0" seqno="6" style="DUID=BFDAC143;LBL=;">
826
+ <UML:ModelElement.taggedValue>
827
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
828
+ </UML:ModelElement.taggedValue>
829
+ </UML:DiagramElement>
830
+ <UML:DiagramElement geometry="Left=145;Top=402;Right=235;Bottom=472;" subject="EAID_9CE44C59_37E4_4117_8C05_F87C4DC33529" seqno="5" style="DUID=BDEA24A9;LBL=;">
831
+ <UML:ModelElement.taggedValue>
832
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
833
+ </UML:ModelElement.taggedValue>
834
+ </UML:DiagramElement>
835
+ <UML:DiagramElement geometry="Left=394;Top=412;Right=484;Bottom=482;" subject="EAID_244CC9E5_1F81_4164_9215_C048EC679543" seqno="4" style="DUID=5DECEEC9;LBL=;">
836
+ <UML:ModelElement.taggedValue>
837
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
838
+ </UML:ModelElement.taggedValue>
839
+ </UML:DiagramElement>
840
+ <UML:DiagramElement geometry="Left=242;Top=137;Right=530;Bottom=187;" subject="EAID_3D59084A_BBC6_4d6b_B8E5_9A764D27563B" seqno="6" style="DUID=3D79E0A4;">
841
+ <UML:ModelElement.taggedValue>
842
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
843
+ </UML:ModelElement.taggedValue>
844
+ </UML:DiagramElement>
845
+ <UML:DiagramElement geometry="Left=145;Top=288;Right=235;Bottom=338;" subject="EAID_597D270D_65EB_4941_908B_A42419BD7C3F" seqno="5" style="DUID=E585EE32;">
846
+ <UML:ModelElement.taggedValue>
847
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
848
+ </UML:ModelElement.taggedValue>
849
+ </UML:DiagramElement>
850
+ <UML:DiagramElement geometry="Left=279;Top=289;Right=369;Bottom=339;" subject="EAID_5D770C43_247F_41e6_BC35_93C5A9204E76" seqno="4" style="DUID=DFC93F21;">
851
+ <UML:ModelElement.taggedValue>
852
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
853
+ </UML:ModelElement.taggedValue>
854
+ </UML:DiagramElement>
855
+ <UML:DiagramElement geometry="Left=414;Top=289;Right=504;Bottom=339;" subject="EAID_9907C98A_7E63_47dc_8A4D_ED020B68C41D" seqno="3" style="DUID=EE2397B7;">
856
+ <UML:ModelElement.taggedValue>
857
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
858
+ </UML:ModelElement.taggedValue>
859
+ </UML:DiagramElement>
860
+ <UML:DiagramElement geometry="Left=46;Top=136;Right=136;Bottom=186;" subject="EAID_960E757D_3D81_43e2_BA2E_5F7341421EA5" seqno="2" style="DUID=31760B86;">
861
+ <UML:ModelElement.taggedValue>
862
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
863
+ </UML:ModelElement.taggedValue>
864
+ </UML:DiagramElement>
865
+ <UML:DiagramElement geometry="Left=543;Top=289;Right=633;Bottom=339;" subject="EAID_783325F8_9AA7_4836_A0D9_DDA9103CDC71" seqno="1" style="DUID=81FBAF85;">
866
+ <UML:ModelElement.taggedValue>
867
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
868
+ </UML:ModelElement.taggedValue>
869
+ </UML:DiagramElement>
870
+ <UML:DiagramElement geometry="SX=8;SY=5;EX=8;EY=5;EDGE=3;$LLB=;LLT=;LMT=;LMB=;LRT=CX=61:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LRB=CX=16:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;" subject="EAID_161BF4FA_8F48_441f_AF1F_D36014D57A1F" style="Mode=3;EOID=5DECEEC9;SOID=CDDEF3BC;">
871
+ <UML:ModelElement.taggedValue>
872
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
873
+ <UML:TaggedValue tag="hidden" value="0"/>
874
+ </UML:ModelElement.taggedValue>
875
+ </UML:DiagramElement>
876
+ <UML:DiagramElement geometry="SX=6;SY=-12;EX=-44;EY=-9;EDGE=1;$LLB=CX=16:CY=15:OX=13:OY=-3:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LLT=CX=49:CY=15:OX=0:OY=-14:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LMT=;LMB=;LRT=CX=44:CY=15:OX=-10:OY=-1:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LRB=CX=16:CY=15:OX=-23:OY=-4:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;" subject="EAID_9F0FF178_300F_45f4_B31F_9633AF770E44" style="Mode=3;EOID=CDDEF3BC;SOID=BDEA24A9;">
877
+ <UML:ModelElement.taggedValue>
878
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
879
+ <UML:TaggedValue tag="hidden" value="0"/>
880
+ </UML:ModelElement.taggedValue>
881
+ </UML:DiagramElement>
882
+ <UML:DiagramElement geometry="EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=CX=43:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LRB=CX=26:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;" subject="EAID_A9112D1C_DCB6_4040_B466_D5F560898B33" style="Mode=3;EOID=CDDEF3BC;SOID=12DDDFF9;">
883
+ <UML:ModelElement.taggedValue>
884
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
885
+ <UML:TaggedValue tag="hidden" value="0"/>
886
+ </UML:ModelElement.taggedValue>
887
+ </UML:DiagramElement>
888
+ <UML:DiagramElement geometry="SX=-2;SY=-1;EX=-2;EY=-1;EDGE=1;$LLB=CX=26:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LLT=CX=40:CY=15:OX=-12:OY=-3:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LMT=;LMB=;LRT=CX=44:CY=15:OX=-6:OY=-11:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LRB=CX=16:CY=15:OX=-6:OY=-6:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;" subject="EAID_F15A2B25_0DA9_4203_8FC9_25645610B5E5" style="Mode=3;EOID=CDDEF3BC;SOID=BFDAC143;">
889
+ <UML:ModelElement.taggedValue>
890
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
891
+ <UML:TaggedValue tag="hidden" value="0"/>
892
+ </UML:ModelElement.taggedValue>
893
+ </UML:DiagramElement>
894
+ <UML:DiagramElement geometry="EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=CX=43:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LRB=CX=26:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;" subject="EAID_A9112D1C_DCB6_4040_B466_D5F560898B33" style="Mode=3;EOID=CDDEF3BC;SOID=12DDDFF9;">
895
+ <UML:ModelElement.taggedValue>
896
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
897
+ <UML:TaggedValue tag="hidden" value="0"/>
898
+ </UML:ModelElement.taggedValue>
899
+ </UML:DiagramElement>
900
+ <UML:DiagramElement geometry="SX=-24;SY=-16;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;" subject="EAID_E824691D_2AE7_4c9c_8408_881A2B85516F" style="Mode=3;EOID=E58486A8;SOID=BDEA24A9;">
901
+ <UML:ModelElement.taggedValue>
902
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
903
+ <UML:TaggedValue tag="hidden" value="0"/>
904
+ </UML:ModelElement.taggedValue>
905
+ </UML:DiagramElement>
906
+ <UML:DiagramElement geometry="EDGE=1;$LLB=;LLT=;LMT=;LMB=CX=77:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LRT=;LRB=;" subject="EAID_9613E9DD_8709_4e9e_92D8_2F6CA9835851" style="Mode=3;EOID=1CE36E20;SOID=BDEA24A9;">
907
+ <UML:ModelElement.taggedValue>
908
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
909
+ <UML:TaggedValue tag="hidden" value="0"/>
910
+ </UML:ModelElement.taggedValue>
911
+ </UML:DiagramElement>
912
+ <UML:DiagramElement geometry="SX=-2;SY=-1;EX=-2;EY=-1;EDGE=1;$LLB=CX=26:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LLT=CX=40:CY=15:OX=-12:OY=-3:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LMT=;LMB=;LRT=CX=44:CY=15:OX=-6:OY=-11:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LRB=CX=16:CY=15:OX=-6:OY=-6:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;" subject="EAID_F15A2B25_0DA9_4203_8FC9_25645610B5E5" style="Mode=3;EOID=CDDEF3BC;SOID=BFDAC143;">
913
+ <UML:ModelElement.taggedValue>
914
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
915
+ <UML:TaggedValue tag="hidden" value="0"/>
916
+ </UML:ModelElement.taggedValue>
917
+ </UML:DiagramElement>
918
+ <UML:DiagramElement geometry="EDGE=1;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;" subject="EAID_03052911_3625_4472_8C6B_5E1742FED753" style="Mode=3;EOID=BFDAC143;SOID=5DECEEC9;">
919
+ <UML:ModelElement.taggedValue>
920
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
921
+ <UML:TaggedValue tag="hidden" value="0"/>
922
+ </UML:ModelElement.taggedValue>
923
+ </UML:DiagramElement>
924
+ <UML:DiagramElement geometry="EX=37;EY=3;EDGE=1;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;" subject="EAID_C3D18D92_3A5C_4112_9958_926A259BAE24" style="Mode=3;EOID=BFDAC143;SOID=BDEA24A9;">
925
+ <UML:ModelElement.taggedValue>
926
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
927
+ <UML:TaggedValue tag="hidden" value="0"/>
928
+ </UML:ModelElement.taggedValue>
929
+ </UML:DiagramElement>
930
+ <UML:DiagramElement geometry="EDGE=1;$LLB=;LLT=;LMT=;LMB=CX=77:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LRT=;LRB=;" subject="EAID_9613E9DD_8709_4e9e_92D8_2F6CA9835851" style="Mode=3;EOID=1CE36E20;SOID=BDEA24A9;">
931
+ <UML:ModelElement.taggedValue>
932
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
933
+ <UML:TaggedValue tag="hidden" value="0"/>
934
+ </UML:ModelElement.taggedValue>
935
+ </UML:DiagramElement>
936
+ <UML:DiagramElement geometry="SX=6;SY=-12;EX=-44;EY=-9;EDGE=1;$LLB=CX=16:CY=15:OX=13:OY=-3:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LLT=CX=49:CY=15:OX=0:OY=-14:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LMT=;LMB=;LRT=CX=44:CY=15:OX=-10:OY=-1:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LRB=CX=16:CY=15:OX=-23:OY=-4:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;" subject="EAID_9F0FF178_300F_45f4_B31F_9633AF770E44" style="Mode=3;EOID=CDDEF3BC;SOID=BDEA24A9;">
937
+ <UML:ModelElement.taggedValue>
938
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
939
+ <UML:TaggedValue tag="hidden" value="0"/>
940
+ </UML:ModelElement.taggedValue>
941
+ </UML:DiagramElement>
942
+ <UML:DiagramElement geometry="EX=37;EY=3;EDGE=1;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;" subject="EAID_C3D18D92_3A5C_4112_9958_926A259BAE24" style="Mode=3;EOID=BFDAC143;SOID=BDEA24A9;">
943
+ <UML:ModelElement.taggedValue>
944
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
945
+ <UML:TaggedValue tag="hidden" value="0"/>
946
+ </UML:ModelElement.taggedValue>
947
+ </UML:DiagramElement>
948
+ <UML:DiagramElement geometry="SX=-24;SY=-16;EDGE=4;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;" subject="EAID_E824691D_2AE7_4c9c_8408_881A2B85516F" style="Mode=3;EOID=E58486A8;SOID=BDEA24A9;">
949
+ <UML:ModelElement.taggedValue>
950
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
951
+ <UML:TaggedValue tag="hidden" value="0"/>
952
+ </UML:ModelElement.taggedValue>
953
+ </UML:DiagramElement>
954
+ <UML:DiagramElement geometry="EDGE=1;$LLB=;LLT=;LMT=;LMB=;LRT=;LRB=;" subject="EAID_03052911_3625_4472_8C6B_5E1742FED753" style="Mode=3;EOID=BFDAC143;SOID=5DECEEC9;">
955
+ <UML:ModelElement.taggedValue>
956
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
957
+ <UML:TaggedValue tag="hidden" value="0"/>
958
+ </UML:ModelElement.taggedValue>
959
+ </UML:DiagramElement>
960
+ <UML:DiagramElement geometry="SX=8;SY=5;EX=8;EY=5;EDGE=3;$LLB=;LLT=;LMT=;LMB=;LRT=CX=61:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LRB=CX=16:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;" subject="EAID_161BF4FA_8F48_441f_AF1F_D36014D57A1F" style="Mode=3;EOID=5DECEEC9;SOID=CDDEF3BC;">
961
+ <UML:ModelElement.taggedValue>
962
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2FBE7B3F_756C_46a0_90EE_93429FDA065D"/>
963
+ <UML:TaggedValue tag="hidden" value="0"/>
964
+ </UML:ModelElement.taggedValue>
965
+ </UML:DiagramElement>
966
+ <UML:DiagramElement geometry="EDGE=1;$LLB=;LLT=CX=40:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LMT=;LMB=;LRT=;LRB=;" subject="EAID_3F0E9949_A749_4958_9A1B_40E3F0E12393" style="Mode=3;EOID=3D79E0A4;SOID=E585EE32;">
967
+ <UML:ModelElement.taggedValue>
968
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
969
+ <UML:TaggedValue tag="hidden" value="0"/>
970
+ </UML:ModelElement.taggedValue>
971
+ </UML:DiagramElement>
972
+ <UML:DiagramElement geometry="EDGE=1;$LLB=;LLT=CX=40:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LMT=;LMB=;LRT=;LRB=;" subject="EAID_9DDBD985_D9D5_408c_A8F4_40085F2E8E5B" style="Mode=3;EOID=3D79E0A4;SOID=EE2397B7;">
973
+ <UML:ModelElement.taggedValue>
974
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
975
+ <UML:TaggedValue tag="hidden" value="0"/>
976
+ </UML:ModelElement.taggedValue>
977
+ </UML:DiagramElement>
978
+ <UML:DiagramElement geometry="EDGE=2;$LLB=;LLT=;LMT=;LMB=;LRT=CX=43:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LRB=;" subject="EAID_AFD66AB6_337B_49c5_9FA9_0CFAFEB77AA7" style="Mode=3;EOID=3D79E0A4;SOID=31760B86;">
979
+ <UML:ModelElement.taggedValue>
980
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
981
+ <UML:TaggedValue tag="hidden" value="0"/>
982
+ </UML:ModelElement.taggedValue>
983
+ </UML:DiagramElement>
984
+ <UML:DiagramElement geometry="EDGE=1;$LLB=;LLT=CX=40:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LMT=;LMB=;LRT=;LRB=;" subject="EAID_D775B2C1_C7AF_4a19_A4D5_7B3AC816664C" style="Mode=3;EOID=3D79E0A4;SOID=DFC93F21;">
985
+ <UML:ModelElement.taggedValue>
986
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
987
+ <UML:TaggedValue tag="hidden" value="0"/>
988
+ </UML:ModelElement.taggedValue>
989
+ </UML:DiagramElement>
990
+ <UML:DiagramElement geometry="SX=36;SY=-9;EX=45;EY=-9;EDGE=1;$LLB=;LLT=CX=40:CY=15:OX=-17:OY=-1:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LMT=;LMB=;LRT=;LRB=;" subject="EAID_FF2ECD20_22FF_4734_9DB4_8316A98DDC16" style="Mode=3;EOID=3D79E0A4;SOID=81FBAF85;">
991
+ <UML:ModelElement.taggedValue>
992
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
993
+ <UML:TaggedValue tag="hidden" value="0"/>
994
+ </UML:ModelElement.taggedValue>
995
+ </UML:DiagramElement>
996
+ <UML:DiagramElement geometry="EDGE=1;$LLB=;LLT=CX=40:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LMT=;LMB=;LRT=;LRB=;" subject="EAID_3F0E9949_A749_4958_9A1B_40E3F0E12393" style="Mode=3;EOID=3D79E0A4;SOID=E585EE32;">
997
+ <UML:ModelElement.taggedValue>
998
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
999
+ <UML:TaggedValue tag="hidden" value="0"/>
1000
+ </UML:ModelElement.taggedValue>
1001
+ </UML:DiagramElement>
1002
+ <UML:DiagramElement geometry="EDGE=1;$LLB=;LLT=CX=40:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LMT=;LMB=;LRT=;LRB=;" subject="EAID_D775B2C1_C7AF_4a19_A4D5_7B3AC816664C" style="Mode=3;EOID=3D79E0A4;SOID=DFC93F21;">
1003
+ <UML:ModelElement.taggedValue>
1004
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
1005
+ <UML:TaggedValue tag="hidden" value="0"/>
1006
+ </UML:ModelElement.taggedValue>
1007
+ </UML:DiagramElement>
1008
+ <UML:DiagramElement geometry="EDGE=1;$LLB=;LLT=CX=40:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LMT=;LMB=;LRT=;LRB=;" subject="EAID_9DDBD985_D9D5_408c_A8F4_40085F2E8E5B" style="Mode=3;EOID=3D79E0A4;SOID=EE2397B7;">
1009
+ <UML:ModelElement.taggedValue>
1010
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
1011
+ <UML:TaggedValue tag="hidden" value="0"/>
1012
+ </UML:ModelElement.taggedValue>
1013
+ </UML:DiagramElement>
1014
+ <UML:DiagramElement geometry="EDGE=2;$LLB=;LLT=;LMT=;LMB=;LRT=CX=43:CY=15:OX=0:OY=0:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LRB=;" subject="EAID_AFD66AB6_337B_49c5_9FA9_0CFAFEB77AA7" style="Mode=3;EOID=3D79E0A4;SOID=31760B86;">
1015
+ <UML:ModelElement.taggedValue>
1016
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
1017
+ <UML:TaggedValue tag="hidden" value="0"/>
1018
+ </UML:ModelElement.taggedValue>
1019
+ </UML:DiagramElement>
1020
+ <UML:DiagramElement geometry="SX=36;SY=-9;EX=45;EY=-9;EDGE=1;$LLB=;LLT=CX=40:CY=15:OX=-17:OY=-1:HDN=0:BLD=0:ITA=0:UND=0:CLR=-1:ALN=0:DIR=0:;LMT=;LMB=;LRT=;LRB=;" subject="EAID_FF2ECD20_22FF_4734_9DB4_8316A98DDC16" style="Mode=3;EOID=3D79E0A4;SOID=81FBAF85;">
1021
+ <UML:ModelElement.taggedValue>
1022
+ <UML:TaggedValue tag="diagram_guid" value="EAID_2DBA38A4_BB85_46dc_A5ED_C43AD3050EC4"/>
1023
+ <UML:TaggedValue tag="hidden" value="0"/>
1024
+ </UML:ModelElement.taggedValue>
1025
+ </UML:DiagramElement>
1026
+ </XMI.content>
1027
+ <XMI.difference/>
1028
+ <XMI.extensions xmi.extender="Enterprise Architect 2.5"/>
1029
+ </XMI>