@Override
    public void run(CommandInvocation invocation) throws FilterException
    {
        boolean restrict = true;
        for (Class<?> clazz : this.sources)
        {
            if (clazz.isAssignableFrom(invocation.getCommandSource().getClass()))
            {
                restrict = false;
            }
        }
        if (restrict)
        {
            throw new RestrictedSourceException(this.msg, this.sources);
        }
    }