Package: org.gradle.api.reporting

## [Java] Interface ReportContainer<T>

- org.gradle.api.reporting.ReportContainer

- All Superinterfaces:
    NamedDomainObjectSet, Iterable, DomainObjectCollection, Collection, NamedDomainObjectCollection, Configurable

  A container of Report objects, that represent potential reports.

  Things that produce reports (typically tasks) expose a report container that contains Report objects for each possible report that they can produce. Each report object can be configured individually, including whether or not it should be produced by way of its enabled property.

  `ReportContainer` implementations are immutable in that standard collection methods such as `add()`, `remove()` and `clear()` will throw an ImmutableViolationException. However, implementations may provide new methods that allow the addition of new report object and/or the removal of existing report objects.

  Parameters:
    `` - The base report type for reports of this container.

- - ### Nested Class Summary

    Nested classes
    Modifiers | Name | Description
    --- | --- | ---
    `static class` | `ReportContainer.ImmutableViolationException` | The exception thrown when any of this container's mutation methods are called.

  - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `NamedDomainObjectSet<T>` | `getEnabled()` Returns an immutable collection of all the enabled Report objects in this container.

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `interface NamedDomainObjectSet` | `findAll, matching, matching, withType`
    `interface NamedDomainObjectCollection` | `add, addAll, addRule, addRule, findByName, getAsMap, getAt, getByName, getByName, getNamer, getNames, getRules, matching, matching, withType`
    `interface Set` | `add, equals, hashCode, clear, contains, isEmpty, size, toArray, toArray, addAll, iterator, remove, containsAll, removeAll, retainAll`

- - ### Method Detail

    - #### public NamedDomainObjectSet<T> getEnabled()

      Returns an immutable collection of all the enabled Report objects in this container.

      The returned collection is live. That is, as reports are enabled/disabled the returned collection always reflects the current set of enabled reports.

      Returns:
        The enabled reports.