The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Pangloss::Search::Filter - abstract search filter

SYNOPSIS

  # abstract - must be sub-classed for use
  use Pangloss::Search::Filter::Foo;

  my $filter = $Pangloss::Search::Filter::Foo->new;

  do { ... } if $filter->parent( $self )->applies_to( $term );

DESCRIPTION

An abstract search filter object.

METHODS

$bool = $obj->applies_to( $term )

abstract. test to see if this filter applies to the Pangloss::Term given. a return value of true indicates that the $term should be added to the result set.

$obj->parent

get/set this filter's parent Pangloss::Search.

SUB-CLASSING

At the very least, you must do the following:

  package Foo;
  use base qw( Pangloss::Search::Filter );

  sub applies_to {
      my $self = shift;
      my $term = shift;

      # use $term and the collections available
      # via $self->parent to do your test

      return 0 || 1;
  }

Pangloss::Search will set $self->parent() before it calls applies_to().

AUTHOR

Steve Purkis <spurkis@quiup.com>

SEE ALSO

Pangloss::Search, Pangloss::Search::Request, OpenFrame::WebApp::Error::Abstract

Known Sub-Classes

Pangloss::Search::Filter::Base, Pangloss::Search::Filter::Keywords