Class DelegatingArtifact

java.lang.Object
org.eclipse.aether.artifact.AbstractArtifact
org.eclipse.aether.util.artifact.DelegatingArtifact
All Implemented Interfaces:
Artifact

public abstract class DelegatingArtifact extends AbstractArtifact
An artifact that delegates to another artifact instance. This class serves as a base for subclasses that want to carry additional data fields.
  • Constructor Details

    • DelegatingArtifact

      protected DelegatingArtifact(Artifact delegate)
      Creates a new artifact instance that delegates to the specified artifact.
      Parameters:
      delegate - The artifact to delegate to, must not be null.
  • Method Details

    • newInstance

      protected abstract DelegatingArtifact newInstance(Artifact delegate)
      Creates a new artifact instance that delegates to the specified artifact. Subclasses should use this hook to instantiate themselves, taking along any data from the current instance that was added.
      Parameters:
      delegate - The artifact to delegate to, must not be null.
      Returns:
      The new delegating artifact, never null.
    • getGroupId

      public String getGroupId()
      Description copied from interface: Artifact
      Gets the group identifier of this artifact, for example "org.apache.maven".
      Returns:
      The group identifier, never null.
    • getArtifactId

      Description copied from interface: Artifact
      Gets the artifact identifier of this artifact, for example "maven-model".
      Returns:
      The artifact identifier, never null.
    • getVersion

      public String getVersion()
      Description copied from interface: Artifact
      Gets the version of this artifact, for example "1.0-20100529-1213". Note that in case of meta versions like "1.0-SNAPSHOT", the artifact's version depends on the state of the artifact. Artifacts that have been resolved or deployed will usually have the meta version expanded.
      Returns:
      The version, never null.
    • setVersion

      public Artifact setVersion(String version)
      Description copied from interface: Artifact
      Sets the version of the artifact.
      Specified by:
      setVersion in interface Artifact
      Overrides:
      setVersion in class AbstractArtifact
      Parameters:
      version - The version of this artifact, may be null or empty.
      Returns:
      The new artifact, never null.
    • getBaseVersion

      Description copied from interface: Artifact
      Gets the base version of this artifact, for example "1.0-SNAPSHOT". In contrast to the Artifact.getVersion(), the base version will always refer to the unresolved meta version.
      Specified by:
      getBaseVersion in interface Artifact
      Overrides:
      getBaseVersion in class AbstractArtifact
      Returns:
      The base version, never null.
    • isSnapshot

      public boolean isSnapshot()
      Description copied from interface: Artifact
      Determines whether this artifact uses a snapshot version.
      Specified by:
      isSnapshot in interface Artifact
      Overrides:
      isSnapshot in class AbstractArtifact
      Returns:
      true if the artifact is a snapshot, false otherwise.
    • getClassifier

      Description copied from interface: Artifact
      Gets the classifier of this artifact, for example "sources".
      Returns:
      The classifier or an empty string if none, never null.
    • getExtension

      public String getExtension()
      Description copied from interface: Artifact
      Gets the (file) extension of this artifact, for example "jar" or "tar.gz".
      Returns:
      The file extension (without leading period), never null.
    • getFile

      public File getFile()
      Description copied from interface: Artifact
      Gets the file of this artifact. Note that only resolved artifacts have a file associated with them. In general, callers must not assume any relationship between an artifact's filename and its coordinates.
      Returns:
      The file or null if the artifact isn't resolved.
    • setFile

      public Artifact setFile(File file)
      Description copied from interface: Artifact
      Sets the file of the artifact.
      Specified by:
      setFile in interface Artifact
      Overrides:
      setFile in class AbstractArtifact
      Parameters:
      file - The file of the artifact, may be null
      Returns:
      The new artifact, never null.
    • getProperty

      public String getProperty(String key, String defaultValue)
      Description copied from interface: Artifact
      Gets the specified property.
      Specified by:
      getProperty in interface Artifact
      Overrides:
      getProperty in class AbstractArtifact
      Parameters:
      key - The name of the property, must not be null.
      defaultValue - The default value to return in case the property is not set, may be null.
      Returns:
      The requested property value or null if the property is not set and no default value was provided.
      See Also:
    • getProperties

      Description copied from interface: Artifact
      Gets the properties of this artifact. Clients may use these properties to associate non-persistent values with an artifact that help later processing when the artifact gets passed around within the application.
      Returns:
      The (read-only) properties, never null.
      See Also:
    • setProperties

      public Artifact setProperties(Map<String,String> properties)
      Description copied from interface: Artifact
      Sets the properties for the artifact. Note that these properties exist merely in memory and are not persisted when the artifact gets installed/deployed to a repository.
      Specified by:
      setProperties in interface Artifact
      Overrides:
      setProperties in class AbstractArtifact
      Parameters:
      properties - The properties for the artifact, may be null.
      Returns:
      The new artifact, never null.
      See Also:
    • equals

      public boolean equals(Object obj)
      Description copied from class: AbstractArtifact
      Compares this artifact with the specified object.
      Overrides:
      equals in class AbstractArtifact
      Parameters:
      obj - The object to compare this artifact against, may be null.
      Returns:
      true if and only if the specified object is another Artifact with equal coordinates, properties and file, false otherwise.
    • hashCode

      public int hashCode()
      Description copied from class: AbstractArtifact
      Returns a hash code for this artifact.
      Overrides:
      hashCode in class AbstractArtifact
      Returns:
      A hash code for the artifact.
    • toString

      public String toString()
      Overrides:
      toString in class AbstractArtifact