Module: ControllerCommands::Command::ClassMethods

Defined in:
lib/controller_commands/command.rb

Instance Method Summary collapse

Instance Method Details

#get_success_messageObject



21
22
23
# File 'lib/controller_commands/command.rb', line 21

def get_success_message
  @success_message_block&.call
end

#handle_command(&block) ⇒ Object



25
26
27
# File 'lib/controller_commands/command.rb', line 25

def handle_command(&block)
  @perform_block = block
end

#perform(context, validated_params) ⇒ Object



29
30
31
# File 'lib/controller_commands/command.rb', line 29

def perform(context, validated_params)
  @perform_block.call(context, validated_params)
end

#success_message(&block) ⇒ Object



17
18
19
# File 'lib/controller_commands/command.rb', line 17

def success_message(&block)
  @success_message_block = block
end

#validate(context, incoming_params) ⇒ Object



9
10
11
12
13
14
15
# File 'lib/controller_commands/command.rb', line 9

def validate(context, incoming_params)
  validation_schema =
    @validation_schema_provider ?
      @validation_schema_provider.call(context) :
      Dry::Validation.Schema # provide a default, empty validation schema if none was defined for the command
  validation_schema.call(incoming_params)
end

#validation_schema(&block) ⇒ Object



5
6
7
# File 'lib/controller_commands/command.rb', line 5

def validation_schema(&block)
  @validation_schema_provider = block
end