convenient_service 0.11.0 → 0.12.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.dev/.tmuxinator.yml +2 -1
- data/.github/workflows/ci.yml +21 -1
- data/CHANGELOG.md +67 -0
- data/Gemfile +6 -0
- data/README.md +4 -2
- data/Taskfile.yml +94 -0
- data/convenient_service.gemspec +40 -2
- data/docker/2.7/Dockerfile +3 -3
- data/docker/3.0/Dockerfile +2 -2
- data/docker/3.1/Dockerfile +2 -2
- data/docker/3.2/Dockerfile +73 -0
- data/docker/jruby-9.4/Dockerfile +88 -0
- data/docker/truffleruby-22.3/Dockerfile +91 -0
- data/lib/convenient_service/common/plugins/aliases.rb +0 -1
- data/lib/convenient_service/common/plugins/assigns_attributes_in_constructor/using_active_model_attribute_assignment/middleware.rb +12 -8
- data/lib/convenient_service/common/plugins/caches_return_value/middleware.rb +3 -3
- data/lib/convenient_service/common/plugins/can_have_user_provided_entity/errors.rb +2 -2
- data/lib/convenient_service/common/plugins/has_around_callbacks/errors.rb +1 -1
- data/lib/convenient_service/common/plugins/has_callbacks/entities/callback.rb +7 -7
- data/lib/convenient_service/common/plugins/has_internals/entities/internals/plugins/aliases.rb +7 -0
- data/lib/convenient_service/common/plugins/has_internals/entities/internals/plugins.rb +2 -0
- data/lib/convenient_service/configs/minimal.rb +19 -10
- data/lib/convenient_service/core/class_methods.rb +24 -9
- data/lib/convenient_service/core/constants.rb +36 -0
- data/lib/convenient_service/core/entities/config/commands/track_method_missing_commit_trigger.rb +69 -0
- data/lib/convenient_service/core/entities/config/commands.rb +3 -0
- data/lib/convenient_service/core/entities/config/entities/concerns/entities/stack.rb +10 -10
- data/lib/convenient_service/core/entities/config/entities/method_middlewares/entities/chain.rb +3 -3
- data/lib/convenient_service/core/entities/config/entities/method_middlewares/entities/middleware.rb +18 -1
- data/lib/convenient_service/core/entities/config/entities/method_middlewares/entities/middleware_creator.rb +62 -0
- data/lib/convenient_service/core/entities/config/entities/method_middlewares/entities/stack.rb +12 -12
- data/lib/convenient_service/core/entities/config/entities/method_middlewares/entities.rb +1 -0
- data/lib/convenient_service/core/entities/config/entities/method_middlewares.rb +1 -1
- data/lib/convenient_service/core/entities/config/errors.rb +38 -1
- data/lib/convenient_service/core/entities/config.rb +14 -4
- data/lib/convenient_service/core/instance_methods.rb +6 -4
- data/lib/convenient_service/core.rb +1 -0
- data/lib/convenient_service/dependencies/built_in.rb +7 -0
- data/lib/convenient_service/dependencies/extractions/active_support_concern/concern.rb +18 -2
- data/lib/convenient_service/dependencies/extractions/active_support_concern.rb +4 -0
- data/lib/convenient_service/dependencies/extractions/ruby_middleware/middleware/builder.rb +7 -1
- data/lib/convenient_service/dependencies/extractions/ruby_middleware/middleware/logger.rb +7 -1
- data/lib/convenient_service/dependencies/extractions/ruby_middleware/middleware/runner.rb +15 -1
- data/lib/convenient_service/dependencies/extractions/ruby_middleware/middleware.rb +8 -1
- data/lib/convenient_service/dependencies/extractions/ruby_middleware.rb +3 -2
- data/lib/convenient_service/dependencies.rb +16 -15
- data/lib/convenient_service/examples/dry/gemfile.rb +4 -4
- data/lib/convenient_service/examples/rails/gemfile.rb +4 -4
- data/lib/convenient_service/examples/standard/cowsay.rb +4 -4
- data/lib/convenient_service/examples/standard/gemfile/services/assert_file_exists.rb +1 -1
- data/lib/convenient_service/examples/standard/gemfile/services/assert_file_not_empty.rb +1 -1
- data/lib/convenient_service/examples/standard/gemfile/services/assert_node_available.rb +0 -9
- data/lib/convenient_service/examples/standard/gemfile/services/assert_npm_package_available.rb +0 -10
- data/lib/convenient_service/examples/standard/gemfile/services/format.rb +0 -10
- data/lib/convenient_service/examples/standard/gemfile/services/merge_sections.rb +0 -10
- data/lib/convenient_service/examples/standard/gemfile/services/parse_content.rb +0 -10
- data/lib/convenient_service/examples/standard/gemfile/services/read_file_content.rb +0 -10
- data/lib/convenient_service/examples/standard/gemfile/services/replace_file_content.rb +0 -10
- data/lib/convenient_service/examples/standard/gemfile.rb +4 -4
- data/lib/convenient_service/examples/standard/request_params/services/extract_params_from_body.rb +0 -10
- data/lib/convenient_service/examples/standard/request_params/services/extract_params_from_path.rb +0 -10
- data/lib/convenient_service/examples/standard/request_params/services/validate_casted_params.rb +0 -10
- data/lib/convenient_service/examples/standard/request_params/services/validate_uncasted_params.rb +0 -10
- data/lib/convenient_service/examples/standard/request_params.rb +4 -4
- data/lib/convenient_service/feature.rb +12 -0
- data/lib/convenient_service/logger.rb +6 -5
- data/lib/convenient_service/rspec/helpers/custom/in_threads.rb +74 -0
- data/lib/convenient_service/rspec/helpers/custom/stub_service/constants.rb +20 -0
- data/lib/convenient_service/rspec/helpers/custom/stub_service/entities/stubbed_service.rb +4 -4
- data/lib/convenient_service/rspec/helpers/custom/stub_service.rb +1 -0
- data/lib/convenient_service/rspec/helpers/custom/wrap_method/entities/wrapped_method.rb +3 -3
- data/lib/convenient_service/rspec/helpers/custom/wrap_method/errors.rb +1 -1
- data/lib/convenient_service/rspec/helpers/custom.rb +1 -0
- data/lib/convenient_service/rspec/helpers/in_threads.rb +13 -0
- data/lib/convenient_service/rspec/helpers.rb +2 -0
- data/lib/convenient_service/rspec/matchers/custom/delegate_to/entities/matcher/entities/chainings_collection/errors.rb +3 -3
- data/lib/convenient_service/rspec/matchers/custom/delegate_to/entities/matcher/entities/delegation.rb +3 -3
- data/lib/convenient_service/rspec/matchers/custom/export.rb +82 -0
- data/lib/convenient_service/rspec/matchers/custom/results/base/constants.rb +22 -0
- data/lib/convenient_service/rspec/matchers/custom/results/base/errors.rb +1 -1
- data/lib/convenient_service/rspec/matchers/custom/results/base.rb +2 -1
- data/lib/convenient_service/rspec/matchers/custom.rb +1 -0
- data/lib/convenient_service/rspec/matchers/export.rb +13 -0
- data/lib/convenient_service/rspec/matchers.rb +2 -0
- data/lib/convenient_service/service/plugins/aliases.rb +0 -2
- data/lib/convenient_service/service/plugins/can_have_method_steps/middleware.rb +2 -2
- data/lib/convenient_service/service/plugins/can_have_result_step/middleware.rb +2 -2
- data/lib/convenient_service/service/plugins/can_have_steps/concern.rb +2 -2
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/commands/cast_method.rb +46 -11
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/commands/cast_method_direction.rb +29 -2
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/commands/cast_method_factory.rb +113 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/commands.rb +1 -3
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/base.rb +62 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash/base.rb +35 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash/proc_value.rb +42 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash/raw_value.rb +42 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash/reassignment_value.rb +42 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash/string_value.rb +42 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash/symbol_value.rb +42 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash.rb +8 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/method.rb +40 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/reassignment.rb +40 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/string.rb +40 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/symbol.rb +40 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories.rb +8 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/entities.rb +1 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/errors.rb +7 -7
- data/lib/convenient_service/service/plugins/can_have_steps/entities/step/errors.rb +12 -8
- data/lib/convenient_service/service/plugins/can_have_steps/entities/step/plugins/aliases.rb +7 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/step/plugins.rb +2 -0
- data/lib/convenient_service/service/plugins/can_have_steps/entities/step_collection.rb +37 -8
- data/lib/convenient_service/service/plugins/can_have_stubbed_result/concern.rb +19 -11
- data/lib/convenient_service/service/plugins/can_have_stubbed_result/middleware.rb +3 -3
- data/lib/convenient_service/service/plugins/has_result/concern/instance_methods.rb +3 -3
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/aliases.rb +7 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/can_have_parent_result/concern.rb +12 -5
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/{has_jsend_status_and_attributes/concern/class_methods.rb → can_have_parent_result/constants.rb} +3 -4
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/can_have_parent_result.rb +1 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/{has_jsend_status_and_attributes/commands/cast_jsend_attributes.rb → has_j_send_status_and_attributes/commands/cast_j_send_attributes.rb} +1 -1
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/commands/create_code_class.rb +49 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/commands/create_data_class.rb +49 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/commands/create_message_class.rb +49 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/commands/create_status_class.rb +49 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/commands.rb +7 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/concern/class_methods.rb +69 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/{has_jsend_status_and_attributes → has_j_send_status_and_attributes}/concern/instance_methods.rb +9 -9
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/{has_jsend_status_and_attributes → has_j_send_status_and_attributes}/concern.rb +1 -1
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/{has_jsend_status_and_attributes → has_j_send_status_and_attributes}/entities/code/concern/class_methods.rb +2 -2
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/{has_jsend_status_and_attributes → has_j_send_status_and_attributes}/entities/code/concern/instance_methods.rb +3 -3
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/{has_jsend_status_and_attributes → has_j_send_status_and_attributes}/entities/code/concern.rb +1 -1
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/{has_jsend_status_and_attributes → has_j_send_status_and_attributes}/entities/code.rb +1 -1
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/data/concern/class_methods.rb +38 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/data/concern/instance_methods.rb +94 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/data/concern.rb +36 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/data.rb +25 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/message/concern/class_methods.rb +40 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/message/concern/instance_methods.rb +58 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/message/concern.rb +36 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/message.rb +25 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/status/concern/class_methods.rb +40 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/status/concern/instance_methods.rb +115 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/status/concern.rb +36 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/status.rb +25 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/{has_jsend_status_and_attributes → has_j_send_status_and_attributes}/errors.rb +6 -2
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/{has_jsend_status_and_attributes → has_j_send_status_and_attributes}/middleware.rb +4 -4
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/{has_jsend_status_and_attributes/structs/jsend_attributes.rb → has_j_send_status_and_attributes/structs/j_send_attributes.rb} +1 -1
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/structs.rb +3 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes.rb +8 -0
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_result_short_syntax/concern.rb +3 -3
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/raises_on_not_checked_result_status/errors.rb +1 -1
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins.rb +3 -1
- data/lib/convenient_service/service/plugins/has_result/errors.rb +2 -2
- data/lib/convenient_service/service/plugins/has_result_status_check_short_syntax/concern.rb +16 -0
- data/lib/convenient_service/service/plugins/raises_on_double_result/errors.rb +1 -1
- data/lib/convenient_service/service/plugins/rescues_result_unhandled_exceptions/commands/format_backtrace.rb +1 -1
- data/lib/convenient_service/service/plugins/rescues_result_unhandled_exceptions/commands/format_exception.rb +11 -10
- data/lib/convenient_service/service/plugins/rescues_result_unhandled_exceptions/middleware.rb +14 -7
- data/lib/convenient_service/services/run_own_method_in_organizer.rb +1 -1
- data/lib/convenient_service/support/abstract_method/errors.rb +1 -1
- data/lib/convenient_service/support/arguments.rb +3 -3
- data/lib/convenient_service/support/cache/key.rb +3 -3
- data/lib/convenient_service/support/cache.rb +1 -1
- data/lib/convenient_service/support/castable/errors.rb +2 -2
- data/lib/convenient_service/support/counter.rb +212 -0
- data/lib/convenient_service/support/dependency_container/commands/assert_valid_container.rb +33 -0
- data/lib/convenient_service/support/dependency_container/commands/assert_valid_method.rb +58 -0
- data/lib/convenient_service/support/dependency_container/commands/assert_valid_scope.rb +4 -3
- data/lib/convenient_service/support/dependency_container/commands/define_entry.rb +49 -0
- data/lib/convenient_service/support/dependency_container/commands.rb +3 -0
- data/lib/convenient_service/support/dependency_container/container.rb +23 -0
- data/lib/convenient_service/support/dependency_container/entry.rb +22 -0
- data/lib/convenient_service/support/dependency_container/errors.rb +5 -5
- data/lib/convenient_service/support/dependency_container/import.rb +3 -3
- data/lib/convenient_service/support/dependency_container.rb +3 -0
- data/lib/convenient_service/support/finite_loop.rb +37 -2
- data/lib/convenient_service/support/middleware/stack_builder.rb +1 -1
- data/lib/convenient_service/support/not_passed.rb +4 -3
- data/lib/convenient_service/support/ruby.rb +31 -0
- data/lib/convenient_service/support/safe_method.rb +65 -0
- data/lib/convenient_service/support/thread_safe_counter.rb +119 -0
- data/lib/convenient_service/support/undefined.rb +4 -3
- data/lib/convenient_service/support/unique_value.rb +69 -0
- data/lib/convenient_service/support.rb +4 -0
- data/lib/convenient_service/utils/array/errors.rb +1 -1
- data/lib/convenient_service/utils/array/find_last.rb +1 -1
- data/lib/convenient_service/utils/array/find_yield.rb +1 -1
- data/lib/convenient_service/utils/object/resolve_class.rb +56 -0
- data/lib/convenient_service/utils/object.rb +9 -0
- data/lib/convenient_service/version.rb +1 -1
- data/lib/convenient_service.rb +6 -0
- metadata +75 -34
- data/lib/convenient_service/factories/arguments.rb +0 -43
- data/lib/convenient_service/factories/results.rb +0 -214
- data/lib/convenient_service/factories/services.rb +0 -229
- data/lib/convenient_service/factories/step/instance.rb +0 -42
- data/lib/convenient_service/factories/step.rb +0 -3
- data/lib/convenient_service/factories/steps.rb +0 -126
- data/lib/convenient_service/factories.rb +0 -22
- data/lib/convenient_service/factory.rb +0 -21
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/commands/cast_method_caller.rb +0 -74
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/commands/cast_method_key.rb +0 -78
- data/lib/convenient_service/service/plugins/can_have_steps/entities/method/commands/cast_method_name.rb +0 -78
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_jsend_status_and_attributes/commands.rb +0 -3
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_jsend_status_and_attributes/entities/data/class_methods.rb +0 -32
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_jsend_status_and_attributes/entities/data.rb +0 -74
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_jsend_status_and_attributes/entities/message/class_methods.rb +0 -34
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_jsend_status_and_attributes/entities/message.rb +0 -45
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_jsend_status_and_attributes/entities/status/class_methods.rb +0 -34
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_jsend_status_and_attributes/entities/status.rb +0 -77
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_jsend_status_and_attributes/structs.rb +0 -3
- data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_jsend_status_and_attributes.rb +0 -8
- /data/lib/convenient_service/service/plugins/has_result/entities/result/plugins/{has_jsend_status_and_attributes → has_j_send_status_and_attributes}/entities.rb +0 -0
@@ -0,0 +1,56 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
##
|
4
|
+
# @example
|
5
|
+
# module Musician
|
6
|
+
# end
|
7
|
+
#
|
8
|
+
# class Person
|
9
|
+
# end
|
10
|
+
#
|
11
|
+
# person = Person.new
|
12
|
+
#
|
13
|
+
# ConvenientService::Utils::Object::ResolveClass.call(42)
|
14
|
+
# # => Integer
|
15
|
+
#
|
16
|
+
# ConvenientService::Utils::Object::ResolveClass.call("foo")
|
17
|
+
# # => String
|
18
|
+
#
|
19
|
+
# ConvenientService::Utils::Object::ResolveClass.call(person)
|
20
|
+
# # => Person
|
21
|
+
#
|
22
|
+
# ConvenientService::Utils::Object::ResolveClass.call(Person)
|
23
|
+
# # => #<Class:Person>
|
24
|
+
#
|
25
|
+
# ConvenientService::Utils::Object::ResolveClass.call(Musician)
|
26
|
+
# # => #<Class:Musician>
|
27
|
+
#
|
28
|
+
module ConvenientService
|
29
|
+
module Utils
|
30
|
+
module Object
|
31
|
+
class ResolveClass < Support::Command
|
32
|
+
##
|
33
|
+
# @!attribute [r] object
|
34
|
+
# @return [Object] Can be any type.
|
35
|
+
#
|
36
|
+
attr_reader :object
|
37
|
+
|
38
|
+
##
|
39
|
+
# @param object [Object] Can be any type.
|
40
|
+
#
|
41
|
+
def initialize(object)
|
42
|
+
@object = object
|
43
|
+
end
|
44
|
+
|
45
|
+
##
|
46
|
+
# @return [Class]
|
47
|
+
#
|
48
|
+
def call
|
49
|
+
return object.singleton_class if object.is_a?(::Module)
|
50
|
+
|
51
|
+
object.class
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
@@ -3,6 +3,7 @@
|
|
3
3
|
require_relative "object/instance_variable_delete"
|
4
4
|
require_relative "object/instance_variable_fetch"
|
5
5
|
require_relative "object/memoize_including_falsy_values"
|
6
|
+
require_relative "object/resolve_class"
|
6
7
|
require_relative "object/resolve_type"
|
7
8
|
|
8
9
|
module ConvenientService
|
@@ -35,6 +36,14 @@ module ConvenientService
|
|
35
36
|
MemoizeIncludingFalsyValues.call(...)
|
36
37
|
end
|
37
38
|
|
39
|
+
##
|
40
|
+
# @example
|
41
|
+
# ConvenientService::Utils::Object.resolve_class("foo")
|
42
|
+
#
|
43
|
+
def resolve_class(...)
|
44
|
+
ResolveClass.call(...)
|
45
|
+
end
|
46
|
+
|
38
47
|
##
|
39
48
|
# @example
|
40
49
|
# ConvenientService::Utils::Object.resolve_type("foo")
|
data/lib/convenient_service.rb
CHANGED
@@ -36,6 +36,12 @@ require_relative "convenient_service/configs"
|
|
36
36
|
#
|
37
37
|
require_relative "convenient_service/services"
|
38
38
|
|
39
|
+
##
|
40
|
+
# @internal
|
41
|
+
# Convenient Service Feature.
|
42
|
+
#
|
43
|
+
require_relative "convenient_service/feature"
|
44
|
+
|
39
45
|
##
|
40
46
|
# @internal
|
41
47
|
# Convenient Service Aliases.
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: convenient_service
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.12.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Marian Kostyk
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-03
|
11
|
+
date: 2023-04-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: appraisal
|
@@ -371,6 +371,9 @@ files:
|
|
371
371
|
- docker/2.7/Dockerfile
|
372
372
|
- docker/3.0/Dockerfile
|
373
373
|
- docker/3.1/Dockerfile
|
374
|
+
- docker/3.2/Dockerfile
|
375
|
+
- docker/jruby-9.4/Dockerfile
|
376
|
+
- docker/truffleruby-22.3/Dockerfile
|
374
377
|
- env.rb
|
375
378
|
- lib/convenient_service.rb
|
376
379
|
- lib/convenient_service/aliases.rb
|
@@ -426,6 +429,7 @@ files:
|
|
426
429
|
- lib/convenient_service/common/plugins/has_internals/entities/internals.rb
|
427
430
|
- lib/convenient_service/common/plugins/has_internals/entities/internals/concern.rb
|
428
431
|
- lib/convenient_service/common/plugins/has_internals/entities/internals/plugins.rb
|
432
|
+
- lib/convenient_service/common/plugins/has_internals/entities/internals/plugins/aliases.rb
|
429
433
|
- lib/convenient_service/common/plugins/has_internals/entities/internals/plugins/has_cache.rb
|
430
434
|
- lib/convenient_service/common/plugins/has_internals/entities/internals/plugins/has_cache/concern.rb
|
431
435
|
- lib/convenient_service/common/plugins/normalizes_env.rb
|
@@ -437,9 +441,12 @@ files:
|
|
437
441
|
- lib/convenient_service/core.rb
|
438
442
|
- lib/convenient_service/core/aliases.rb
|
439
443
|
- lib/convenient_service/core/class_methods.rb
|
444
|
+
- lib/convenient_service/core/constants.rb
|
440
445
|
- lib/convenient_service/core/entities.rb
|
441
446
|
- lib/convenient_service/core/entities/classic_middleware.rb
|
442
447
|
- lib/convenient_service/core/entities/config.rb
|
448
|
+
- lib/convenient_service/core/entities/config/commands.rb
|
449
|
+
- lib/convenient_service/core/entities/config/commands/track_method_missing_commit_trigger.rb
|
443
450
|
- lib/convenient_service/core/entities/config/entities.rb
|
444
451
|
- lib/convenient_service/core/entities/config/entities/concerns.rb
|
445
452
|
- lib/convenient_service/core/entities/config/entities/concerns/entities.rb
|
@@ -468,6 +475,7 @@ files:
|
|
468
475
|
- lib/convenient_service/core/entities/config/entities/method_middlewares/entities/container/concern/class_methods.rb
|
469
476
|
- lib/convenient_service/core/entities/config/entities/method_middlewares/entities/container/concern/instance_methods.rb
|
470
477
|
- lib/convenient_service/core/entities/config/entities/method_middlewares/entities/middleware.rb
|
478
|
+
- lib/convenient_service/core/entities/config/entities/method_middlewares/entities/middleware_creator.rb
|
471
479
|
- lib/convenient_service/core/entities/config/entities/method_middlewares/entities/stack.rb
|
472
480
|
- lib/convenient_service/core/entities/config/errors.rb
|
473
481
|
- lib/convenient_service/core/instance_methods.rb
|
@@ -584,20 +592,15 @@ files:
|
|
584
592
|
- lib/convenient_service/examples/standard/request_params/utils/object.rb
|
585
593
|
- lib/convenient_service/examples/standard/request_params/utils/object/blank.rb
|
586
594
|
- lib/convenient_service/examples/standard/request_params/utils/object/present.rb
|
587
|
-
- lib/convenient_service/
|
588
|
-
- lib/convenient_service/factories/arguments.rb
|
589
|
-
- lib/convenient_service/factories/results.rb
|
590
|
-
- lib/convenient_service/factories/services.rb
|
591
|
-
- lib/convenient_service/factories/step.rb
|
592
|
-
- lib/convenient_service/factories/step/instance.rb
|
593
|
-
- lib/convenient_service/factories/steps.rb
|
594
|
-
- lib/convenient_service/factory.rb
|
595
|
+
- lib/convenient_service/feature.rb
|
595
596
|
- lib/convenient_service/logger.rb
|
596
597
|
- lib/convenient_service/rspec.rb
|
597
598
|
- lib/convenient_service/rspec/helpers.rb
|
598
599
|
- lib/convenient_service/rspec/helpers/custom.rb
|
599
600
|
- lib/convenient_service/rspec/helpers/custom/ignoring_error.rb
|
601
|
+
- lib/convenient_service/rspec/helpers/custom/in_threads.rb
|
600
602
|
- lib/convenient_service/rspec/helpers/custom/stub_service.rb
|
603
|
+
- lib/convenient_service/rspec/helpers/custom/stub_service/constants.rb
|
601
604
|
- lib/convenient_service/rspec/helpers/custom/stub_service/entities.rb
|
602
605
|
- lib/convenient_service/rspec/helpers/custom/stub_service/entities/result_spec.rb
|
603
606
|
- lib/convenient_service/rspec/helpers/custom/stub_service/entities/stubbed_service.rb
|
@@ -606,6 +609,7 @@ files:
|
|
606
609
|
- lib/convenient_service/rspec/helpers/custom/wrap_method/entities/wrapped_method.rb
|
607
610
|
- lib/convenient_service/rspec/helpers/custom/wrap_method/errors.rb
|
608
611
|
- lib/convenient_service/rspec/helpers/ignoring_error.rb
|
612
|
+
- lib/convenient_service/rspec/helpers/in_threads.rb
|
609
613
|
- lib/convenient_service/rspec/helpers/stub_service.rb
|
610
614
|
- lib/convenient_service/rspec/helpers/wrap_method.rb
|
611
615
|
- lib/convenient_service/rspec/matchers.rb
|
@@ -640,6 +644,7 @@ files:
|
|
640
644
|
- lib/convenient_service/rspec/matchers/custom/delegate_to/entities/matcher/entities/chainings_collection.rb
|
641
645
|
- lib/convenient_service/rspec/matchers/custom/delegate_to/entities/matcher/entities/chainings_collection/errors.rb
|
642
646
|
- lib/convenient_service/rspec/matchers/custom/delegate_to/entities/matcher/entities/delegation.rb
|
647
|
+
- lib/convenient_service/rspec/matchers/custom/export.rb
|
643
648
|
- lib/convenient_service/rspec/matchers/custom/extend_module.rb
|
644
649
|
- lib/convenient_service/rspec/matchers/custom/have_abstract_method.rb
|
645
650
|
- lib/convenient_service/rspec/matchers/custom/have_alias_method.rb
|
@@ -657,6 +662,7 @@ files:
|
|
657
662
|
- lib/convenient_service/rspec/matchers/custom/results/base/commands/generate_expected_step_part.rb
|
658
663
|
- lib/convenient_service/rspec/matchers/custom/results/base/commands/generate_got_step_part.rb
|
659
664
|
- lib/convenient_service/rspec/matchers/custom/results/base/commands/match_result_step.rb
|
665
|
+
- lib/convenient_service/rspec/matchers/custom/results/base/constants.rb
|
660
666
|
- lib/convenient_service/rspec/matchers/custom/results/base/errors.rb
|
661
667
|
- lib/convenient_service/rspec/matchers/custom/results/be_error.rb
|
662
668
|
- lib/convenient_service/rspec/matchers/custom/results/be_failure.rb
|
@@ -666,6 +672,7 @@ files:
|
|
666
672
|
- lib/convenient_service/rspec/matchers/custom/results/be_success.rb
|
667
673
|
- lib/convenient_service/rspec/matchers/custom/singleton_prepend_module.rb
|
668
674
|
- lib/convenient_service/rspec/matchers/delegate_to.rb
|
675
|
+
- lib/convenient_service/rspec/matchers/export.rb
|
669
676
|
- lib/convenient_service/rspec/matchers/extend_module.rb
|
670
677
|
- lib/convenient_service/rspec/matchers/have_abstract_method.rb
|
671
678
|
- lib/convenient_service/rspec/matchers/have_alias_method.rb
|
@@ -697,10 +704,8 @@ files:
|
|
697
704
|
- lib/convenient_service/service/plugins/can_have_steps/entities/method.rb
|
698
705
|
- lib/convenient_service/service/plugins/can_have_steps/entities/method/commands.rb
|
699
706
|
- lib/convenient_service/service/plugins/can_have_steps/entities/method/commands/cast_method.rb
|
700
|
-
- lib/convenient_service/service/plugins/can_have_steps/entities/method/commands/cast_method_caller.rb
|
701
707
|
- lib/convenient_service/service/plugins/can_have_steps/entities/method/commands/cast_method_direction.rb
|
702
|
-
- lib/convenient_service/service/plugins/can_have_steps/entities/method/commands/
|
703
|
-
- lib/convenient_service/service/plugins/can_have_steps/entities/method/commands/cast_method_name.rb
|
708
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/commands/cast_method_factory.rb
|
704
709
|
- lib/convenient_service/service/plugins/can_have_steps/entities/method/commands/define_method_in_container.rb
|
705
710
|
- lib/convenient_service/service/plugins/can_have_steps/entities/method/concern.rb
|
706
711
|
- lib/convenient_service/service/plugins/can_have_steps/entities/method/concern/class_methods.rb
|
@@ -719,6 +724,19 @@ files:
|
|
719
724
|
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/directions/base.rb
|
720
725
|
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/directions/input.rb
|
721
726
|
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/directions/output.rb
|
727
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories.rb
|
728
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/base.rb
|
729
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash.rb
|
730
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash/base.rb
|
731
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash/proc_value.rb
|
732
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash/raw_value.rb
|
733
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash/reassignment_value.rb
|
734
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash/string_value.rb
|
735
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/hash/symbol_value.rb
|
736
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/method.rb
|
737
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/reassignment.rb
|
738
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/string.rb
|
739
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/factories/symbol.rb
|
722
740
|
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/key.rb
|
723
741
|
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/name.rb
|
724
742
|
- lib/convenient_service/service/plugins/can_have_steps/entities/method/entities/values.rb
|
@@ -734,6 +752,7 @@ files:
|
|
734
752
|
- lib/convenient_service/service/plugins/can_have_steps/entities/step/concern/instance_methods.rb
|
735
753
|
- lib/convenient_service/service/plugins/can_have_steps/entities/step/errors.rb
|
736
754
|
- lib/convenient_service/service/plugins/can_have_steps/entities/step/plugins.rb
|
755
|
+
- lib/convenient_service/service/plugins/can_have_steps/entities/step/plugins/aliases.rb
|
737
756
|
- lib/convenient_service/service/plugins/can_have_steps/entities/step/plugins/can_have_parent_result.rb
|
738
757
|
- lib/convenient_service/service/plugins/can_have_steps/entities/step/plugins/can_have_parent_result/middleware.rb
|
739
758
|
- lib/convenient_service/service/plugins/can_have_steps/entities/step/plugins/has_inspect.rb
|
@@ -760,8 +779,10 @@ files:
|
|
760
779
|
- lib/convenient_service/service/plugins/has_result/entities/result.rb
|
761
780
|
- lib/convenient_service/service/plugins/has_result/entities/result/concern.rb
|
762
781
|
- lib/convenient_service/service/plugins/has_result/entities/result/plugins.rb
|
782
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/aliases.rb
|
763
783
|
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/can_have_parent_result.rb
|
764
784
|
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/can_have_parent_result/concern.rb
|
785
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/can_have_parent_result/constants.rb
|
765
786
|
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/can_have_parent_result/initialize.rb
|
766
787
|
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/can_have_parent_result/initialize/middleware.rb
|
767
788
|
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/can_have_parent_result/to_kwargs.rb
|
@@ -770,27 +791,37 @@ files:
|
|
770
791
|
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/can_recalculate_result/concern.rb
|
771
792
|
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_inspect.rb
|
772
793
|
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_inspect/concern.rb
|
773
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
774
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
775
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
776
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
777
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
778
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
779
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
780
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
781
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
782
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
783
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
784
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
785
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
786
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
787
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
788
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
789
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
790
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
791
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
792
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
793
|
-
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/
|
794
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes.rb
|
795
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/commands.rb
|
796
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/commands/cast_j_send_attributes.rb
|
797
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/commands/create_code_class.rb
|
798
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/commands/create_data_class.rb
|
799
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/commands/create_message_class.rb
|
800
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/commands/create_status_class.rb
|
801
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/concern.rb
|
802
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/concern/class_methods.rb
|
803
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/concern/instance_methods.rb
|
804
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities.rb
|
805
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/code.rb
|
806
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/code/concern.rb
|
807
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/code/concern/class_methods.rb
|
808
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/code/concern/instance_methods.rb
|
809
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/data.rb
|
810
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/data/concern.rb
|
811
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/data/concern/class_methods.rb
|
812
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/data/concern/instance_methods.rb
|
813
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/message.rb
|
814
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/message/concern.rb
|
815
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/message/concern/class_methods.rb
|
816
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/message/concern/instance_methods.rb
|
817
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/status.rb
|
818
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/status/concern.rb
|
819
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/status/concern/class_methods.rb
|
820
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/entities/status/concern/instance_methods.rb
|
821
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/errors.rb
|
822
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/middleware.rb
|
823
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/structs.rb
|
824
|
+
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_j_send_status_and_attributes/structs/j_send_attributes.rb
|
794
825
|
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_result_short_syntax.rb
|
795
826
|
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_result_short_syntax/concern.rb
|
796
827
|
- lib/convenient_service/service/plugins/has_result/entities/result/plugins/has_step.rb
|
@@ -863,18 +894,24 @@ files:
|
|
863
894
|
- lib/convenient_service/support/command.rb
|
864
895
|
- lib/convenient_service/support/concern.rb
|
865
896
|
- lib/convenient_service/support/copyable.rb
|
897
|
+
- lib/convenient_service/support/counter.rb
|
866
898
|
- lib/convenient_service/support/delegate.rb
|
867
899
|
- lib/convenient_service/support/dependency_container.rb
|
868
900
|
- lib/convenient_service/support/dependency_container/commands.rb
|
901
|
+
- lib/convenient_service/support/dependency_container/commands/assert_valid_container.rb
|
902
|
+
- lib/convenient_service/support/dependency_container/commands/assert_valid_method.rb
|
869
903
|
- lib/convenient_service/support/dependency_container/commands/assert_valid_scope.rb
|
870
904
|
- lib/convenient_service/support/dependency_container/commands/create_methods_module.rb
|
905
|
+
- lib/convenient_service/support/dependency_container/commands/define_entry.rb
|
871
906
|
- lib/convenient_service/support/dependency_container/commands/import_method.rb
|
872
907
|
- lib/convenient_service/support/dependency_container/constants.rb
|
908
|
+
- lib/convenient_service/support/dependency_container/container.rb
|
873
909
|
- lib/convenient_service/support/dependency_container/entities.rb
|
874
910
|
- lib/convenient_service/support/dependency_container/entities/method.rb
|
875
911
|
- lib/convenient_service/support/dependency_container/entities/method_collection.rb
|
876
912
|
- lib/convenient_service/support/dependency_container/entities/namespace.rb
|
877
913
|
- lib/convenient_service/support/dependency_container/entities/namespace_collection.rb
|
914
|
+
- lib/convenient_service/support/dependency_container/entry.rb
|
878
915
|
- lib/convenient_service/support/dependency_container/errors.rb
|
879
916
|
- lib/convenient_service/support/dependency_container/export.rb
|
880
917
|
- lib/convenient_service/support/dependency_container/import.rb
|
@@ -887,7 +924,10 @@ files:
|
|
887
924
|
- lib/convenient_service/support/not_passed.rb
|
888
925
|
- lib/convenient_service/support/raw_value.rb
|
889
926
|
- lib/convenient_service/support/ruby.rb
|
927
|
+
- lib/convenient_service/support/safe_method.rb
|
928
|
+
- lib/convenient_service/support/thread_safe_counter.rb
|
890
929
|
- lib/convenient_service/support/undefined.rb
|
930
|
+
- lib/convenient_service/support/unique_value.rb
|
891
931
|
- lib/convenient_service/support/version.rb
|
892
932
|
- lib/convenient_service/support/version/null_version.rb
|
893
933
|
- lib/convenient_service/utils.rb
|
@@ -919,6 +959,7 @@ files:
|
|
919
959
|
- lib/convenient_service/utils/object/instance_variable_delete.rb
|
920
960
|
- lib/convenient_service/utils/object/instance_variable_fetch.rb
|
921
961
|
- lib/convenient_service/utils/object/memoize_including_falsy_values.rb
|
962
|
+
- lib/convenient_service/utils/object/resolve_class.rb
|
922
963
|
- lib/convenient_service/utils/object/resolve_type.rb
|
923
964
|
- lib/convenient_service/utils/proc.rb
|
924
965
|
- lib/convenient_service/utils/proc/conjunct.rb
|
@@ -1,43 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
##
|
4
|
-
# WIP: Factory API is NOT well-thought yet. It will be revisited and completely refactored at any time.
|
5
|
-
#
|
6
|
-
module ConvenientService
|
7
|
-
module Factories
|
8
|
-
module Arguments
|
9
|
-
##
|
10
|
-
# @return [Array]
|
11
|
-
#
|
12
|
-
# @example Default.
|
13
|
-
#
|
14
|
-
# hello(*args)
|
15
|
-
#
|
16
|
-
def create_args
|
17
|
-
[:foo, :bar]
|
18
|
-
end
|
19
|
-
|
20
|
-
##
|
21
|
-
# @return [Hash]
|
22
|
-
#
|
23
|
-
# @example Default.
|
24
|
-
#
|
25
|
-
# hello(**kwargs)
|
26
|
-
#
|
27
|
-
def create_kwargs
|
28
|
-
{foo: :bar, baz: :qux}
|
29
|
-
end
|
30
|
-
|
31
|
-
##
|
32
|
-
# @return [Hash]
|
33
|
-
#
|
34
|
-
# @example Default.
|
35
|
-
#
|
36
|
-
# hello(&block)
|
37
|
-
#
|
38
|
-
def create_block
|
39
|
-
proc { :foo }
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
@@ -1,214 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
##
|
4
|
-
# WIP: Factory API is NOT well-thought yet. It will be revisited and completely refactored at any time.
|
5
|
-
#
|
6
|
-
module ConvenientService
|
7
|
-
module Factories
|
8
|
-
module Results
|
9
|
-
##
|
10
|
-
# @return [ConvenientService::Service::Plugins::HasResult::Entities::Result]
|
11
|
-
#
|
12
|
-
# @example Default.
|
13
|
-
#
|
14
|
-
# class Service
|
15
|
-
# include ConvenientService::Standard::Config
|
16
|
-
#
|
17
|
-
# def result
|
18
|
-
# success # `result` is return value
|
19
|
-
# end
|
20
|
-
# end
|
21
|
-
#
|
22
|
-
def create_result
|
23
|
-
service_class = create_service_class
|
24
|
-
|
25
|
-
service_class.result
|
26
|
-
end
|
27
|
-
|
28
|
-
##
|
29
|
-
# @return [ConvenientService::Service::Plugins::HasResult::Entities::Result]
|
30
|
-
#
|
31
|
-
# @example Default.
|
32
|
-
#
|
33
|
-
# class Service
|
34
|
-
# include ConvenientService::Standard::Config
|
35
|
-
#
|
36
|
-
# def result
|
37
|
-
# success # `result` is return value
|
38
|
-
# end
|
39
|
-
# end
|
40
|
-
#
|
41
|
-
def create_result_without_step
|
42
|
-
service_class = create_service_class
|
43
|
-
|
44
|
-
service_class.result
|
45
|
-
end
|
46
|
-
|
47
|
-
##
|
48
|
-
# @return [ConvenientService::Service::Plugins::HasResult::Entities::Result]
|
49
|
-
#
|
50
|
-
# @example Default.
|
51
|
-
#
|
52
|
-
# class Service
|
53
|
-
# include ConvenientService::Standard::Config
|
54
|
-
#
|
55
|
-
# step Step # `result` is return value
|
56
|
-
# end
|
57
|
-
#
|
58
|
-
def create_result_with_step(...)
|
59
|
-
create_result_with_service_step(...)
|
60
|
-
end
|
61
|
-
|
62
|
-
##
|
63
|
-
# @param service_step [Class]
|
64
|
-
# @return [ConvenientService::Service::Plugins::HasResult::Entities::Result]
|
65
|
-
#
|
66
|
-
# @example Default.
|
67
|
-
#
|
68
|
-
# class Service
|
69
|
-
# include ConvenientService::Standard::Config
|
70
|
-
#
|
71
|
-
# step Step # `result` is return value
|
72
|
-
# end
|
73
|
-
#
|
74
|
-
# @example When `service_step` is passed.
|
75
|
-
#
|
76
|
-
# class Service
|
77
|
-
# include ConvenientService::Standard::Config
|
78
|
-
#
|
79
|
-
# step service_step # `result` is return value
|
80
|
-
# end
|
81
|
-
#
|
82
|
-
def create_result_with_service_step(service_step: Support::NOT_PASSED)
|
83
|
-
service_step_class = (service_step == Support::NOT_PASSED) ? create_service_step_class : service_step
|
84
|
-
|
85
|
-
service_class = create_service_class(steps: [service_step_class])
|
86
|
-
|
87
|
-
service_class.result
|
88
|
-
end
|
89
|
-
|
90
|
-
##
|
91
|
-
# @param method_step [Symbol]
|
92
|
-
# @return [ConvenientService::Service::Plugins::HasResult::Entities::Result]
|
93
|
-
#
|
94
|
-
# @example Default.
|
95
|
-
#
|
96
|
-
# class Service
|
97
|
-
# include ConvenientService::Standard::Config
|
98
|
-
#
|
99
|
-
# step :validate # `result` is return value
|
100
|
-
# end
|
101
|
-
#
|
102
|
-
# @example When `method_step` is passed.
|
103
|
-
#
|
104
|
-
# class Service
|
105
|
-
# include ConvenientService::Standard::Config
|
106
|
-
#
|
107
|
-
# step method_step # `result` is return value
|
108
|
-
# end
|
109
|
-
#
|
110
|
-
def create_result_with_method_step(method_step: Support::NOT_PASSED)
|
111
|
-
method_step = (method_step == Support::NOT_PASSED) ? create_method_step : method_step
|
112
|
-
|
113
|
-
service_class = create_service_class(steps: [method_step])
|
114
|
-
|
115
|
-
service_class.result
|
116
|
-
end
|
117
|
-
|
118
|
-
##
|
119
|
-
# @return [ConvenientService::Service::Plugins::HasResult::Entities::Result]
|
120
|
-
#
|
121
|
-
# @example Default.
|
122
|
-
#
|
123
|
-
# class Service
|
124
|
-
# include ConvenientService::Standard::Config
|
125
|
-
#
|
126
|
-
# step :result # `result` is return value
|
127
|
-
# end
|
128
|
-
#
|
129
|
-
def create_result_with_result_method_step
|
130
|
-
service_class = create_service_class(steps: [:result])
|
131
|
-
|
132
|
-
service_class.result
|
133
|
-
end
|
134
|
-
|
135
|
-
##
|
136
|
-
# @return [Hash]
|
137
|
-
#
|
138
|
-
# @example Default.
|
139
|
-
#
|
140
|
-
# {
|
141
|
-
# service: result.service,
|
142
|
-
# status: :success,
|
143
|
-
# data: {foo: :bar},
|
144
|
-
# message: "",
|
145
|
-
# code: :default_success
|
146
|
-
# }
|
147
|
-
#
|
148
|
-
def create_result_attributes
|
149
|
-
create_result.jsend_attributes.to_h
|
150
|
-
end
|
151
|
-
|
152
|
-
##
|
153
|
-
# @return [Hash]
|
154
|
-
#
|
155
|
-
# @example Default.
|
156
|
-
#
|
157
|
-
# {
|
158
|
-
# service: result.service,
|
159
|
-
# status: :success,
|
160
|
-
# data: {foo: :bar},
|
161
|
-
# message: "",
|
162
|
-
# code: :default_success,
|
163
|
-
# parent: result.parent
|
164
|
-
# }
|
165
|
-
#
|
166
|
-
def create_result_attributes_with_parent(parent: Support::NOT_PASSED)
|
167
|
-
parent = (parent == Support::NOT_PASSED) ? create_result_parent : parent
|
168
|
-
|
169
|
-
result_attributes = create_result_attributes
|
170
|
-
|
171
|
-
result_attributes.merge(parent: parent)
|
172
|
-
end
|
173
|
-
|
174
|
-
##
|
175
|
-
# @return [Hash]
|
176
|
-
#
|
177
|
-
# @example Default.
|
178
|
-
#
|
179
|
-
# {
|
180
|
-
# service: result.service,
|
181
|
-
# status: :success,
|
182
|
-
# data: {foo: :bar},
|
183
|
-
# message: "",
|
184
|
-
# code: :default_success,
|
185
|
-
# step: result.step
|
186
|
-
# }
|
187
|
-
#
|
188
|
-
def create_result_attributes_with_step(step: Support::NOT_PASSED)
|
189
|
-
step = (step == Support::NOT_PASSED) ? create_result_step : step
|
190
|
-
|
191
|
-
result_attributes = create_result_attributes
|
192
|
-
|
193
|
-
result_attributes.merge(step: step)
|
194
|
-
end
|
195
|
-
|
196
|
-
##
|
197
|
-
# @return [ConvenientService::Service::Plugins::HasResult::Entities::Result]
|
198
|
-
#
|
199
|
-
# @example Default.
|
200
|
-
#
|
201
|
-
# class Service
|
202
|
-
# include ConvenientService::Standard::Config
|
203
|
-
#
|
204
|
-
# def result
|
205
|
-
# success # `result_parent` is return value
|
206
|
-
# end
|
207
|
-
# end
|
208
|
-
#
|
209
|
-
def create_result_parent
|
210
|
-
create_result
|
211
|
-
end
|
212
|
-
end
|
213
|
-
end
|
214
|
-
end
|