class SubshellCommand::CommandExecutor

Constants

EXECUTORS

Attributes

command_object[R]

Public Class Methods

new(command_object) click to toggle source
# File lib/subshell_command.rb, line 112
def initialize(command_object)
  @command_object = command_object
end

Public Instance Methods

execute() click to toggle source
# File lib/subshell_command.rb, line 116
def execute
  result = Result.new
  EXECUTORS[command_object.redirect_stderr_to_stdout].new(command_object, result).execute
  execute_callbacks(result)
  result
end

Private Instance Methods

execute_callbacks(result) click to toggle source
# File lib/subshell_command.rb, line 125
def execute_callbacks(result)
  if result.success?
    command_object.success_callback.call(result)
  else
    command_object.failure_callback.call(result)
  end
end