org.apache.maven.index
Class AbstractMultiArtifactInfoFilter

java.lang.Object
  extended by org.apache.maven.index.AbstractMultiArtifactInfoFilter
All Implemented Interfaces:
ArtifactInfoFilter
Direct Known Subclasses:
AndMultiArtifactInfoFilter

public abstract class AbstractMultiArtifactInfoFilter
extends Object
implements ArtifactInfoFilter

An abstract helper class for implementing ArtifactInfoFilter that actually aggregates multiple filters into one. It is up to developer to implement how will be they behave ("fail-fast", or "one-vote-enough for passing", etc).

Author:
cstamas

Constructor Summary
AbstractMultiArtifactInfoFilter(List<ArtifactInfoFilter> filters)
           
 
Method Summary
 boolean accepts(IndexingContext ctx, ArtifactInfo ai)
          The filter's implementation is: if list of filters is empty, the just accept it, otherwise consult the list of filters.
protected abstract  boolean accepts(List<ArtifactInfoFilter> filters, IndexingContext ctx, ArtifactInfo ai)
          It is left to final implementor to implement how we want to decide using filters.
 List<ArtifactInfoFilter> getFilters()
          Returns an unmodifiable list of filters.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractMultiArtifactInfoFilter

public AbstractMultiArtifactInfoFilter(List<ArtifactInfoFilter> filters)
Method Detail

getFilters

public List<ArtifactInfoFilter> getFilters()
Returns an unmodifiable list of filters.

Returns:

accepts

public boolean accepts(IndexingContext ctx,
                       ArtifactInfo ai)
The filter's implementation is: if list of filters is empty, the just accept it, otherwise consult the list of filters.

Specified by:
accepts in interface ArtifactInfoFilter

accepts

protected abstract boolean accepts(List<ArtifactInfoFilter> filters,
                                   IndexingContext ctx,
                                   ArtifactInfo ai)
It is left to final implementor to implement how we want to decide using filters. This method is called only if we _have_ filters set!

Parameters:
filters -
ctx -
ai -
Returns:


Copyright © 2002-2012 The Apache Software Foundation. All Rights Reserved.