Package org.apache.tools.ant.types.resources.selectors

## Class ResourceSelectorContainer

- java.lang.Object
- - org.apache.tools.ant.ProjectComponent
  - - org.apache.tools.ant.types.DataType
    - - org.apache.tools.ant.types.resources.selectors.ResourceSelectorContainer

- All Implemented Interfaces:
    `java.lang.Cloneable`
  Direct Known Subclasses:
    `And`, `Majority`, `None`, `Or`, `Restrict`

      public class ResourceSelectorContainer
      extends DataType

  ResourceSelector container.
  Since:
    Ant 1.7

- - ### Field Summary

    - ### Fields inherited from class org.apache.tools.ant.types.DataType

      `checked, ref`

    - ### Fields inherited from class org.apache.tools.ant.ProjectComponent

      `description, location, project`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ResourceSelectorContainer()` | Default constructor.
    `ResourceSelectorContainer​(ResourceSelector... resourceSelectors)` | Construct a new ResourceSelectorContainer with the specified array of selectors.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `add​(ResourceSelector s)` | Add a ResourceSelector to the container.
    `protected void` | `dieOnCircularReference​(java.util.Stack<java.lang.Object> stk, Project p)` | Overrides the version from DataType to recurse on nested ResourceSelectors.
    `java.util.List<ResourceSelector>` | `getResourceSelectors()` | Get the configured `ResourceSelector`s as a `List`.
    `java.util.Iterator<ResourceSelector>` | `getSelectors()` | Return an Iterator over the nested selectors.
    `boolean` | `hasSelectors()` | Learn whether this ResourceSelectorContainer has selectors.
    `int` | `selectorCount()` | Get the count of nested selectors.

    - ### Methods inherited from class org.apache.tools.ant.types.DataType

      `checkAttributesAllowed, checkChildrenAllowed, circularReference, clone, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, setRefid, tooManyAttributes, toString`

    - ### Methods inherited from class org.apache.tools.ant.ProjectComponent

      `getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProject`

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

      `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### ResourceSelectorContainer

          public ResourceSelectorContainer()

      Default constructor.

    - #### ResourceSelectorContainer

          public ResourceSelectorContainer​(ResourceSelector... resourceSelectors)

      Construct a new ResourceSelectorContainer with the specified array of selectors.
      Parameters:
        `resourceSelectors` - the ResourceSelector[] to add.

  - ### Method Detail

    - #### add

          public void add​(ResourceSelector s)

      Add a ResourceSelector to the container.
      Parameters:
        `s` - the ResourceSelector to add.

    - #### hasSelectors

          public boolean hasSelectors()

      Learn whether this ResourceSelectorContainer has selectors.
      Returns:
        boolean indicating whether selectors have been added to the container.

    - #### selectorCount

          public int selectorCount()

      Get the count of nested selectors.
      Returns:
        the selector count as int.

    - #### getSelectors

          public java.util.Iterator<ResourceSelector> getSelectors()

      Return an Iterator over the nested selectors.
      Returns:
        Iterator of ResourceSelectors.

    - #### getResourceSelectors

          public java.util.List<ResourceSelector> getResourceSelectors()

      Get the configured `ResourceSelector`s as a `List`.
      Returns:
        `List` of `ResourceSelector`

    - #### dieOnCircularReference

          protected void dieOnCircularReference​(java.util.Stack<java.lang.Object> stk,
                                                Project p)
                                         throws BuildException

      Overrides the version from DataType to recurse on nested ResourceSelectors.
      Overrides:
        `dieOnCircularReference` in class `DataType`
      Parameters:
        `stk` - the Stack of references.
        `p` - the Project to resolve against.
      Throws:
        `BuildException` - on error.