12
13
14
15
16
17
18
19
20
21
22
|
# File 'lib/rivulet/cli/generate/service/projection.rb', line 12
def call(name:, **)
service_name, step_name = name.split('.')
service_dir = underscore(service_name)
projection_dir = underscore(step_name)
service_module = camelize(service_dir)
projection_class = camelize(projection_dir)
base = "app/services/#{service_dir}"
write "#{base}/projections/#{projection_dir}.rb", projection_template(service_module, projection_class)
register_projection(base, service_module, projection_dir, projection_class)
end
|