Package org.gradle.api.artifacts.type

## Interface ArtifactTypeDefinition

- All Superinterfaces:
    `HasAttributes`, `Named`

      public interface ArtifactTypeDefinition
      extends HasAttributes, Named

  Meta-data about a particular type of artifacts.
  Since:
    4.0

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.gradle.api.Named

      `Named.Namer`

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static Attribute<java.lang.String>` | `ARTIFACT_TYPE_ATTRIBUTE` | The attribute that represents the type of the artifact.
    `static java.lang.String` | `BINARY_DATA_TYPE` | Represents a binary file
    `static java.lang.String` | `DIRECTORY_TYPE` | Represents a raw directory
    `static java.lang.String` | `JAR_TYPE` | Represents a JAR file.
    `static java.lang.String` | `JVM_CLASS_DIRECTORY` | Represents a directory tree containing class files.
    `static java.lang.String` | `JVM_RESOURCES_DIRECTORY` | Represents a directory tree containing jvm classpath resource files.
    `static java.lang.String` | `ZIP_TYPE` | Represents a zip file

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `AttributeContainer` | `getAttributes()` | Defines the set of attributes to apply to a component that is packaged as an artifact of this type, when no other attributes are defined.
    `java.util.Set<java.lang.String>` | `getFileNameExtensions()` | Returns the set of file name extensions that should be mapped to this artifact type.

    - ### Methods inherited from interface org.gradle.api.Named

      `getName`

- - ### Field Detail

    - #### ARTIFACT_TYPE_ATTRIBUTE

          static final Attribute<java.lang.String> ARTIFACT_TYPE_ATTRIBUTE

      The attribute that represents the type of the artifact.
      Since:
        7.3

    - #### JAR_TYPE

          static final java.lang.String JAR_TYPE

      Represents a JAR file.
      Since:
        4.0
      See Also:
        Constant Field Values

    - #### JVM_CLASS_DIRECTORY

          static final java.lang.String JVM_CLASS_DIRECTORY

      Represents a directory tree containing class files.
      Since:
        4.0
      See Also:
        Constant Field Values

    - #### JVM_RESOURCES_DIRECTORY

          static final java.lang.String JVM_RESOURCES_DIRECTORY

      Represents a directory tree containing jvm classpath resource files.
      Since:
        4.0
      See Also:
        Constant Field Values

    - #### ZIP_TYPE

          static final java.lang.String ZIP_TYPE

      Represents a zip file
      Since:
        5.3
      See Also:
        Constant Field Values

    - #### DIRECTORY_TYPE

          static final java.lang.String DIRECTORY_TYPE

      Represents a raw directory
      Since:
        5.3
      See Also:
        Constant Field Values

    - #### BINARY_DATA_TYPE

          @Incubating
          static final java.lang.String BINARY_DATA_TYPE

      Represents a binary file
      Since:
        7.4
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getFileNameExtensions

          java.util.Set<java.lang.String> getFileNameExtensions()

      Returns the set of file name extensions that should be mapped to this artifact type. Defaults to the name of this type.

    - #### getAttributes

          AttributeContainer getAttributes()

      Defines the set of attributes to apply to a component that is packaged as an artifact of this type, when no other attributes are defined. For example, these attributes are applied when a Maven module contains an artifact with one of the extensions listed in `getFileNameExtensions()`.
      Specified by:
        `getAttributes` in interface `HasAttributes`