#!/usr/bin/perl
#use Mooix::Thing;
use POSIX;
run sub {
	my $this=shift;
	%_=@_;
	
	# Don't let a builder spoof a programmer that they own to call this
	# method.
        if ($_{avatar} != $this) {
		fail "No!"; 
	}

	my $obj = $_{direct_object};
	my $session = $_{session};
	my $signal = POSIX::SIGTERM;
	$signal = $_{number} if exists $_{number};

	# This verb is overridden to let programmers use whatever signals
	# they like.
	
	my @args;
	if (exists $_{quote}) {
		push @args, method => $_{quote};
	}
	
	if ($obj->signal(with => $signal, @args)) {
		$session->write("Signal sent.");
	}
	else {
		fail "Failed to send signal.";
	}
}
