command_service_object 1.2.1 → 1.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.
- checksums.yaml +4 -4
- data/lib/command_service_object/version.rb +1 -1
- data/lib/generators/service/command/command_generator.rb +1 -1
- data/lib/generators/service/install/templates/services/value_object_base.rb +4 -0
- data/lib/generators/service/service_generator.rb +0 -10
- data/lib/generators/service/usecase/usecase_generator.rb +1 -1
- data/lib/generators/service/value_object/templates/value_object.rb.erb +17 -0
- data/lib/generators/service/value_object/value_object_generator.rb +40 -0
- metadata +4 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c58b761fce4de1db245e0074625141f0c803f50f4611b359f3a632b1d04ff05b
|
4
|
+
data.tar.gz: e01ded8f6eb6c98a867da1dadab904ac8b00f37a45e248a033b4a2d6728708e2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ca1fae4e751ecf83514124c0fa189ff667ce7b180c2fdc531bd2e42365f64c4c55b3b71c0665c4ce137669dc578806044677027c37192d0b554bb766827f6263
|
7
|
+
data.tar.gz: 855ac6338a4660bc2fe704c4b42e9cb9ae9b8f45375b827149f23566d23b16fe566ebbf8d994114319fef56882ad896ce2663168747892ef3acd05b633725feb
|
@@ -13,12 +13,6 @@ module Service
|
|
13
13
|
class ServiceGenerator < Rails::Generators::NamedBase
|
14
14
|
argument :usecases, type: :array, default: [], banner: 'usecase usecase'
|
15
15
|
|
16
|
-
# Skiping options
|
17
|
-
class_option :skip_usecase, type: :boolean, default: false, aliases: '-U'
|
18
|
-
class_option :skip_command, type: :boolean, default: false, aliases: '-C'
|
19
|
-
class_option :skip_entity, type: :boolean, default: false, aliases: '-E'
|
20
|
-
class_option :skip_test, type: :boolean, default: false, aliases: '-T'
|
21
|
-
|
22
16
|
def install_if_not
|
23
17
|
return if File.exist?('app/services')
|
24
18
|
|
@@ -30,14 +24,10 @@ module Service
|
|
30
24
|
end
|
31
25
|
|
32
26
|
def generate_usecases
|
33
|
-
return if options.skip_usecase?
|
34
|
-
|
35
27
|
invoke Service::Generators::UsecaseGenerator, [name, usecases]
|
36
28
|
end
|
37
29
|
|
38
30
|
def generate_commands
|
39
|
-
return if options.skip_command?
|
40
|
-
|
41
31
|
invoke Service::Generators::CommandGenerator, [name, usecases]
|
42
32
|
end
|
43
33
|
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module <%= service_name.classify %>::ValueObjects
|
4
|
+
class <%= @value_object %> < ValueObjectBase
|
5
|
+
# You can read Virtus gem doc for more info.
|
6
|
+
# https://github.com/solnic/virtus
|
7
|
+
|
8
|
+
# Attributes
|
9
|
+
# values do
|
10
|
+
# attribute :latitude, Float
|
11
|
+
# attribute :longitude, Float
|
12
|
+
# end
|
13
|
+
|
14
|
+
# Validations
|
15
|
+
# validates :REPLACE_ME, presence: true
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
require_relative '../setup/setup_generator.rb'
|
2
|
+
require_relative '../helper'
|
3
|
+
|
4
|
+
module Service
|
5
|
+
module Generators
|
6
|
+
class ValueObjectGenerator < Rails::Generators::NamedBase
|
7
|
+
source_root File.expand_path('templates', __dir__)
|
8
|
+
|
9
|
+
argument :value_objects, type: :array, default: [], banner: 'value_object value_object'
|
10
|
+
|
11
|
+
def call
|
12
|
+
invoke Service::Generators::SetupGenerator, [name]
|
13
|
+
|
14
|
+
value_objects.each do |u|
|
15
|
+
@value_object = u.classify
|
16
|
+
create_main(u)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
private
|
21
|
+
|
22
|
+
def create_main(m)
|
23
|
+
path = "#{service_path}/value_objects/#{m.underscore}.rb"
|
24
|
+
template 'value_object.rb.erb', path
|
25
|
+
end
|
26
|
+
|
27
|
+
def service_name
|
28
|
+
Service::Helper.service_name(name)
|
29
|
+
end
|
30
|
+
|
31
|
+
def service_path
|
32
|
+
Service::Helper.service_path(name)
|
33
|
+
end
|
34
|
+
|
35
|
+
def spec_path
|
36
|
+
Service::Helper.spec_path(name)
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: command_service_object
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Adham EL-Deeb
|
@@ -190,6 +190,7 @@ files:
|
|
190
190
|
- lib/generators/service/install/templates/services/listener_base.rb
|
191
191
|
- lib/generators/service/install/templates/services/query_base.rb
|
192
192
|
- lib/generators/service/install/templates/services/service_result.rb
|
193
|
+
- lib/generators/service/install/templates/services/value_object_base.rb
|
193
194
|
- lib/generators/service/listener/listener_generator.rb
|
194
195
|
- lib/generators/service/listener/templates/listener.rb.erb
|
195
196
|
- lib/generators/service/micro/micro_generator.rb
|
@@ -204,6 +205,8 @@ files:
|
|
204
205
|
- lib/generators/service/usecase/templates/usecase.rb.erb
|
205
206
|
- lib/generators/service/usecase/templates/usecase_spec.rb.erb
|
206
207
|
- lib/generators/service/usecase/usecase_generator.rb
|
208
|
+
- lib/generators/service/value_object/templates/value_object.rb.erb
|
209
|
+
- lib/generators/service/value_object/value_object_generator.rb
|
207
210
|
homepage: https://github.com/adham90/command_service_object
|
208
211
|
licenses:
|
209
212
|
- MIT
|