Package: org.gradle.api.publish.ivy

## [Java] Interface IvyArtifactSet

- java.util.Collection

- All Superinterfaces:
    DomainObjectCollection, Iterable, DomainObjectSet, Collection

  A Collection of IvyArtifacts to be included in an IvyPublication. Being a DomainObjectSet, a `IvyArtifactSet` provides convenient methods for querying, filtering, and applying actions to the set of IvyArtifacts.

       apply plugin: 'ivy-publish'

       def publication = publishing.publications.create("my-pub", IvyPublication)
       def artifacts = publication.artifacts

       artifacts.matching({
           it.type == "source"
       }).all({
           it.extension = "src.jar"
       })

  See Also:
    DomainObjectSet

- - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `IvyArtifact` | `artifact(Object source)` Creates and adds a IvyArtifact to the set.
    `IvyArtifact` | `artifact(Object source, Action<? super IvyArtifact> config)` Creates and adds a IvyArtifact to the set, which is configured by the associated action.

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `interface DomainObjectSet` | `findAll, matching, matching, withType`
    `interface DomainObjectCollection` | `all, all, findAll, matching, matching, whenObjectAdded, whenObjectAdded, whenObjectRemoved, whenObjectRemoved, withType, withType, withType`
    `interface Set` | `add, equals, hashCode, clear, contains, isEmpty, size, toArray, toArray, addAll, iterator, remove, containsAll, removeAll, retainAll`

- - ### Method Detail

    - #### public IvyArtifact artifact(Object source)

      Creates and adds a IvyArtifact to the set. The semantics of this method are the same as IvyPublication.artifact.

      Parameters:
        `source` - The source of the artifact content.

    - #### public IvyArtifact artifact(Object source, Action<? super IvyArtifact> config)

      Creates and adds a IvyArtifact to the set, which is configured by the associated action. The semantics of this method are the same as IvyPublication.artifact.

      Parameters:
        `source` - The source of the artifact.
        `config` - An action to configure the values of the constructed IvyArtifact.