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