longleaf 0.2.0.pre.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +84 -0
  3. data/.gitignore +4 -2
  4. data/.rubocop.yml +42 -2
  5. data/.rubocop_todo.yml +390 -311
  6. data/.yardopts +1 -0
  7. data/Gemfile +16 -1
  8. data/README.md +67 -13
  9. data/Rakefile +6 -0
  10. data/bin/setup +16 -1
  11. data/docs/aboutlongleaf.md +28 -0
  12. data/docs/extra.css +32 -0
  13. data/docs/img/change-file.png +0 -0
  14. data/docs/img/ll-example-preserved.png +0 -0
  15. data/docs/index.md +19 -0
  16. data/docs/install.md +66 -0
  17. data/docs/ll-example/config-example-relative.yml +33 -0
  18. data/docs/ll-example/files-dir/LLexample-PDF.pdf +0 -0
  19. data/docs/ll-example/files-dir/LLexample-TOCHANGE.txt +15 -0
  20. data/docs/ll-example/files-dir/LLexample-tokeep.txt +10 -0
  21. data/docs/ll-example/metadata-dir/.gitkeep +0 -0
  22. data/docs/ll-example/replica-files/.gitkeep +0 -0
  23. data/docs/ll-example/replica-metadata/.gitkeep +0 -0
  24. data/docs/quickstart.md +270 -0
  25. data/docs/rdocs/Longleaf.html +135 -0
  26. data/docs/rdocs/Longleaf/AppFields.html +178 -0
  27. data/docs/rdocs/Longleaf/ApplicationConfigDeserializer.html +631 -0
  28. data/docs/rdocs/Longleaf/ApplicationConfigManager.html +610 -0
  29. data/docs/rdocs/Longleaf/ApplicationConfigValidator.html +238 -0
  30. data/docs/rdocs/Longleaf/CLI.html +909 -0
  31. data/docs/rdocs/Longleaf/ChecksumMismatchError.html +151 -0
  32. data/docs/rdocs/Longleaf/ConfigBuilder.html +1339 -0
  33. data/docs/rdocs/Longleaf/ConfigurationError.html +143 -0
  34. data/docs/rdocs/Longleaf/ConfigurationValidator.html +227 -0
  35. data/docs/rdocs/Longleaf/DeregisterCommand.html +420 -0
  36. data/docs/rdocs/Longleaf/DeregisterEvent.html +453 -0
  37. data/docs/rdocs/Longleaf/DeregistrationError.html +151 -0
  38. data/docs/rdocs/Longleaf/DigestHelper.html +419 -0
  39. data/docs/rdocs/Longleaf/EventError.html +147 -0
  40. data/docs/rdocs/Longleaf/EventNames.html +163 -0
  41. data/docs/rdocs/Longleaf/EventStatusTracking.html +656 -0
  42. data/docs/rdocs/Longleaf/FileCheckService.html +540 -0
  43. data/docs/rdocs/Longleaf/FileHelpers.html +520 -0
  44. data/docs/rdocs/Longleaf/FileRecord.html +716 -0
  45. data/docs/rdocs/Longleaf/FileSelector.html +901 -0
  46. data/docs/rdocs/Longleaf/FixityCheckService.html +691 -0
  47. data/docs/rdocs/Longleaf/IndexManager.html +1155 -0
  48. data/docs/rdocs/Longleaf/InvalidDigestAlgorithmError.html +143 -0
  49. data/docs/rdocs/Longleaf/InvalidStoragePathError.html +143 -0
  50. data/docs/rdocs/Longleaf/Logging.html +405 -0
  51. data/docs/rdocs/Longleaf/Logging/RedirectingLogger.html +1213 -0
  52. data/docs/rdocs/Longleaf/LongleafError.html +139 -0
  53. data/docs/rdocs/Longleaf/MDFields.html +193 -0
  54. data/docs/rdocs/Longleaf/MetadataBuilder.html +787 -0
  55. data/docs/rdocs/Longleaf/MetadataDeserializer.html +537 -0
  56. data/docs/rdocs/Longleaf/MetadataError.html +143 -0
  57. data/docs/rdocs/Longleaf/MetadataPersistenceManager.html +539 -0
  58. data/docs/rdocs/Longleaf/MetadataRecord.html +1411 -0
  59. data/docs/rdocs/Longleaf/MetadataSerializer.html +786 -0
  60. data/docs/rdocs/Longleaf/PreservationServiceError.html +147 -0
  61. data/docs/rdocs/Longleaf/PreserveCommand.html +410 -0
  62. data/docs/rdocs/Longleaf/PreserveEvent.html +491 -0
  63. data/docs/rdocs/Longleaf/RegisterCommand.html +428 -0
  64. data/docs/rdocs/Longleaf/RegisterEvent.html +628 -0
  65. data/docs/rdocs/Longleaf/RegisteredFileSelector.html +446 -0
  66. data/docs/rdocs/Longleaf/RegistrationError.html +151 -0
  67. data/docs/rdocs/Longleaf/ReindexCommand.html +576 -0
  68. data/docs/rdocs/Longleaf/RsyncReplicationService.html +1180 -0
  69. data/docs/rdocs/Longleaf/SequelIndexDriver.html +1978 -0
  70. data/docs/rdocs/Longleaf/ServiceCandidateFilesystemIterator.html +572 -0
  71. data/docs/rdocs/Longleaf/ServiceCandidateIndexIterator.html +532 -0
  72. data/docs/rdocs/Longleaf/ServiceCandidateLocator.html +333 -0
  73. data/docs/rdocs/Longleaf/ServiceClassCache.html +725 -0
  74. data/docs/rdocs/Longleaf/ServiceDateHelper.html +425 -0
  75. data/docs/rdocs/Longleaf/ServiceDefinition.html +683 -0
  76. data/docs/rdocs/Longleaf/ServiceDefinitionManager.html +371 -0
  77. data/docs/rdocs/Longleaf/ServiceDefinitionValidator.html +269 -0
  78. data/docs/rdocs/Longleaf/ServiceFields.html +173 -0
  79. data/docs/rdocs/Longleaf/ServiceManager.html +1229 -0
  80. data/docs/rdocs/Longleaf/ServiceMappingManager.html +410 -0
  81. data/docs/rdocs/Longleaf/ServiceMappingValidator.html +347 -0
  82. data/docs/rdocs/Longleaf/ServiceRecord.html +821 -0
  83. data/docs/rdocs/Longleaf/StorageLocation.html +985 -0
  84. data/docs/rdocs/Longleaf/StorageLocationManager.html +729 -0
  85. data/docs/rdocs/Longleaf/StorageLocationUnavailableError.html +143 -0
  86. data/docs/rdocs/Longleaf/StorageLocationValidator.html +373 -0
  87. data/docs/rdocs/Longleaf/StoragePathValidator.html +253 -0
  88. data/docs/rdocs/Longleaf/SystemConfigBuilder.html +441 -0
  89. data/docs/rdocs/Longleaf/SystemConfigFields.html +163 -0
  90. data/docs/rdocs/Longleaf/ValidateConfigCommand.html +451 -0
  91. data/docs/rdocs/Longleaf/ValidateMetadataCommand.html +408 -0
  92. data/docs/rdocs/_index.html +660 -0
  93. data/docs/rdocs/class_list.html +51 -0
  94. data/docs/rdocs/css/common.css +1 -0
  95. data/docs/rdocs/css/full_list.css +58 -0
  96. data/docs/rdocs/css/style.css +496 -0
  97. data/docs/rdocs/file.README.html +165 -0
  98. data/docs/rdocs/file_list.html +56 -0
  99. data/docs/rdocs/frames.html +17 -0
  100. data/docs/rdocs/index.html +165 -0
  101. data/docs/rdocs/js/app.js +303 -0
  102. data/docs/rdocs/js/full_list.js +216 -0
  103. data/docs/rdocs/js/jquery.js +4 -0
  104. data/docs/rdocs/method_list.html +2051 -0
  105. data/docs/rdocs/top-level-namespace.html +110 -0
  106. data/lib/longleaf/candidates/file_selector.rb +47 -15
  107. data/lib/longleaf/candidates/registered_file_selector.rb +67 -0
  108. data/lib/longleaf/candidates/service_candidate_filesystem_iterator.rb +29 -35
  109. data/lib/longleaf/candidates/service_candidate_index_iterator.rb +84 -0
  110. data/lib/longleaf/candidates/service_candidate_locator.rb +9 -4
  111. data/lib/longleaf/cli.rb +162 -80
  112. data/lib/longleaf/commands/deregister_command.rb +12 -11
  113. data/lib/longleaf/commands/preserve_command.rb +13 -8
  114. data/lib/longleaf/commands/register_command.rb +9 -6
  115. data/lib/longleaf/commands/reindex_command.rb +92 -0
  116. data/lib/longleaf/commands/validate_config_command.rb +27 -6
  117. data/lib/longleaf/commands/validate_metadata_command.rb +11 -9
  118. data/lib/longleaf/errors.rb +12 -12
  119. data/lib/longleaf/events/deregister_event.rb +13 -15
  120. data/lib/longleaf/events/event_status_tracking.rb +7 -7
  121. data/lib/longleaf/events/preserve_event.rb +24 -14
  122. data/lib/longleaf/events/register_event.rb +21 -35
  123. data/lib/longleaf/helpers/digest_helper.rb +4 -4
  124. data/lib/longleaf/helpers/service_date_helper.rb +5 -6
  125. data/lib/longleaf/indexing/index_manager.rb +101 -0
  126. data/lib/longleaf/indexing/sequel_index_driver.rb +324 -0
  127. data/lib/longleaf/logging.rb +4 -4
  128. data/lib/longleaf/logging/redirecting_logger.rb +20 -20
  129. data/lib/longleaf/models/app_fields.rb +2 -1
  130. data/lib/longleaf/models/file_record.rb +10 -6
  131. data/lib/longleaf/models/md_fields.rb +1 -1
  132. data/lib/longleaf/models/metadata_record.rb +22 -12
  133. data/lib/longleaf/models/service_definition.rb +3 -3
  134. data/lib/longleaf/models/service_fields.rb +1 -1
  135. data/lib/longleaf/models/service_record.rb +6 -5
  136. data/lib/longleaf/models/storage_location.rb +26 -7
  137. data/lib/longleaf/models/system_config_fields.rb +9 -0
  138. data/lib/longleaf/preservation_services/file_check_service.rb +58 -0
  139. data/lib/longleaf/preservation_services/fixity_check_service.rb +16 -14
  140. data/lib/longleaf/preservation_services/rsync_replication_service.rb +32 -31
  141. data/lib/longleaf/services/application_config_deserializer.rb +55 -18
  142. data/lib/longleaf/services/application_config_manager.rb +16 -4
  143. data/lib/longleaf/services/application_config_validator.rb +1 -2
  144. data/lib/longleaf/services/configuration_validator.rb +6 -4
  145. data/lib/longleaf/services/metadata_deserializer.rb +40 -38
  146. data/lib/longleaf/services/metadata_persistence_manager.rb +46 -0
  147. data/lib/longleaf/services/metadata_serializer.rb +23 -22
  148. data/lib/longleaf/services/service_class_cache.rb +15 -15
  149. data/lib/longleaf/services/service_definition_manager.rb +5 -6
  150. data/lib/longleaf/services/service_definition_validator.rb +5 -6
  151. data/lib/longleaf/services/service_manager.rb +37 -17
  152. data/lib/longleaf/services/service_mapping_manager.rb +9 -9
  153. data/lib/longleaf/services/service_mapping_validator.rb +9 -10
  154. data/lib/longleaf/services/storage_location_manager.rb +22 -8
  155. data/lib/longleaf/services/storage_location_validator.rb +11 -8
  156. data/lib/longleaf/services/storage_path_validator.rb +1 -1
  157. data/lib/longleaf/specs/config_builder.rb +30 -17
  158. data/lib/longleaf/specs/custom_matchers.rb +1 -1
  159. data/lib/longleaf/specs/file_helpers.rb +15 -14
  160. data/lib/longleaf/specs/metadata_builder.rb +91 -0
  161. data/lib/longleaf/specs/system_config_builder.rb +27 -0
  162. data/lib/longleaf/version.rb +1 -1
  163. data/longleaf.gemspec +17 -7
  164. data/mkdocs.yml +20 -0
  165. metadata +233 -22
@@ -0,0 +1,135 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Module: Longleaf
8
+
9
+ &mdash; Documentation by YARD 0.9.19
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ pathId = "Longleaf";
19
+ relpath = '';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="_index.html">Index (L)</a> &raquo;
40
+
41
+
42
+ <span class="title">Longleaf</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Module: Longleaf
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+
78
+
79
+ <dl>
80
+ <dt>Defined in:</dt>
81
+ <dd>lib/longleaf.rb<span class="defines">,<br />
82
+ lib/longleaf/cli.rb,<br /> lib/longleaf/errors.rb,<br /> lib/longleaf/logging.rb,<br /> lib/longleaf/version.rb,<br /> lib/longleaf/models/md_fields.rb,<br /> lib/longleaf/models/app_fields.rb,<br /> lib/longleaf/events/event_names.rb,<br /> lib/longleaf/models/file_record.rb,<br /> lib/longleaf/specs/file_helpers.rb,<br /> lib/longleaf/specs/config_builder.rb,<br /> lib/longleaf/events/preserve_event.rb,<br /> lib/longleaf/events/register_event.rb,<br /> lib/longleaf/helpers/digest_helper.rb,<br /> lib/longleaf/models/service_fields.rb,<br /> lib/longleaf/models/service_record.rb,<br /> lib/longleaf/specs/custom_matchers.rb,<br /> lib/longleaf/indexing/index_manager.rb,<br /> lib/longleaf/models/metadata_record.rb,<br /> lib/longleaf/specs/metadata_builder.rb,<br /> lib/longleaf/events/deregister_event.rb,<br /> lib/longleaf/models/storage_location.rb,<br /> lib/longleaf/candidates/file_selector.rb,<br /> lib/longleaf/commands/reindex_command.rb,<br /> lib/longleaf/services/service_manager.rb,<br /> lib/longleaf/commands/preserve_command.rb,<br /> lib/longleaf/commands/register_command.rb,<br /> lib/longleaf/models/service_definition.rb,<br /> lib/longleaf/logging/redirecting_logger.rb,<br /> lib/longleaf/commands/deregister_command.rb,<br /> lib/longleaf/helpers/service_date_helper.rb,<br /> lib/longleaf/models/system_config_fields.rb,<br /> lib/longleaf/specs/system_config_builder.rb,<br /> lib/longleaf/events/event_status_tracking.rb,<br /> lib/longleaf/indexing/sequel_index_driver.rb,<br /> lib/longleaf/services/metadata_serializer.rb,<br /> lib/longleaf/services/service_class_cache.rb,<br /> lib/longleaf/services/metadata_deserializer.rb,<br /> lib/longleaf/services/storage_path_validator.rb,<br /> lib/longleaf/commands/validate_config_command.rb,<br /> lib/longleaf/services/configuration_validator.rb,<br /> lib/longleaf/services/service_mapping_manager.rb,<br /> lib/longleaf/services/storage_location_manager.rb,<br /> lib/longleaf/commands/validate_metadata_command.rb,<br /> lib/longleaf/services/service_mapping_validator.rb,<br /> lib/longleaf/candidates/registered_file_selector.rb,<br /> lib/longleaf/services/application_config_manager.rb,<br /> lib/longleaf/services/service_definition_manager.rb,<br /> lib/longleaf/services/storage_location_validator.rb,<br /> lib/longleaf/candidates/service_candidate_locator.rb,<br /> lib/longleaf/services/application_config_validator.rb,<br /> lib/longleaf/services/metadata_persistence_manager.rb,<br /> lib/longleaf/services/service_definition_validator.rb,<br /> lib/longleaf/preservation_services/file_check_service.rb,<br /> lib/longleaf/services/application_config_deserializer.rb,<br /> lib/longleaf/preservation_services/fixity_check_service.rb,<br /> lib/longleaf/candidates/service_candidate_index_iterator.rb,<br /> lib/longleaf/preservation_services/rsync_replication_service.rb,<br /> lib/longleaf/candidates/service_candidate_filesystem_iterator.rb</span>
83
+ </dd>
84
+ </dl>
85
+
86
+ </div>
87
+
88
+ <h2>Defined Under Namespace</h2>
89
+ <p class="children">
90
+
91
+
92
+ <strong class="modules">Modules:</strong> <span class='object_link'><a href="Longleaf/EventStatusTracking.html" title="Longleaf::EventStatusTracking (module)">EventStatusTracking</a></span>, <span class='object_link'><a href="Longleaf/FileHelpers.html" title="Longleaf::FileHelpers (module)">FileHelpers</a></span>, <span class='object_link'><a href="Longleaf/Logging.html" title="Longleaf::Logging (module)">Logging</a></span>
93
+
94
+
95
+
96
+ <strong class="classes">Classes:</strong> <span class='object_link'><a href="Longleaf/AppFields.html" title="Longleaf::AppFields (class)">AppFields</a></span>, <span class='object_link'><a href="Longleaf/ApplicationConfigDeserializer.html" title="Longleaf::ApplicationConfigDeserializer (class)">ApplicationConfigDeserializer</a></span>, <span class='object_link'><a href="Longleaf/ApplicationConfigManager.html" title="Longleaf::ApplicationConfigManager (class)">ApplicationConfigManager</a></span>, <span class='object_link'><a href="Longleaf/ApplicationConfigValidator.html" title="Longleaf::ApplicationConfigValidator (class)">ApplicationConfigValidator</a></span>, <span class='object_link'><a href="Longleaf/CLI.html" title="Longleaf::CLI (class)">CLI</a></span>, <span class='object_link'><a href="Longleaf/ChecksumMismatchError.html" title="Longleaf::ChecksumMismatchError (class)">ChecksumMismatchError</a></span>, <span class='object_link'><a href="Longleaf/ConfigBuilder.html" title="Longleaf::ConfigBuilder (class)">ConfigBuilder</a></span>, <span class='object_link'><a href="Longleaf/ConfigurationError.html" title="Longleaf::ConfigurationError (class)">ConfigurationError</a></span>, <span class='object_link'><a href="Longleaf/ConfigurationValidator.html" title="Longleaf::ConfigurationValidator (class)">ConfigurationValidator</a></span>, <span class='object_link'><a href="Longleaf/DeregisterCommand.html" title="Longleaf::DeregisterCommand (class)">DeregisterCommand</a></span>, <span class='object_link'><a href="Longleaf/DeregisterEvent.html" title="Longleaf::DeregisterEvent (class)">DeregisterEvent</a></span>, <span class='object_link'><a href="Longleaf/DeregistrationError.html" title="Longleaf::DeregistrationError (class)">DeregistrationError</a></span>, <span class='object_link'><a href="Longleaf/DigestHelper.html" title="Longleaf::DigestHelper (class)">DigestHelper</a></span>, <span class='object_link'><a href="Longleaf/EventError.html" title="Longleaf::EventError (class)">EventError</a></span>, <span class='object_link'><a href="Longleaf/EventNames.html" title="Longleaf::EventNames (class)">EventNames</a></span>, <span class='object_link'><a href="Longleaf/FileCheckService.html" title="Longleaf::FileCheckService (class)">FileCheckService</a></span>, <span class='object_link'><a href="Longleaf/FileRecord.html" title="Longleaf::FileRecord (class)">FileRecord</a></span>, <span class='object_link'><a href="Longleaf/FileSelector.html" title="Longleaf::FileSelector (class)">FileSelector</a></span>, <span class='object_link'><a href="Longleaf/FixityCheckService.html" title="Longleaf::FixityCheckService (class)">FixityCheckService</a></span>, <span class='object_link'><a href="Longleaf/IndexManager.html" title="Longleaf::IndexManager (class)">IndexManager</a></span>, <span class='object_link'><a href="Longleaf/InvalidDigestAlgorithmError.html" title="Longleaf::InvalidDigestAlgorithmError (class)">InvalidDigestAlgorithmError</a></span>, <span class='object_link'><a href="Longleaf/InvalidStoragePathError.html" title="Longleaf::InvalidStoragePathError (class)">InvalidStoragePathError</a></span>, <span class='object_link'><a href="Longleaf/LongleafError.html" title="Longleaf::LongleafError (class)">LongleafError</a></span>, <span class='object_link'><a href="Longleaf/MDFields.html" title="Longleaf::MDFields (class)">MDFields</a></span>, <span class='object_link'><a href="Longleaf/MetadataBuilder.html" title="Longleaf::MetadataBuilder (class)">MetadataBuilder</a></span>, <span class='object_link'><a href="Longleaf/MetadataDeserializer.html" title="Longleaf::MetadataDeserializer (class)">MetadataDeserializer</a></span>, <span class='object_link'><a href="Longleaf/MetadataError.html" title="Longleaf::MetadataError (class)">MetadataError</a></span>, <span class='object_link'><a href="Longleaf/MetadataPersistenceManager.html" title="Longleaf::MetadataPersistenceManager (class)">MetadataPersistenceManager</a></span>, <span class='object_link'><a href="Longleaf/MetadataRecord.html" title="Longleaf::MetadataRecord (class)">MetadataRecord</a></span>, <span class='object_link'><a href="Longleaf/MetadataSerializer.html" title="Longleaf::MetadataSerializer (class)">MetadataSerializer</a></span>, <span class='object_link'><a href="Longleaf/PreservationServiceError.html" title="Longleaf::PreservationServiceError (class)">PreservationServiceError</a></span>, <span class='object_link'><a href="Longleaf/PreserveCommand.html" title="Longleaf::PreserveCommand (class)">PreserveCommand</a></span>, <span class='object_link'><a href="Longleaf/PreserveEvent.html" title="Longleaf::PreserveEvent (class)">PreserveEvent</a></span>, <span class='object_link'><a href="Longleaf/RegisterCommand.html" title="Longleaf::RegisterCommand (class)">RegisterCommand</a></span>, <span class='object_link'><a href="Longleaf/RegisterEvent.html" title="Longleaf::RegisterEvent (class)">RegisterEvent</a></span>, <span class='object_link'><a href="Longleaf/RegisteredFileSelector.html" title="Longleaf::RegisteredFileSelector (class)">RegisteredFileSelector</a></span>, <span class='object_link'><a href="Longleaf/RegistrationError.html" title="Longleaf::RegistrationError (class)">RegistrationError</a></span>, <span class='object_link'><a href="Longleaf/ReindexCommand.html" title="Longleaf::ReindexCommand (class)">ReindexCommand</a></span>, <span class='object_link'><a href="Longleaf/RsyncReplicationService.html" title="Longleaf::RsyncReplicationService (class)">RsyncReplicationService</a></span>, <span class='object_link'><a href="Longleaf/SequelIndexDriver.html" title="Longleaf::SequelIndexDriver (class)">SequelIndexDriver</a></span>, <span class='object_link'><a href="Longleaf/ServiceCandidateFilesystemIterator.html" title="Longleaf::ServiceCandidateFilesystemIterator (class)">ServiceCandidateFilesystemIterator</a></span>, <span class='object_link'><a href="Longleaf/ServiceCandidateIndexIterator.html" title="Longleaf::ServiceCandidateIndexIterator (class)">ServiceCandidateIndexIterator</a></span>, <span class='object_link'><a href="Longleaf/ServiceCandidateLocator.html" title="Longleaf::ServiceCandidateLocator (class)">ServiceCandidateLocator</a></span>, <span class='object_link'><a href="Longleaf/ServiceClassCache.html" title="Longleaf::ServiceClassCache (class)">ServiceClassCache</a></span>, <span class='object_link'><a href="Longleaf/ServiceDateHelper.html" title="Longleaf::ServiceDateHelper (class)">ServiceDateHelper</a></span>, <span class='object_link'><a href="Longleaf/ServiceDefinition.html" title="Longleaf::ServiceDefinition (class)">ServiceDefinition</a></span>, <span class='object_link'><a href="Longleaf/ServiceDefinitionManager.html" title="Longleaf::ServiceDefinitionManager (class)">ServiceDefinitionManager</a></span>, <span class='object_link'><a href="Longleaf/ServiceDefinitionValidator.html" title="Longleaf::ServiceDefinitionValidator (class)">ServiceDefinitionValidator</a></span>, <span class='object_link'><a href="Longleaf/ServiceFields.html" title="Longleaf::ServiceFields (class)">ServiceFields</a></span>, <span class='object_link'><a href="Longleaf/ServiceManager.html" title="Longleaf::ServiceManager (class)">ServiceManager</a></span>, <span class='object_link'><a href="Longleaf/ServiceMappingManager.html" title="Longleaf::ServiceMappingManager (class)">ServiceMappingManager</a></span>, <span class='object_link'><a href="Longleaf/ServiceMappingValidator.html" title="Longleaf::ServiceMappingValidator (class)">ServiceMappingValidator</a></span>, <span class='object_link'><a href="Longleaf/ServiceRecord.html" title="Longleaf::ServiceRecord (class)">ServiceRecord</a></span>, <span class='object_link'><a href="Longleaf/StorageLocation.html" title="Longleaf::StorageLocation (class)">StorageLocation</a></span>, <span class='object_link'><a href="Longleaf/StorageLocationManager.html" title="Longleaf::StorageLocationManager (class)">StorageLocationManager</a></span>, <span class='object_link'><a href="Longleaf/StorageLocationUnavailableError.html" title="Longleaf::StorageLocationUnavailableError (class)">StorageLocationUnavailableError</a></span>, <span class='object_link'><a href="Longleaf/StorageLocationValidator.html" title="Longleaf::StorageLocationValidator (class)">StorageLocationValidator</a></span>, <span class='object_link'><a href="Longleaf/StoragePathValidator.html" title="Longleaf::StoragePathValidator (class)">StoragePathValidator</a></span>, <span class='object_link'><a href="Longleaf/SystemConfigBuilder.html" title="Longleaf::SystemConfigBuilder (class)">SystemConfigBuilder</a></span>, <span class='object_link'><a href="Longleaf/SystemConfigFields.html" title="Longleaf::SystemConfigFields (class)">SystemConfigFields</a></span>, <span class='object_link'><a href="Longleaf/ValidateConfigCommand.html" title="Longleaf::ValidateConfigCommand (class)">ValidateConfigCommand</a></span>, <span class='object_link'><a href="Longleaf/ValidateMetadataCommand.html" title="Longleaf::ValidateMetadataCommand (class)">ValidateMetadataCommand</a></span>
97
+
98
+
99
+ </p>
100
+
101
+
102
+ <h2>
103
+ Constant Summary
104
+ <small><a href="#" class="constants_summary_toggle">collapse</a></small>
105
+ </h2>
106
+
107
+ <dl class="constants">
108
+
109
+ <dt id="VERSION-constant" class="">VERSION =
110
+
111
+ </dt>
112
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>0.2.0.pre.1</span><span class='tstring_end'>&quot;</span></span></pre></dd>
113
+
114
+ </dl>
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+
123
+
124
+
125
+ </div>
126
+
127
+ <div id="footer">
128
+ Generated on Tue May 28 15:48:00 2019 by
129
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
130
+ 0.9.19 (ruby-2.6.3).
131
+ </div>
132
+
133
+ </div>
134
+ </body>
135
+ </html>
@@ -0,0 +1,178 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Class: Longleaf::AppFields
8
+
9
+ &mdash; Documentation by YARD 0.9.19
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ pathId = "Longleaf::AppFields";
19
+ relpath = '../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="../class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="../_index.html">Index (A)</a> &raquo;
40
+ <span class='title'><span class='object_link'><a href="../Longleaf.html" title="Longleaf (module)">Longleaf</a></span></span>
41
+ &raquo;
42
+ <span class="title">AppFields</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="../class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Class: Longleaf::AppFields
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+ <dl>
70
+ <dt>Inherits:</dt>
71
+ <dd>
72
+ <span class="inheritName">Object</span>
73
+
74
+ <ul class="fullTree">
75
+ <li>Object</li>
76
+
77
+ <li class="next">Longleaf::AppFields</li>
78
+
79
+ </ul>
80
+ <a href="#" class="inheritanceTree">show all</a>
81
+
82
+ </dd>
83
+ </dl>
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+ <dl>
96
+ <dt>Defined in:</dt>
97
+ <dd>lib/longleaf/models/app_fields.rb</dd>
98
+ </dl>
99
+
100
+ </div>
101
+
102
+ <h2>Overview</h2><div class="docstring">
103
+ <div class="discussion">
104
+
105
+ <p>Application configuration field names</p>
106
+
107
+
108
+ </div>
109
+ </div>
110
+ <div class="tags">
111
+
112
+
113
+ </div>
114
+
115
+ <h2>
116
+ Constant Summary
117
+ <small><a href="#" class="constants_summary_toggle">collapse</a></small>
118
+ </h2>
119
+
120
+ <dl class="constants">
121
+
122
+ <dt id="LOCATIONS-constant" class="">LOCATIONS =
123
+
124
+ </dt>
125
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>locations</span><span class='tstring_end'>&#39;</span></span></pre></dd>
126
+
127
+ <dt id="SERVICES-constant" class="">SERVICES =
128
+
129
+ </dt>
130
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>services</span><span class='tstring_end'>&#39;</span></span></pre></dd>
131
+
132
+ <dt id="SERVICE_MAPPINGS-constant" class="">SERVICE_MAPPINGS =
133
+
134
+ </dt>
135
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>service_mappings</span><span class='tstring_end'>&#39;</span></span></pre></dd>
136
+
137
+ <dt id="SYSTEM-constant" class="">SYSTEM =
138
+
139
+ </dt>
140
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>system</span><span class='tstring_end'>&#39;</span></span></pre></dd>
141
+
142
+ <dt id="LOCATION_PATH-constant" class="">LOCATION_PATH =
143
+
144
+ </dt>
145
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>path</span><span class='tstring_end'>&#39;</span></span></pre></dd>
146
+
147
+ <dt id="METADATA_PATH-constant" class="">METADATA_PATH =
148
+
149
+ </dt>
150
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>metadata_path</span><span class='tstring_end'>&#39;</span></span></pre></dd>
151
+
152
+ <dt id="METADATA_DIGESTS-constant" class="">METADATA_DIGESTS =
153
+
154
+ </dt>
155
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>metadata_digests</span><span class='tstring_end'>&#39;</span></span></pre></dd>
156
+
157
+ </dl>
158
+
159
+
160
+
161
+
162
+
163
+
164
+
165
+
166
+
167
+
168
+ </div>
169
+
170
+ <div id="footer">
171
+ Generated on Tue May 28 15:48:00 2019 by
172
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
173
+ 0.9.19 (ruby-2.6.3).
174
+ </div>
175
+
176
+ </div>
177
+ </body>
178
+ </html>
@@ -0,0 +1,631 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Class: Longleaf::ApplicationConfigDeserializer
8
+
9
+ &mdash; Documentation by YARD 0.9.19
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ pathId = "Longleaf::ApplicationConfigDeserializer";
19
+ relpath = '../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="../class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="../_index.html">Index (A)</a> &raquo;
40
+ <span class='title'><span class='object_link'><a href="../Longleaf.html" title="Longleaf (module)">Longleaf</a></span></span>
41
+ &raquo;
42
+ <span class="title">ApplicationConfigDeserializer</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="../class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Class: Longleaf::ApplicationConfigDeserializer
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+ <dl>
70
+ <dt>Inherits:</dt>
71
+ <dd>
72
+ <span class="inheritName">Object</span>
73
+
74
+ <ul class="fullTree">
75
+ <li>Object</li>
76
+
77
+ <li class="next">Longleaf::ApplicationConfigDeserializer</li>
78
+
79
+ </ul>
80
+ <a href="#" class="inheritanceTree">show all</a>
81
+
82
+ </dd>
83
+ </dl>
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+ <dl>
96
+ <dt>Defined in:</dt>
97
+ <dd>lib/longleaf/services/application_config_deserializer.rb</dd>
98
+ </dl>
99
+
100
+ </div>
101
+
102
+ <h2>Overview</h2><div class="docstring">
103
+ <div class="discussion">
104
+
105
+ <p>Deserializer for application configuration files</p>
106
+
107
+
108
+ </div>
109
+ </div>
110
+ <div class="tags">
111
+
112
+
113
+ </div>
114
+
115
+
116
+
117
+
118
+
119
+
120
+
121
+ <h2>
122
+ Class Method Summary
123
+ <small><a href="#" class="summary_toggle">collapse</a></small>
124
+ </h2>
125
+
126
+ <ul class="summary">
127
+
128
+ <li class="public ">
129
+ <span class="summary_signature">
130
+
131
+ <a href="#absolution-class_method" title="absolution (class method)">.<strong>absolution</strong>(base_pathname, file_path) &#x21d2; Object </a>
132
+
133
+
134
+
135
+ </span>
136
+
137
+
138
+
139
+
140
+
141
+
142
+
143
+
144
+
145
+ <span class="summary_desc"><div class='inline'></div></span>
146
+
147
+ </li>
148
+
149
+
150
+ <li class="public ">
151
+ <span class="summary_signature">
152
+
153
+ <a href="#deserialize-class_method" title="deserialize (class method)">.<strong>deserialize</strong>(config_path, format: &#39;yaml&#39;) &#x21d2; Object </a>
154
+
155
+
156
+
157
+ </span>
158
+
159
+
160
+
161
+
162
+
163
+
164
+
165
+
166
+
167
+ <span class="summary_desc"><div class='inline'>
168
+ <p>Deserializes a valid application configuration file as a ApplicationConfigManager option return [ApplicationConfigManager] manager for the loaded configuration.</p>
169
+ </div></span>
170
+
171
+ </li>
172
+
173
+
174
+ <li class="public ">
175
+ <span class="summary_signature">
176
+
177
+ <a href="#from_yaml-class_method" title="from_yaml (class method)">.<strong>from_yaml</strong>(content) &#x21d2; Object </a>
178
+
179
+
180
+
181
+ </span>
182
+
183
+
184
+
185
+
186
+
187
+
188
+
189
+
190
+
191
+ <span class="summary_desc"><div class='inline'></div></span>
192
+
193
+ </li>
194
+
195
+
196
+ <li class="public ">
197
+ <span class="summary_signature">
198
+
199
+ <a href="#load-class_method" title="load (class method)">.<strong>load</strong>(content, format) &#x21d2; Object </a>
200
+
201
+
202
+
203
+ </span>
204
+
205
+
206
+
207
+
208
+
209
+
210
+
211
+
212
+
213
+ <span class="summary_desc"><div class='inline'>
214
+ <p>Deserialize a configuration file into a hash return [Hash] hash containing the configuration.</p>
215
+ </div></span>
216
+
217
+ </li>
218
+
219
+
220
+ <li class="private ">
221
+ <span class="summary_signature">
222
+
223
+ <a href="#load_config_file-class_method" title="load_config_file (class method)">.<strong>load_config_file</strong>(config_path) &#x21d2; Object </a>
224
+
225
+
226
+
227
+ </span>
228
+
229
+
230
+
231
+ <span class="note title private">private</span>
232
+
233
+
234
+
235
+
236
+
237
+ <span class="summary_desc"><div class='inline'></div></span>
238
+
239
+ </li>
240
+
241
+
242
+ <li class="public ">
243
+ <span class="summary_signature">
244
+
245
+ <a href="#make_paths_absolute-class_method" title="make_paths_absolute (class method)">.<strong>make_paths_absolute</strong>(config_path, config) &#x21d2; Object </a>
246
+
247
+
248
+
249
+ </span>
250
+
251
+
252
+
253
+
254
+
255
+
256
+
257
+
258
+
259
+ <span class="summary_desc"><div class='inline'></div></span>
260
+
261
+ </li>
262
+
263
+
264
+ </ul>
265
+
266
+
267
+
268
+
269
+ <div id="class_method_details" class="method_details_list">
270
+ <h2>Class Method Details</h2>
271
+
272
+
273
+ <div class="method_details first">
274
+ <h3 class="signature first" id="absolution-class_method">
275
+
276
+ .<strong>absolution</strong>(base_pathname, file_path) &#x21d2; <tt>Object</tt>
277
+
278
+
279
+
280
+
281
+
282
+ </h3><table class="source_code">
283
+ <tr>
284
+ <td>
285
+ <pre class="lines">
286
+
287
+
288
+ 66
289
+ 67
290
+ 68
291
+ 69
292
+ 70
293
+ 71
294
+ 72
295
+ 73
296
+ 74
297
+ 75
298
+ 76
299
+ 77</pre>
300
+ </td>
301
+ <td>
302
+ <pre class="code"><span class="info file"># File 'lib/longleaf/services/application_config_deserializer.rb', line 66</span>
303
+
304
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_absolution'>absolution</span><span class='lparen'>(</span><span class='id identifier rubyid_base_pathname'>base_pathname</span><span class='comma'>,</span> <span class='id identifier rubyid_file_path'>file_path</span><span class='rparen'>)</span>
305
+ <span class='kw'>if</span> <span class='id identifier rubyid_file_path'>file_path</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
306
+ <span class='kw'>nil</span>
307
+ <span class='kw'>else</span>
308
+ <span class='id identifier rubyid_path'>path</span> <span class='op'>=</span> <span class='const'>Pathname</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_file_path'>file_path</span><span class='rparen'>)</span>
309
+ <span class='kw'>if</span> <span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_absolute?'>absolute?</span>
310
+ <span class='id identifier rubyid_path'>path</span> <span class='op'>=</span> <span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_expand_path'>expand_path</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span>
311
+ <span class='kw'>else</span>
312
+ <span class='id identifier rubyid_path'>path</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='id identifier rubyid_base_pathname'>base_pathname</span> <span class='op'>+</span> <span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span>
313
+ <span class='kw'>end</span>
314
+ <span class='kw'>end</span>
315
+ <span class='kw'>end</span></pre>
316
+ </td>
317
+ </tr>
318
+ </table>
319
+ </div>
320
+
321
+ <div class="method_details ">
322
+ <h3 class="signature " id="deserialize-class_method">
323
+
324
+ .<strong>deserialize</strong>(config_path, format: &#39;yaml&#39;) &#x21d2; <tt>Object</tt>
325
+
326
+
327
+
328
+
329
+
330
+ </h3><div class="docstring">
331
+ <div class="discussion">
332
+
333
+ <p>Deserializes a valid application configuration file as a ApplicationConfigManager option return [ApplicationConfigManager] manager for the loaded configuration</p>
334
+
335
+
336
+ </div>
337
+ </div>
338
+ <div class="tags">
339
+ <p class="tag_title">Parameters:</p>
340
+ <ul class="param">
341
+
342
+ <li>
343
+
344
+ <span class='name'>config_path</span>
345
+
346
+
347
+ <span class='type'>(<tt>String</tt>)</span>
348
+
349
+
350
+
351
+ &mdash;
352
+ <div class='inline'>
353
+ <p>file path to the service and storage mapping configuration file</p>
354
+ </div>
355
+
356
+ </li>
357
+
358
+ <li>
359
+
360
+ <span class='name'>format</span>
361
+
362
+
363
+ <span class='type'>(<tt>String</tt>)</span>
364
+
365
+
366
+
367
+ &mdash;
368
+ <div class='inline'>
369
+ <p>encoding format of the config file</p>
370
+ </div>
371
+
372
+ </li>
373
+
374
+ </ul>
375
+
376
+
377
+ </div><table class="source_code">
378
+ <tr>
379
+ <td>
380
+ <pre class="lines">
381
+
382
+
383
+ 15
384
+ 16
385
+ 17
386
+ 18
387
+ 19
388
+ 20
389
+ 21
390
+ 22
391
+ 23
392
+ 24</pre>
393
+ </td>
394
+ <td>
395
+ <pre class="code"><span class="info file"># File 'lib/longleaf/services/application_config_deserializer.rb', line 15</span>
396
+
397
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_deserialize'>deserialize</span><span class='lparen'>(</span><span class='id identifier rubyid_config_path'>config_path</span><span class='comma'>,</span> <span class='label'>format:</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>yaml</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
398
+ <span class='id identifier rubyid_content'>content</span> <span class='op'>=</span> <span class='id identifier rubyid_load_config_file'>load_config_file</span><span class='lparen'>(</span><span class='id identifier rubyid_config_path'>config_path</span><span class='rparen'>)</span>
399
+ <span class='id identifier rubyid_config'>config</span> <span class='op'>=</span> <span class='id identifier rubyid_load'>load</span><span class='lparen'>(</span><span class='id identifier rubyid_content'>content</span><span class='comma'>,</span> <span class='id identifier rubyid_format'>format</span><span class='rparen'>)</span>
400
+
401
+ <span class='id identifier rubyid_config_md5'>config_md5</span> <span class='op'>=</span> <span class='const'>Digest</span><span class='op'>::</span><span class='const'>MD5</span><span class='period'>.</span><span class='id identifier rubyid_hexdigest'>hexdigest</span><span class='lparen'>(</span><span class='id identifier rubyid_content'>content</span><span class='rparen'>)</span>
402
+
403
+ <span class='id identifier rubyid_make_paths_absolute'>make_paths_absolute</span><span class='lparen'>(</span><span class='id identifier rubyid_config_path'>config_path</span><span class='comma'>,</span> <span class='id identifier rubyid_config'>config</span><span class='rparen'>)</span>
404
+ <span class='const'><span class='object_link'><a href="../Longleaf.html" title="Longleaf (module)">Longleaf</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ApplicationConfigValidator.html" title="Longleaf::ApplicationConfigValidator (class)">ApplicationConfigValidator</a></span></span><span class='period'>.</span><span class='id identifier rubyid_validate'><span class='object_link'><a href="ApplicationConfigValidator.html#validate-class_method" title="Longleaf::ApplicationConfigValidator.validate (method)">validate</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_config'>config</span><span class='rparen'>)</span>
405
+ <span class='const'><span class='object_link'><a href="../Longleaf.html" title="Longleaf (module)">Longleaf</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ApplicationConfigManager.html" title="Longleaf::ApplicationConfigManager (class)">ApplicationConfigManager</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="ApplicationConfigManager.html#initialize-instance_method" title="Longleaf::ApplicationConfigManager#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_config'>config</span><span class='comma'>,</span> <span class='id identifier rubyid_config_md5'>config_md5</span><span class='rparen'>)</span>
406
+ <span class='kw'>end</span></pre>
407
+ </td>
408
+ </tr>
409
+ </table>
410
+ </div>
411
+
412
+ <div class="method_details ">
413
+ <h3 class="signature " id="from_yaml-class_method">
414
+
415
+ .<strong>from_yaml</strong>(content) &#x21d2; <tt>Object</tt>
416
+
417
+
418
+
419
+
420
+
421
+ </h3><table class="source_code">
422
+ <tr>
423
+ <td>
424
+ <pre class="lines">
425
+
426
+
427
+ 48
428
+ 49
429
+ 50
430
+ 51
431
+ 52
432
+ 53
433
+ 54</pre>
434
+ </td>
435
+ <td>
436
+ <pre class="code"><span class="info file"># File 'lib/longleaf/services/application_config_deserializer.rb', line 48</span>
437
+
438
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_from_yaml'>from_yaml</span><span class='lparen'>(</span><span class='id identifier rubyid_content'>content</span><span class='rparen'>)</span>
439
+ <span class='kw'>begin</span>
440
+ <span class='const'>YAML</span><span class='period'>.</span><span class='id identifier rubyid_safe_load'>safe_load</span><span class='lparen'>(</span><span class='id identifier rubyid_content'>content</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='kw'>true</span><span class='rparen'>)</span>
441
+ <span class='kw'>rescue</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_err'>err</span>
442
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="../Longleaf.html" title="Longleaf (module)">Longleaf</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ConfigurationError.html" title="Longleaf::ConfigurationError (class)">ConfigurationError</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_err'>err</span><span class='rparen'>)</span>
443
+ <span class='kw'>end</span>
444
+ <span class='kw'>end</span></pre>
445
+ </td>
446
+ </tr>
447
+ </table>
448
+ </div>
449
+
450
+ <div class="method_details ">
451
+ <h3 class="signature " id="load-class_method">
452
+
453
+ .<strong>load</strong>(content, format) &#x21d2; <tt>Object</tt>
454
+
455
+
456
+
457
+
458
+
459
+ </h3><div class="docstring">
460
+ <div class="discussion">
461
+
462
+ <p>Deserialize a configuration file into a hash return [Hash] hash containing the configuration</p>
463
+
464
+
465
+ </div>
466
+ </div>
467
+ <div class="tags">
468
+ <p class="tag_title">Parameters:</p>
469
+ <ul class="param">
470
+
471
+ <li>
472
+
473
+ <span class='name'>content</span>
474
+
475
+
476
+ <span class='type'>(<tt>String</tt>)</span>
477
+
478
+
479
+
480
+ &mdash;
481
+ <div class='inline'>
482
+ <p>the contents of the application configuration file</p>
483
+ </div>
484
+
485
+ </li>
486
+
487
+ <li>
488
+
489
+ <span class='name'>format</span>
490
+
491
+
492
+ <span class='type'>(<tt>String</tt>)</span>
493
+
494
+
495
+
496
+ &mdash;
497
+ <div class='inline'>
498
+ <p>encoding format of the config file</p>
499
+ </div>
500
+
501
+ </li>
502
+
503
+ </ul>
504
+
505
+
506
+ </div><table class="source_code">
507
+ <tr>
508
+ <td>
509
+ <pre class="lines">
510
+
511
+
512
+ 39
513
+ 40
514
+ 41
515
+ 42
516
+ 43
517
+ 44
518
+ 45
519
+ 46</pre>
520
+ </td>
521
+ <td>
522
+ <pre class="code"><span class="info file"># File 'lib/longleaf/services/application_config_deserializer.rb', line 39</span>
523
+
524
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_load'>load</span><span class='lparen'>(</span><span class='id identifier rubyid_content'>content</span><span class='comma'>,</span> <span class='id identifier rubyid_format'>format</span><span class='rparen'>)</span>
525
+ <span class='kw'>case</span> <span class='id identifier rubyid_format'>format</span>
526
+ <span class='kw'>when</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>yaml</span><span class='tstring_end'>&#39;</span></span>
527
+ <span class='id identifier rubyid_from_yaml'>from_yaml</span><span class='lparen'>(</span><span class='id identifier rubyid_content'>content</span><span class='rparen'>)</span>
528
+ <span class='kw'>else</span>
529
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Invalid deserialization format </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_format'>format</span><span class='embexpr_end'>}</span><span class='tstring_content'> specified</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
530
+ <span class='kw'>end</span>
531
+ <span class='kw'>end</span></pre>
532
+ </td>
533
+ </tr>
534
+ </table>
535
+ </div>
536
+
537
+ <div class="method_details ">
538
+ <h3 class="signature " id="load_config_file-class_method">
539
+
540
+ .<strong>load_config_file</strong>(config_path) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
541
+
542
+
543
+
544
+
545
+
546
+ </h3><table class="source_code">
547
+ <tr>
548
+ <td>
549
+ <pre class="lines">
550
+
551
+
552
+ 26
553
+ 27
554
+ 28
555
+ 29
556
+ 30
557
+ 31
558
+ 32
559
+ 33</pre>
560
+ </td>
561
+ <td>
562
+ <pre class="code"><span class="info file"># File 'lib/longleaf/services/application_config_deserializer.rb', line 26</span>
563
+
564
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_load_config_file'>load_config_file</span><span class='lparen'>(</span><span class='id identifier rubyid_config_path'>config_path</span><span class='rparen'>)</span>
565
+ <span class='kw'>begin</span>
566
+ <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_read'>read</span><span class='lparen'>(</span><span class='id identifier rubyid_config_path'>config_path</span><span class='rparen'>)</span>
567
+ <span class='kw'>rescue</span> <span class='const'>Errno</span><span class='op'>::</span><span class='const'>ENOENT</span>
568
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="../Longleaf.html" title="Longleaf (module)">Longleaf</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ConfigurationError.html" title="Longleaf::ConfigurationError (class)">ConfigurationError</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span>
569
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Configuration file </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_config_path'>config_path</span><span class='embexpr_end'>}</span><span class='tstring_content'> does not exist.</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
570
+ <span class='kw'>end</span>
571
+ <span class='kw'>end</span></pre>
572
+ </td>
573
+ </tr>
574
+ </table>
575
+ </div>
576
+
577
+ <div class="method_details ">
578
+ <h3 class="signature " id="make_paths_absolute-class_method">
579
+
580
+ .<strong>make_paths_absolute</strong>(config_path, config) &#x21d2; <tt>Object</tt>
581
+
582
+
583
+
584
+
585
+
586
+ </h3><table class="source_code">
587
+ <tr>
588
+ <td>
589
+ <pre class="lines">
590
+
591
+
592
+ 56
593
+ 57
594
+ 58
595
+ 59
596
+ 60
597
+ 61
598
+ 62
599
+ 63
600
+ 64</pre>
601
+ </td>
602
+ <td>
603
+ <pre class="code"><span class="info file"># File 'lib/longleaf/services/application_config_deserializer.rb', line 56</span>
604
+
605
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_make_paths_absolute'>make_paths_absolute</span><span class='lparen'>(</span><span class='id identifier rubyid_config_path'>config_path</span><span class='comma'>,</span> <span class='id identifier rubyid_config'>config</span><span class='rparen'>)</span>
606
+ <span class='id identifier rubyid_base_pathname'>base_pathname</span> <span class='op'>=</span> <span class='const'>Pathname</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_config_path'>config_path</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_expand_path'>expand_path</span><span class='period'>.</span><span class='id identifier rubyid_parent'>parent</span>
607
+
608
+ <span class='id identifier rubyid_config'>config</span><span class='lbracket'>[</span><span class='const'>AF</span><span class='op'>::</span><span class='const'>LOCATIONS</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_properties'>properties</span><span class='op'>|</span>
609
+ <span class='id identifier rubyid_properties'>properties</span><span class='lbracket'>[</span><span class='const'>AF</span><span class='op'>::</span><span class='const'>LOCATION_PATH</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_absolution'>absolution</span><span class='lparen'>(</span><span class='id identifier rubyid_base_pathname'>base_pathname</span><span class='comma'>,</span> <span class='id identifier rubyid_properties'>properties</span><span class='lbracket'>[</span><span class='const'>AF</span><span class='op'>::</span><span class='const'>LOCATION_PATH</span><span class='rbracket'>]</span><span class='rparen'>)</span>
610
+
611
+ <span class='id identifier rubyid_properties'>properties</span><span class='lbracket'>[</span><span class='const'>AF</span><span class='op'>::</span><span class='const'>METADATA_PATH</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_absolution'>absolution</span><span class='lparen'>(</span><span class='id identifier rubyid_base_pathname'>base_pathname</span><span class='comma'>,</span> <span class='id identifier rubyid_properties'>properties</span><span class='lbracket'>[</span><span class='const'>AF</span><span class='op'>::</span><span class='const'>METADATA_PATH</span><span class='rbracket'>]</span><span class='rparen'>)</span>
612
+ <span class='kw'>end</span>
613
+ <span class='kw'>end</span></pre>
614
+ </td>
615
+ </tr>
616
+ </table>
617
+ </div>
618
+
619
+ </div>
620
+
621
+ </div>
622
+
623
+ <div id="footer">
624
+ Generated on Tue May 28 15:48:02 2019 by
625
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
626
+ 0.9.19 (ruby-2.6.3).
627
+ </div>
628
+
629
+ </div>
630
+ </body>
631
+ </html>