simple_command_dispatcher 1.2.2 → 1.2.5
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.
- checksums.yaml +5 -5
- data/.gitignore +12 -1
- data/.reek.yml +19 -0
- data/.rspec +1 -0
- data/.rubocop.yml +199 -0
- data/.ruby-version +1 -1
- data/CHANGELOG.md +14 -0
- data/Gemfile +2 -0
- data/Gemfile.lock +99 -0
- data/Jenkinsfile +20 -0
- data/README.md +2 -2
- data/Rakefile +6 -5
- data/bin/console +4 -3
- data/lib/core_extensions/string.rb +9 -7
- data/lib/simple_command_dispatcher/configuration.rb +38 -39
- data/lib/simple_command_dispatcher/configure.rb +18 -14
- data/lib/simple_command_dispatcher/klass_transform.rb +221 -230
- data/lib/simple_command_dispatcher/version.rb +5 -3
- data/lib/simple_command_dispatcher.rb +100 -109
- data/lib/tasks/simple_command_dispatcher_sandbox.rake +168 -178
- data/simple_command_dispatcher.gemspec +30 -26
- metadata +109 -45
@@ -1,48 +1,52 @@
|
|
1
|
-
#
|
2
|
-
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
lib = File.expand_path('lib', __dir__)
|
3
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
5
|
require 'simple_command_dispatcher/version'
|
5
6
|
|
6
7
|
Gem::Specification.new do |spec|
|
7
|
-
spec.name =
|
8
|
+
spec.name = 'simple_command_dispatcher'
|
8
9
|
spec.version = SimpleCommand::Dispatcher::VERSION
|
9
|
-
spec.authors = [
|
10
|
-
spec.email = [
|
10
|
+
spec.authors = ['Gene M. Angelo, Jr.']
|
11
|
+
spec.email = ['public.gma@gmail.com']
|
11
12
|
|
12
|
-
spec.summary =
|
13
|
-
|
14
|
-
|
13
|
+
spec.summary = 'Provides a way to dispatch simple_command (ruby gem) commands or your own custom commands (service objects) in a more dynamic manner
|
14
|
+
within your service API. Ideal for rails-api.'
|
15
|
+
spec.description = 'Within a services API (rails-api for instance), you may have a need to execute different simple_commands or your own custom commands (service objects)
|
16
|
+
based on one or more factors: multiple application, API version, user type, user credentials, etc. For example,
|
15
17
|
your service API may need to execute either Api::Auth::V1::AuthenticateCommand.call(...) or Api::Auth::V2::AuthenticateCommand.call(...)
|
16
|
-
based on the API version. simple_command_dispatcher allows you to
|
17
|
-
spec.homepage =
|
18
|
-
spec.license =
|
18
|
+
based on the API version. simple_command_dispatcher allows you to execute either command with one line of code dynamically.'.gsub(/\s+/, ' ')
|
19
|
+
spec.homepage = 'https://github.com/gangelo/simple_command_dispatcher'
|
20
|
+
spec.license = 'MIT'
|
19
21
|
|
20
22
|
# Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
|
21
23
|
# to allow pushing to a single host or delete this section to allow pushing to any host.
|
22
|
-
#if spec.respond_to?(:metadata)
|
24
|
+
# if spec.respond_to?(:metadata)
|
23
25
|
# spec.metadata['allowed_push_host'] = "TODO: Set to 'http://mygemserver.com'"
|
24
|
-
#else
|
26
|
+
# else
|
25
27
|
# raise "RubyGems 2.0 or newer is required to protect against " \
|
26
28
|
# "public gem pushes."
|
27
|
-
#end
|
29
|
+
# end
|
28
30
|
|
29
31
|
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
30
32
|
f.match(%r{^(test|spec|features)/})
|
31
33
|
end
|
32
|
-
spec.bindir =
|
34
|
+
spec.bindir = 'exe'
|
33
35
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
34
|
-
spec.require_paths = [
|
35
|
-
|
36
|
-
spec.add_development_dependency "bundler", "~> 1.13"
|
37
|
-
spec.add_development_dependency "rake", "~> 10.0"
|
38
|
-
spec.add_development_dependency "rspec", "~> 3.0"
|
39
|
-
|
40
|
-
spec.add_development_dependency "yard"
|
41
|
-
spec.add_development_dependency "rdoc"
|
42
|
-
spec.add_development_dependency "colorize"
|
36
|
+
spec.require_paths = ['lib']
|
43
37
|
|
44
38
|
spec.required_ruby_version = '>= 2.2.2'
|
45
39
|
spec.add_runtime_dependency 'activesupport', '~> 5.0', '>= 5.0.0.1'
|
46
|
-
|
47
|
-
spec.add_runtime_dependency 'simple_command', '
|
40
|
+
#spec.add_runtime_dependency 'simple_command', '>= 0.0.9'
|
41
|
+
spec.add_runtime_dependency 'simple_command', '~> 0.2.0'
|
42
|
+
|
43
|
+
spec.add_development_dependency 'pry-byebug', '~> 3.9'
|
44
|
+
spec.add_development_dependency 'bundler', '~> 2.2', '>= 2.2.17'
|
45
|
+
spec.add_development_dependency 'colorize', '~> 0.8.1'
|
46
|
+
spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.6'
|
47
|
+
spec.add_development_dependency 'rdoc', '~> 6.4'
|
48
|
+
spec.add_development_dependency 'rspec', '>= 3.10'
|
49
|
+
spec.add_development_dependency 'rubocop', '~> 1.35'
|
50
|
+
spec.add_development_dependency 'rubocop-performance', '~> 1.14', '>= 1.14.3'
|
51
|
+
spec.add_development_dependency 'yard', '~> 0.9.28'
|
48
52
|
end
|
metadata
CHANGED
@@ -1,139 +1,199 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: simple_command_dispatcher
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gene M. Angelo, Jr.
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-08-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: activesupport
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '5.0'
|
20
|
+
- - ">="
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 5.0.0.1
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - "~>"
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '5.0'
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 5.0.0.1
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: simple_command
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - "~>"
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: 0.2.0
|
40
|
+
type: :runtime
|
41
|
+
prerelease: false
|
42
|
+
version_requirements: !ruby/object:Gem::Requirement
|
43
|
+
requirements:
|
44
|
+
- - "~>"
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: 0.2.0
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: pry-byebug
|
15
49
|
requirement: !ruby/object:Gem::Requirement
|
16
50
|
requirements:
|
17
51
|
- - "~>"
|
18
52
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
53
|
+
version: '3.9'
|
20
54
|
type: :development
|
21
55
|
prerelease: false
|
22
56
|
version_requirements: !ruby/object:Gem::Requirement
|
23
57
|
requirements:
|
24
58
|
- - "~>"
|
25
59
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
60
|
+
version: '3.9'
|
27
61
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
62
|
+
name: bundler
|
29
63
|
requirement: !ruby/object:Gem::Requirement
|
30
64
|
requirements:
|
31
65
|
- - "~>"
|
32
66
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
67
|
+
version: '2.2'
|
68
|
+
- - ">="
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: 2.2.17
|
34
71
|
type: :development
|
35
72
|
prerelease: false
|
36
73
|
version_requirements: !ruby/object:Gem::Requirement
|
37
74
|
requirements:
|
38
75
|
- - "~>"
|
39
76
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
77
|
+
version: '2.2'
|
78
|
+
- - ">="
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: 2.2.17
|
41
81
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
82
|
+
name: colorize
|
43
83
|
requirement: !ruby/object:Gem::Requirement
|
44
84
|
requirements:
|
45
85
|
- - "~>"
|
46
86
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
87
|
+
version: 0.8.1
|
48
88
|
type: :development
|
49
89
|
prerelease: false
|
50
90
|
version_requirements: !ruby/object:Gem::Requirement
|
51
91
|
requirements:
|
52
92
|
- - "~>"
|
53
93
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
94
|
+
version: 0.8.1
|
55
95
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
96
|
+
name: rake
|
57
97
|
requirement: !ruby/object:Gem::Requirement
|
58
98
|
requirements:
|
99
|
+
- - "~>"
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '13.0'
|
59
102
|
- - ">="
|
60
103
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
104
|
+
version: 13.0.6
|
62
105
|
type: :development
|
63
106
|
prerelease: false
|
64
107
|
version_requirements: !ruby/object:Gem::Requirement
|
65
108
|
requirements:
|
109
|
+
- - "~>"
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: '13.0'
|
66
112
|
- - ">="
|
67
113
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
114
|
+
version: 13.0.6
|
69
115
|
- !ruby/object:Gem::Dependency
|
70
116
|
name: rdoc
|
71
117
|
requirement: !ruby/object:Gem::Requirement
|
72
118
|
requirements:
|
73
|
-
- - "
|
119
|
+
- - "~>"
|
74
120
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
121
|
+
version: '6.4'
|
76
122
|
type: :development
|
77
123
|
prerelease: false
|
78
124
|
version_requirements: !ruby/object:Gem::Requirement
|
79
125
|
requirements:
|
80
|
-
- - "
|
126
|
+
- - "~>"
|
81
127
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
128
|
+
version: '6.4'
|
83
129
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
130
|
+
name: rspec
|
85
131
|
requirement: !ruby/object:Gem::Requirement
|
86
132
|
requirements:
|
87
133
|
- - ">="
|
88
134
|
- !ruby/object:Gem::Version
|
89
|
-
version: '
|
135
|
+
version: '3.10'
|
90
136
|
type: :development
|
91
137
|
prerelease: false
|
92
138
|
version_requirements: !ruby/object:Gem::Requirement
|
93
139
|
requirements:
|
94
140
|
- - ">="
|
95
141
|
- !ruby/object:Gem::Version
|
96
|
-
version: '
|
142
|
+
version: '3.10'
|
97
143
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
144
|
+
name: rubocop
|
99
145
|
requirement: !ruby/object:Gem::Requirement
|
100
146
|
requirements:
|
101
147
|
- - "~>"
|
102
148
|
- !ruby/object:Gem::Version
|
103
|
-
version: '
|
149
|
+
version: '1.35'
|
150
|
+
type: :development
|
151
|
+
prerelease: false
|
152
|
+
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
requirements:
|
154
|
+
- - "~>"
|
155
|
+
- !ruby/object:Gem::Version
|
156
|
+
version: '1.35'
|
157
|
+
- !ruby/object:Gem::Dependency
|
158
|
+
name: rubocop-performance
|
159
|
+
requirement: !ruby/object:Gem::Requirement
|
160
|
+
requirements:
|
161
|
+
- - "~>"
|
162
|
+
- !ruby/object:Gem::Version
|
163
|
+
version: '1.14'
|
104
164
|
- - ">="
|
105
165
|
- !ruby/object:Gem::Version
|
106
|
-
version:
|
107
|
-
type: :
|
166
|
+
version: 1.14.3
|
167
|
+
type: :development
|
108
168
|
prerelease: false
|
109
169
|
version_requirements: !ruby/object:Gem::Requirement
|
110
170
|
requirements:
|
111
171
|
- - "~>"
|
112
172
|
- !ruby/object:Gem::Version
|
113
|
-
version: '
|
173
|
+
version: '1.14'
|
114
174
|
- - ">="
|
115
175
|
- !ruby/object:Gem::Version
|
116
|
-
version:
|
176
|
+
version: 1.14.3
|
117
177
|
- !ruby/object:Gem::Dependency
|
118
|
-
name:
|
178
|
+
name: yard
|
119
179
|
requirement: !ruby/object:Gem::Requirement
|
120
180
|
requirements:
|
121
|
-
- - "
|
181
|
+
- - "~>"
|
122
182
|
- !ruby/object:Gem::Version
|
123
|
-
version: 0.
|
124
|
-
type: :
|
183
|
+
version: 0.9.28
|
184
|
+
type: :development
|
125
185
|
prerelease: false
|
126
186
|
version_requirements: !ruby/object:Gem::Requirement
|
127
187
|
requirements:
|
128
|
-
- - "
|
188
|
+
- - "~>"
|
129
189
|
- !ruby/object:Gem::Version
|
130
|
-
version: 0.
|
190
|
+
version: 0.9.28
|
131
191
|
description: 'Within a services API (rails-api for instance), you may have a need
|
132
|
-
to execute different
|
133
|
-
|
134
|
-
need to execute either Api::Auth::V1::AuthenticateCommand.call(...)
|
135
|
-
based on the API version. simple_command_dispatcher
|
136
|
-
to execute
|
192
|
+
to execute different simple_commands or your own custom commands (service objects)
|
193
|
+
based on one or more factors: multiple application, API version, user type, user
|
194
|
+
credentials, etc. For example, your service API may need to execute either Api::Auth::V1::AuthenticateCommand.call(...)
|
195
|
+
or Api::Auth::V2::AuthenticateCommand.call(...) based on the API version. simple_command_dispatcher
|
196
|
+
allows you to execute either command with one line of code dynamically.'
|
137
197
|
email:
|
138
198
|
- public.gma@gmail.com
|
139
199
|
executables: []
|
@@ -141,12 +201,16 @@ extensions: []
|
|
141
201
|
extra_rdoc_files: []
|
142
202
|
files:
|
143
203
|
- ".gitignore"
|
204
|
+
- ".reek.yml"
|
144
205
|
- ".rspec"
|
206
|
+
- ".rubocop.yml"
|
145
207
|
- ".ruby-version"
|
146
208
|
- ".travis.yml"
|
147
209
|
- CHANGELOG.md
|
148
210
|
- CODE_OF_CONDUCT.md
|
149
211
|
- Gemfile
|
212
|
+
- Gemfile.lock
|
213
|
+
- Jenkinsfile
|
150
214
|
- LICENSE.txt
|
151
215
|
- README.md
|
152
216
|
- Rakefile
|
@@ -164,7 +228,7 @@ homepage: https://github.com/gangelo/simple_command_dispatcher
|
|
164
228
|
licenses:
|
165
229
|
- MIT
|
166
230
|
metadata: {}
|
167
|
-
post_install_message:
|
231
|
+
post_install_message:
|
168
232
|
rdoc_options: []
|
169
233
|
require_paths:
|
170
234
|
- lib
|
@@ -179,10 +243,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
179
243
|
- !ruby/object:Gem::Version
|
180
244
|
version: '0'
|
181
245
|
requirements: []
|
182
|
-
|
183
|
-
|
184
|
-
signing_key:
|
246
|
+
rubygems_version: 3.0.3
|
247
|
+
signing_key:
|
185
248
|
specification_version: 4
|
186
|
-
summary: Provides a way to dispatch simple_command ruby gem
|
187
|
-
objects) in a more dynamic manner within your service API.
|
249
|
+
summary: Provides a way to dispatch simple_command (ruby gem) commands or your own
|
250
|
+
custom commands (service objects) in a more dynamic manner within your service API.
|
251
|
+
Ideal for rails-api.
|
188
252
|
test_files: []
|