## org.apache.ivy.core.module.descriptor
Class DefaultArtifact

    java.lang.Object
      org.apache.ivy.core.module.descriptor.AbstractArtifact
          org.apache.ivy.core.module.descriptor.DefaultArtifact

All Implemented Interfaces:
  Artifact, ExtendableItem

    public class DefaultArtifact

extends AbstractArtifact

Constructor Summary
`DefaultArtifact(ArtifactRevisionId arid, java.util.Date publicationDate, java.net.URL url, boolean isMetadata)`
`DefaultArtifact(ModuleRevisionId mrid, java.util.Date publicationDate, java.lang.String name, java.lang.String type, java.lang.String ext)`
`DefaultArtifact(ModuleRevisionId mrid, java.util.Date publicationDate, java.lang.String name, java.lang.String type, java.lang.String ext, boolean isMetadata)`
`DefaultArtifact(ModuleRevisionId mrid, java.util.Date publicationDate, java.lang.String name, java.lang.String type, java.lang.String ext, java.util.Map extraAttributes)`
`DefaultArtifact(ModuleRevisionId mrid, java.util.Date publicationDate, java.lang.String name, java.lang.String type, java.lang.String ext, java.net.URL url, java.util.Map extraAttributes)`

Method Summary
`static Artifact` `cloneWithAnotherExt(Artifact artifact, java.lang.String newExt)`
`static Artifact` `cloneWithAnotherMrid(Artifact artifact, ModuleRevisionId mrid)`
`static Artifact` `cloneWithAnotherName(Artifact artifact, java.lang.String name)`
`static Artifact` `cloneWithAnotherType(Artifact artifact, java.lang.String newType)`
`static Artifact` `cloneWithAnotherTypeAndExt(Artifact artifact, java.lang.String newType, java.lang.String newExt)`
`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
`static Artifact` `newIvyArtifact(ModuleRevisionId mrid, java.util.Date pubDate)`
`static Artifact` `newPomArtifact(ModuleRevisionId mrid, java.util.Date pubDate)`

Methods inherited from class org.apache.ivy.core.module.descriptor.AbstractArtifact
`equals, getAttribute, getAttributes, getExtraAttribute, getExtraAttributes, getQualifiedExtraAttributes, hashCode, toString`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Constructor Detail

### DefaultArtifact

    public DefaultArtifact(ModuleRevisionId mrid,
                           java.util.Date publicationDate,
                           java.lang.String name,
                           java.lang.String type,
                           java.lang.String ext)

### DefaultArtifact

    public DefaultArtifact(ModuleRevisionId mrid,
                           java.util.Date publicationDate,
                           java.lang.String name,
                           java.lang.String type,
                           java.lang.String ext,
                           boolean isMetadata)

### DefaultArtifact

    public DefaultArtifact(ModuleRevisionId mrid,
                           java.util.Date publicationDate,
                           java.lang.String name,
                           java.lang.String type,
                           java.lang.String ext,
                           java.util.Map extraAttributes)

### DefaultArtifact

    public DefaultArtifact(ModuleRevisionId mrid,
                           java.util.Date publicationDate,
                           java.lang.String name,
                           java.lang.String type,
                           java.lang.String ext,
                           java.net.URL url,
                           java.util.Map extraAttributes)

### DefaultArtifact

    public DefaultArtifact(ArtifactRevisionId arid,
                           java.util.Date publicationDate,
                           java.net.URL url,
                           boolean isMetadata)

Method Detail

### newIvyArtifact

    public static Artifact newIvyArtifact(ModuleRevisionId mrid,
                                          java.util.Date pubDate)

### newPomArtifact

    public static Artifact newPomArtifact(ModuleRevisionId mrid,
                                          java.util.Date pubDate)

### cloneWithAnotherExt

    public static Artifact cloneWithAnotherExt(Artifact artifact,
                                               java.lang.String newExt)

### cloneWithAnotherType

    public static Artifact cloneWithAnotherType(Artifact artifact,
                                                java.lang.String newType)

### cloneWithAnotherTypeAndExt

    public static Artifact cloneWithAnotherTypeAndExt(Artifact artifact,
                                                      java.lang.String newType,
                                                      java.lang.String newExt)

### cloneWithAnotherName

    public static Artifact cloneWithAnotherName(Artifact artifact,
                                                java.lang.String name)

### cloneWithAnotherMrid

    public static Artifact cloneWithAnotherMrid(Artifact artifact,
                                                ModuleRevisionId mrid)

### getModuleRevisionId

    public ModuleRevisionId getModuleRevisionId()

  Description copied from interface: `Artifact`
  Returns the resolved module revision id for this artifact

  Returns:
    the resolved module revision id.

### getName

    public java.lang.String getName()

  Description copied from interface: `Artifact`
  Return the name of the artifact, generally 'part' of the basename of the file.

  Returns:
    the name of the artifact. Never null.

### getPublicationDate

    public java.util.Date getPublicationDate()

  Description copied from interface: `Artifact`
  Returns the resolved publication date for this artifact

  Returns:
    the resolved publication date. Never null.

### getType

    public java.lang.String getType()

  Description copied from interface: `Artifact`
  Returns the type of the artifact, typically 'jar', 'source', 'javadoc', 'debian', ...

  Returns:
    the type of the artifact. Never null.

### getExt

    public java.lang.String getExt()

  Description copied from interface: `Artifact`
  Retrieve the extension of the artifact. The extension is without dot (ie. 'jar' and not '.jar')

  Returns:
    the extension of the artifact. Never null.

### getId

    public ArtifactRevisionId getId()

  Description copied from interface: `Artifact`
  Return the specific identifier of this artifact.

  Returns:
    the id of the artifact

### getConfigurations

    public java.lang.String[] getConfigurations()

  Description copied from interface: `Artifact`
  Returns the list of configurations where this artifact is associated to.

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

### getUrl

    public java.net.URL getUrl()

  Description copied from interface: `Artifact`
  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

### isMetadata

    public boolean isMetadata()

  Description copied from interface: `Artifact`
  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