org.apache.ivy.core.module.descriptor

## Interface Artifact

All Superinterfaces:
  ExtendableItem

All Known Implementing Classes:
  AbstractArtifact, DefaultArtifact, IvyPublish.PublishArtifact, MDArtifact

    public interface Artifact
    extends ExtendableItem

Representation of a published 'file' in the development environment. An artifact is generally a file that is produced by a project build. This is typically a `jar`, a `war`, an `ear`, a `zip`, a `deb`, etc.

### Method Summary

Methods
`java.lang.String[]` `getConfigurations()` Returns the list of configurations where this artifact is associated to.
`java.lang.String` `getExt()` Retrieve the extension of the artifact.
`ArtifactRevisionId` `getId()` Return the specific identifier of this artifact.
`ModuleRevisionId` `getModuleRevisionId()` Returns the resolved module revision id for this artifact
`java.lang.String` `getName()` Return the name of the artifact, generally 'part' of the basename of the file.
`java.util.Date` `getPublicationDate()` Returns the resolved publication date for this artifact
`java.lang.String` `getType()` Returns the type of the artifact, typically 'jar', 'source', 'javadoc', 'debian', ...
`java.net.URL` `getUrl()` Returns the url at which this artifact can be found independently of ivy configuration.
`boolean` `isMetadata()` Returns true if this artifact represents a module metadata artifact, false if it's a published artifact

### Methods inherited from interface org.apache.ivy.util.extendable.ExtendableItem

`getAttribute, getAttributes, getExtraAttribute, getExtraAttributes, getQualifiedExtraAttributes`

### Method Detail

#### getModuleRevisionId

    ModuleRevisionId getModuleRevisionId()

Returns the resolved module revision id for this artifact

Returns:
  the resolved module revision id.

#### getPublicationDate

    java.util.Date getPublicationDate()

Returns the resolved publication date for this artifact

Returns:
  the resolved publication date. Never null.

#### getName

    java.lang.String getName()

Return the name of the artifact, generally 'part' of the basename of the file.

Returns:
  the name of the artifact. Never null.

#### getType

    java.lang.String getType()

Returns the type of the artifact, typically 'jar', 'source', 'javadoc', 'debian', ...

Returns:
  the type of the artifact. Never null.

#### getExt

    java.lang.String getExt()

Retrieve the extension of the artifact. The extension is without dot (ie. 'jar' and not '.jar')

Returns:
  the extension of the artifact. Never null.

#### getUrl

    java.net.URL getUrl()

Returns the url at which this artifact can be found independently of ivy configuration. This can be null (and is usually for standard artifacts)

Returns:
  url at which this artifact can be found independently of ivy configuration

#### getConfigurations

    java.lang.String[] getConfigurations()

Returns the list of configurations where this artifact is associated to.

Returns:
  the list of configuration this artifact is associated to. Never null.

#### getId

    ArtifactRevisionId getId()

Return the specific identifier of this artifact.

Returns:
  the id of the artifact

#### isMetadata

    boolean isMetadata()

Returns true if this artifact represents a module metadata artifact, false if it's a published artifact

Returns:
  true if this artifact represents a module metadata artifact, false if it's a published artifact