#!/usr/bin/perl
#use Mooix::Thing;
#use Mooix::Verb;
run sub {
	my $this=shift;
	%_=@_;

	# Only allow use by builders.
	unless ($_{avatar}->isa($Mooix::Root->abstract->builder)) {
		fail "You can't do that.";
	}

	my $mf = $_{direct_object}->messagefilters;
	unless (ref $mf && grep $this, $mf->list) {
		fail "Filter is not in place.";
	}

	if (! $mf->remove(object => $this)) {
		fail "Removal failed.";
	}
	else {
		# In case the filter was multiply applied.
		1 while $mf->remove(object => $this);
	}

	$_{session}->write("Filter removed.");
}
