Class SubArtifact

  • All Implemented Interfaces:
    Artifact

    public final class SubArtifact
    extends AbstractArtifact
    An artifact whose identity is derived from another artifact. Note: Instances of this class are immutable and the exposed mutators return new objects rather than changing the current instance.
    • Constructor Detail

      • SubArtifact

        public SubArtifact​(Artifact mainArtifact,
                           String classifier,
                           String extension)
        Creates a new sub artifact. The classifier and extension specified for this artifact may use the asterisk character "*" to refer to the corresponding property of the main artifact. For instance, the classifier "*-sources" can be used to refer to the source attachment of an artifact. Likewise, the extension "*.asc" can be used to refer to the GPG signature of an artifact.
        Parameters:
        mainArtifact - The artifact from which to derive the identity, must not be null.
        classifier - The classifier for this artifact, may be null if none.
        extension - The extension for this artifact, may be null if none.
      • SubArtifact

        public SubArtifact​(Artifact mainArtifact,
                           String classifier,
                           String extension,
                           File file)
        Creates a new sub artifact. The classifier and extension specified for this artifact may use the asterisk character "*" to refer to the corresponding property of the main artifact. For instance, the classifier "*-sources" can be used to refer to the source attachment of an artifact. Likewise, the extension "*.asc" can be used to refer to the GPG signature of an artifact.
        Parameters:
        mainArtifact - The artifact from which to derive the identity, must not be null.
        classifier - The classifier for this artifact, may be null if none.
        extension - The extension for this artifact, may be null if none.
        file - The file for this artifact, may be null if unresolved.
      • SubArtifact

        public SubArtifact​(Artifact mainArtifact,
                           String classifier,
                           String extension,
                           Map<String,​String> properties)
        Creates a new sub artifact. The classifier and extension specified for this artifact may use the asterisk character "*" to refer to the corresponding property of the main artifact. For instance, the classifier "*-sources" can be used to refer to the source attachment of an artifact. Likewise, the extension "*.asc" can be used to refer to the GPG signature of an artifact.
        Parameters:
        mainArtifact - The artifact from which to derive the identity, must not be null.
        classifier - The classifier for this artifact, may be null if none.
        extension - The extension for this artifact, may be null if none.
        properties - The properties of the artifact, may be null.
      • SubArtifact

        public SubArtifact​(Artifact mainArtifact,
                           String classifier,
                           String extension,
                           Map<String,​String> properties,
                           File file)
        Creates a new sub artifact. The classifier and extension specified for this artifact may use the asterisk character "*" to refer to the corresponding property of the main artifact. For instance, the classifier "*-sources" can be used to refer to the source attachment of an artifact. Likewise, the extension "*.asc" can be used to refer to the GPG signature of an artifact.
        Parameters:
        mainArtifact - The artifact from which to derive the identity, must not be null.
        classifier - The classifier for this artifact, may be null if none.
        extension - The extension for this artifact, may be null if none.
        properties - The properties of the artifact, may be null.
        file - The file for this artifact, may be null if unresolved.
    • Method Detail

      • 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

        public String 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.
      • getClassifier

        public String 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.
      • getProperties

        public Map<String,​StringgetProperties()
        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:
        ArtifactProperties