org.apache.ivy.core.module.descriptor

## Class AbstractIncludeExcludeRule

- java.lang.Object
- - org.apache.ivy.util.extendable.UnmodifiableExtendableItem
  - - org.apache.ivy.core.module.descriptor.AbstractIncludeExcludeRule

- All Implemented Interfaces:
    ConfigurationAware, ExtendableItem
  Direct Known Subclasses:
    DefaultExcludeRule, DefaultIncludeRule

      public abstract class AbstractIncludeExcludeRule
      extends UnmodifiableExtendableItem
      implements ConfigurationAware

  Abstract class used as implementation for both `IncludeRule` and `ExcludeRule`, since their contract is almost identical

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractIncludeExcludeRule(ArtifactId aid, PatternMatcher matcher, java.util.Map extraAttributes)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addConfiguration(java.lang.String conf)` Add a configuration for this rule
    `boolean` | `equals(java.lang.Object obj)`
    `java.lang.String[]` | `getConfigurations()` Returns the configurations of the module to which the object is attached
    `ArtifactId` | `getId()`
    `PatternMatcher` | `getMatcher()`
    `int` | `hashCode()`
    `java.lang.String` | `toString()`

    - ### Methods inherited from class org.apache.ivy.util.extendable.UnmodifiableExtendableItem

      `getAttribute, getAttributes, getExtraAttribute, getExtraAttributes, getQualifiedExtraAttributes, setExtraAttribute, setStandardAttribute`

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

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

- - ### Constructor Detail

    - #### AbstractIncludeExcludeRule

          public AbstractIncludeExcludeRule(ArtifactId aid,
                                    PatternMatcher matcher,
                                    java.util.Map extraAttributes)

  - ### Method Detail

    - #### equals

          public boolean equals(java.lang.Object obj)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

    - #### addConfiguration

          public void addConfiguration(java.lang.String conf)

      Add a configuration for this rule
      Specified by:
        `addConfiguration` in interface `ConfigurationAware`
      Parameters:
        `conf` -

    - #### getId

          public ArtifactId getId()

    - #### getConfigurations

          public java.lang.String[] getConfigurations()

      Description copied from interface: `ConfigurationAware`
      Returns the configurations of the module to which the object is attached
      Specified by:
        `getConfigurations` in interface `ConfigurationAware`
      Returns:
        an array of configuration names to which the object is attached

    - #### getMatcher

          public PatternMatcher getMatcher()

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`