skn_utils 5.0.1 → 5.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +11 -8
- data/lib/skn_container.rb +1 -5
- data/lib/skn_utils/dotted_hash.rb +5 -0
- data/lib/skn_utils/version.rb +1 -1
- data/lib/skn_utils.rb +2 -2
- data/spec/lib/skn_utils/container_spec.rb +2 -2
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 498322a3978e71255bc0dee116f9f6afbac274ea
|
4
|
+
data.tar.gz: 3b5a83bffd147c838a9adea0329b4775d57c1b76
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3845e5d919d1857b2492761fcbaede0e8539c87b0eaff558d81f1e0abf9ee8c6c82787054c2e23cb1d4ed7ad606eae461dbdf925d5012da7158bc051f7579578
|
7
|
+
data.tar.gz: 81a46d7cc67480e2b71e7185118be4f1c9fd0cd989af7ce97d83f528c8be3543a8f0a8cfab6763d81e254290f0ff753b712a3ec82e94a7c220226548d88427c9
|
data/README.md
CHANGED
@@ -44,7 +44,7 @@ There are many more use cases for Ruby's Hash that this gem just makes easier to
|
|
44
44
|
|
45
45
|
#### Available Classes
|
46
46
|
* SknSuccess
|
47
|
-
|
47
|
+
* SknFailure
|
48
48
|
* SknSettings
|
49
49
|
* SknUtils::Configurable
|
50
50
|
* SknUtils::EnvStringHandler
|
@@ -127,18 +127,21 @@ There are many more use cases for Ruby's Hash that this gem just makes easier to
|
|
127
127
|
|
128
128
|
## Public Components
|
129
129
|
SknUtils::NestedResult # Primary Key/Value Container with Dot/Hash notiation support.
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
SknSettings # Multi-level application Configuration class, Key/Value Container with Dot/Hash notiation support.
|
130
|
+
SknHash # Wrapper for name only, WITHOUT SknUtils namespace, inherits from SknUtils::NestedResult
|
131
|
+
SknUtils::ResultBean # Wrapper for name only, inherits from SknUtils::NestedResult
|
132
|
+
SknUtils::PageControls # Wrapper for name only, inherits from SknUtils::NestedResult
|
133
|
+
SknUtils::DottedHash # Wrapper for name only, inherits from SknUtils::NestedResult
|
135
134
|
|
136
135
|
SknUtils::Configurable # Basic one-level configuration Applications classes or modules. Adds MyClass.root,MyClass.env, and MyClass.logger, with MyClass.config.<user_attrs>
|
137
|
-
|
136
|
+
|
137
|
+
SknSettings # Multi-level application Configuration class, Key/Value Container with Dot/Hash notiation support.
|
138
|
+
|
138
139
|
SknContainer # Basic Key/Value container which #registers and #resolves procs, classes, and/or object
|
140
|
+
|
139
141
|
SknSuccess # Three attribute value containers for return codes -- #success, #message, #value
|
140
142
|
SknFailure # Three attribute value containers for return codes -- #success, #message, #value
|
141
143
|
|
144
|
+
|
142
145
|
## Configuration Options
|
143
146
|
None required other than initialization hash
|
144
147
|
|
@@ -161,7 +164,7 @@ There are many more use cases for Ruby's Hash that this gem just makes easier to
|
|
161
164
|
#resolve(key)
|
162
165
|
- example:
|
163
166
|
klass = SknContainer.resolve(:some_klass)
|
164
|
-
|
167
|
+
instance = SknContainer.resolve(:some_klass).new
|
165
168
|
|
166
169
|
obj_instance1 = SknContainer.resolve(:unique_instance)
|
167
170
|
obj_instance2 = SknContainer.resolve(:unique_instance)
|
data/lib/skn_container.rb
CHANGED
@@ -72,11 +72,7 @@ class << (SknContainer = Concurrent::Hash.new)
|
|
72
72
|
end
|
73
73
|
|
74
74
|
def resolve(key)
|
75
|
-
|
76
|
-
fail ArgumentError, "Nothing registered with the name #{key}"
|
77
|
-
end
|
78
|
-
|
79
|
-
content.call
|
75
|
+
self.fetch(key) {|k| nil }&.call
|
80
76
|
end
|
81
77
|
|
82
78
|
end
|
data/lib/skn_utils/version.rb
CHANGED
data/lib/skn_utils.rb
CHANGED
@@ -15,6 +15,8 @@ unless defined?(Rails)
|
|
15
15
|
end
|
16
16
|
require 'skn_utils/core_extensions'
|
17
17
|
require 'skn_utils/env_string_handler'
|
18
|
+
require 'skn_success'
|
19
|
+
require 'skn_failure'
|
18
20
|
require 'skn_utils/nested_result'
|
19
21
|
require 'skn_utils/result_bean'
|
20
22
|
require 'skn_utils/page_controls'
|
@@ -26,8 +28,6 @@ require 'skn_utils/configurable'
|
|
26
28
|
require 'skn_hash'
|
27
29
|
require 'skn_container'
|
28
30
|
require 'skn_settings'
|
29
|
-
require 'skn_success'
|
30
|
-
require 'skn_failure'
|
31
31
|
|
32
32
|
module SknUtils
|
33
33
|
|
@@ -51,9 +51,9 @@ describe SknContainer, "IoC Lite Container module." do
|
|
51
51
|
expect( val_a ).to be_equal val_b
|
52
52
|
end
|
53
53
|
|
54
|
-
it "#resolve
|
54
|
+
it "#resolve returns nil when key is not found. " do
|
55
55
|
subject.register(:service_a, "AnyValue")
|
56
|
-
expect
|
56
|
+
expect(subject.resolve(:no_find)).to be_nil
|
57
57
|
end
|
58
58
|
|
59
59
|
it "#resolve returns block without calling it first. " do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: skn_utils
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.0.
|
4
|
+
version: 5.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Scott Jr
|
@@ -173,6 +173,7 @@ files:
|
|
173
173
|
- lib/skn_utils/configurable.rb
|
174
174
|
- lib/skn_utils/configuration.rb
|
175
175
|
- lib/skn_utils/core_extensions.rb
|
176
|
+
- lib/skn_utils/dotted_hash.rb
|
176
177
|
- lib/skn_utils/env_string_handler.rb
|
177
178
|
- lib/skn_utils/nested_result.rb
|
178
179
|
- lib/skn_utils/notifier_base.rb
|