Method: Command::Command#initialize

Defined in:
lib/command-set/command.rb

#initialize(execution_context, resume = nil) ⇒ Command

Returns a new instance of Command.

Raises:



256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
# File 'lib/command-set/command.rb', line 256

def initialize(execution_context, resume=nil)
  raise CommandException, "#{@name}: unrecognized command" unless self.class.defined?
  @path = execution_context.command_path
  @nesting = execution_context.set_nesting

  @argument_list = self.class.argument_list.dup
  @subject_requirements = self.class.subject_requirements.dup
  resolve_parent_arguments

  subject = execution_context.subject
  context = execution_context.subject_context
  @subject_image = subject.get_image(subject_requirements || [], context)

  @arg_hash = {}
  @should_undo = true
  @validation_problem = CommandException.new("No arguments provided!")
  @last_completed_task = DontResume
  @resume_from = resume
  @main_collector = nil
end