Exception: ConvenientService::Service::Plugins::ForbidsConvenientServiceEntitiesAsConstructorArguments::Exceptions::EntityPassedAsConstructorArgument Private

Inherits:
Exception
  • Object
show all
Defined in:
lib/convenient_service/service/plugins/forbids_convenient_service_entities_as_constructor_arguments/exceptions.rb

Overview

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Since:

  • 1.0.0

Instance Method Summary collapse

Methods inherited from Exception

new

Instance Method Details

#initialize_with_kwargs(selector:, service:, entity:) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Since:

  • 1.0.0



112
113
114
115
116
117
118
119
120
121
122
# File 'lib/convenient_service/service/plugins/forbids_convenient_service_entities_as_constructor_arguments/exceptions.rb', line 112

def initialize_with_kwargs(selector:, service:, entity:)
  message = <<~TEXT
    Convenient Service entity `#{Utils::Class.display_name(entity.class)}` is passed as constructor argument `#{selector}` to `#{Utils::Class.display_name(service.class)}`.

    It is an antipattern. It neglects the idea of steps.

    Please, try to reorganize `#{Utils::Class.display_name(service.class)}` service.
  TEXT

  initialize(message)
end