org.eclipse.aether.util.filter

## Class AndDependencyFilter

- java.lang.Object
- - org.eclipse.aether.util.filter.AndDependencyFilter

- All Implemented Interfaces:
    DependencyFilter

      public final class AndDependencyFilter
      extends Object
      implements DependencyFilter

  A dependency filter that combines zero or more other filters using a logical `AND`. The resulting filter accepts a given dependency node if and only if all constituent filters accept it.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `AndDependencyFilter(Collection<DependencyFilter> filters)` Creates a new filter from the specified filters.
    `AndDependencyFilter(DependencyFilter... filters)` Creates a new filter from the specified filters.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `accept(DependencyNode node, List<DependencyNode> parents)` Indicates whether the specified dependency node shall be included or excluded.
    `boolean` | `equals(Object obj)`
    `int` | `hashCode()`
    `static DependencyFilter` | `newInstance(DependencyFilter filter1, DependencyFilter filter2)` Creates a new filter from the specified filters.

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### AndDependencyFilter

          public AndDependencyFilter(DependencyFilter... filters)

      Creates a new filter from the specified filters. Prefer `newInstance(DependencyFilter, DependencyFilter)` if any of the input filters might be `null`.
      Parameters:
        `filters` - The filters to combine, may be `null` but must not contain `null` elements.

    - #### AndDependencyFilter

          public AndDependencyFilter(Collection<DependencyFilter> filters)

      Creates a new filter from the specified filters.
      Parameters:
        `filters` - The filters to combine, may be `null` but must not contain `null` elements.

  - ### Method Detail

    - #### newInstance

          public static DependencyFilter newInstance(DependencyFilter filter1,
                                     DependencyFilter filter2)

      Creates a new filter from the specified filters.
      Parameters:
        `filter1` - The first filter to combine, may be `null`.
        `filter2` - The second filter to combine, may be `null`.
      Returns:
        The combined filter or `null` if both filter were `null`.

    - #### accept

          public boolean accept(DependencyNode node,
                       List<DependencyNode> parents)

      Description copied from interface: `DependencyFilter`
      Indicates whether the specified dependency node shall be included or excluded.
      Specified by:
        `accept` in interface `DependencyFilter`
      Parameters:
        `node` - The dependency node to filter, must not be `null`.
        `parents` - The (read-only) chain of parent nodes that leads to the node to be filtered, must not be `null`. Iterating this (possibly empty) list walks up the dependency graph towards the root node, i.e. the immediate parent node (if any) is the first node in the list. The size of the list also denotes the zero-based depth of the filtered node.
      Returns:
        `true` to include the dependency node, `false` to exclude it.

    - #### equals

          public boolean equals(Object obj)

      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

Copyright © 2010-2014 The Eclipse Foundation. All Rights Reserved.