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

# Class SizeLimitCollection

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.types.DataType
org.apache.tools.ant.types.resources.AbstractResourceCollectionWrapper
org.apache.tools.ant.types.resources.BaseResourceCollectionWrapper
org.apache.tools.ant.types.resources.SizeLimitCollection

All Implemented Interfaces:
  `Cloneable`, `Iterable<Resource>`, `ResourceCollection`

Direct Known Subclasses:
  `AllButFirst`, `AllButLast`, `First`, `Last`

public abstract class SizeLimitCollection extends BaseResourceCollectionWrapper
ResourceCollection that imposes a size limit on another ResourceCollection.

Since:
  Ant 1.7.1

- ## 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
  `SizeLimitCollection()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `getCount()`
  Get the number of resources to be included.
  `protected int`
  `getValidCount()`
  Get the count, verifying it is >= 0.
  `void`
  `setCount(int i)`
  Set the number of resources to be included.
  `int`
  `size()`
  Efficient size implementation.

  ### Methods inherited from class org.apache.tools.ant.types.resources.BaseResourceCollectionWrapper

  `createIterator, getCollection, getSize`

  ### Methods inherited from class org.apache.tools.ant.types.resources.AbstractResourceCollectionWrapper

  `add, dieOnCircularReference, getResourceCollection, isCache, isFilesystemOnly, iterator, setCache, toString`

  ### 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`

  ### 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`

  ### Methods inherited from interface java.lang.Iterable

  `forEach, spliterator`

  ### Methods inherited from interface org.apache.tools.ant.types.ResourceCollection

  `isEmpty, stream`

- ## Constructor Details

  - ### SizeLimitCollection

    public SizeLimitCollection()

- ## Method Details

  - ### setCount

    public void setCount(int i)
    Set the number of resources to be included.
    Parameters:
      `i` - the count as `int`.

  - ### getCount

    public int getCount()
    Get the number of resources to be included. Default is 1.
    Returns:
      the count as `int`.

  - ### size

    public int size()
    Efficient size implementation.
    Specified by:
      `size` in interface `ResourceCollection`
    Overrides:
      `size` in class `AbstractResourceCollectionWrapper`
    Returns:
      int size

  - ### getValidCount

    protected int getValidCount()
    Get the count, verifying it is >= 0.
    Returns:
      int count