Package org.apache.maven.shared.artifact.filter.resolve

## Interface FilterTransformer<T>

Type Parameters:
  `T` - the tool specific filter

All Known Implementing Classes:
  `ArtifactIncludeFilterTransformer`, `EclipseAetherFilterTransformer`, `SonatypeAetherFilterTransformer`

    public interface FilterTransformer<T>

Provide a mechanism to transform a Filter to a tool specific equivalent using the visitor pattern. For example: Aether has its own set of filters.

Since:
  3.0
Author:
  Robert Scholte

### Method Summary

All Methods Instance Methods Abstract Methods
`T` `transform​(AbstractFilter abstractFilter)` Transform a custom filter to T specific implementation
`T` `transform​(AndFilter andFilter)` Transform the andFilter to T specific implementation
`T` `transform​(ExclusionsFilter exclusionsFilter)` Transform the exclusionsFilter to T specific implementation
`T` `transform​(OrFilter orFilter)` Transform the orFilter to T specific implementation
`T` `transform​(PatternExclusionsFilter patternExclusionsFilter)` Transform the patternExclusionsFilter to T specific implementation
`T` `transform​(PatternInclusionsFilter patternInclusionsFilter)` Transform the paternInclusionsFilter to T specific implementation
`T` `transform​(ScopeFilter scopeFilter)` Transform the scopeFilter to T specific implementation

### Method Detail

#### transform

    T transform​(ScopeFilter scopeFilter)

Transform the scopeFilter to T specific implementation

Parameters:
  `scopeFilter` - the filter
Returns:
  the transformed filter, never `null`

#### transform

    T transform​(AndFilter andFilter)

Transform the andFilter to T specific implementation

Parameters:
  `andFilter` - the filter
Returns:
  the transformed filter, never `null`

#### transform

    T transform​(ExclusionsFilter exclusionsFilter)

Transform the exclusionsFilter to T specific implementation

Parameters:
  `exclusionsFilter` - the filter
Returns:
  the transformed filter, never `null`

#### transform

    T transform​(OrFilter orFilter)

Transform the orFilter to T specific implementation

Parameters:
  `orFilter` - the filter
Returns:
  the transformed filter, never `null`

#### transform

    T transform​(PatternExclusionsFilter patternExclusionsFilter)

Transform the patternExclusionsFilter to T specific implementation

Parameters:
  `patternExclusionsFilter` - the filter
Returns:
  the transformed filter, never `null`

#### transform

    T transform​(PatternInclusionsFilter patternInclusionsFilter)

Transform the paternInclusionsFilter to T specific implementation

Parameters:
  `patternInclusionsFilter` - the filter
Returns:
  the transformed filter, never `null`

#### transform

    T transform​(AbstractFilter abstractFilter)

Transform a custom filter to T specific implementation

Parameters:
  `abstractFilter` - the filter
Returns:
  the transformed filter, never `null`