Class: SubshellCommand::CommandExecutor

Inherits:
Object
  • Object
show all
Defined in:
lib/subshell_command.rb

Constant Summary collapse

EXECUTORS =
{
  true => CombinedOutputStreamsExecutor,
  false => StandardOutputStreamsExecutor,
}

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(command_object) ⇒ CommandExecutor

Returns a new instance of CommandExecutor.



112
113
114
# File 'lib/subshell_command.rb', line 112

def initialize(command_object)
  @command_object = command_object
end

Instance Attribute Details

#command_objectObject (readonly)

Returns the value of attribute command_object.



105
106
107
# File 'lib/subshell_command.rb', line 105

def command_object
  @command_object
end

Instance Method Details

#executeObject



116
117
118
119
120
121
# 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