Class Artifact

  • All Implemented Interfaces:
    Comparable

    public class Artifact
    extends Commentable
    implements Comparable
    Description of an artifact. An artifact is described by it's Apache Maven coordinates consisting of group id, artifact id, and version. In addition, the classifier and type can be specified as well. If no type is specified, "jar" is assumed. An artifact can have any metadata.
    • Constructor Detail

      • Artifact

        public Artifact​(String gId,
                        String aId,
                        String version,
                        String classifier,
                        String type)
        Create a new artifact object
        Parameters:
        gId - The group id (required)
        aId - The artifact id (required)
        version - The version (required)
        classifier - The classifier (optional)
        type - The type/extension (optional, defaults to jar)
      • Artifact

        public Artifact​(String gId,
                        String aId,
                        String version,
                        String classifier,
                        String type,
                        Map<String,​String> metadata)
        Create a new artifact object
        Parameters:
        gId - The group id (required)
        aId - The artifact id (required)
        version - The version (required)
        classifier - The classifier (optional)
        type - The type/extension (optional, defaults to jar)
        metadata - The metadata associated with the Artifact
    • Method Detail

      • fromMvnUrl

        public static Artifact fromMvnUrl​(String url)
        Create a new artifact from a maven url, 'mvn:' [ repository-url '!' ] group-id '/' artifact-id [ '/' [version] [ '/' [type] [ '/' classifier ] ] ] ]
        Parameters:
        url - The url
        Returns:
        A new artifact
        Throws:
        IllegalArgumentException - If the url is not valid
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • getGroupId

        public String getGroupId()
        Return the group id.
        Returns:
        The group id.
      • getArtifactId

        public String getArtifactId()
        Return the artifact id.
        Returns:
        The artifact id.
      • getVersion

        public String getVersion()
        Return the version.
        Returns:
        The version.
      • getClassifier

        public String getClassifier()
        Return the optional classifier.
        Returns:
        The classifier or null.
      • getType

        public String getType()
        Return the type.
        Returns:
        The type.
      • getMetadata

        public Map<String,​String> getMetadata()
        Get the metadata of the artifact.
        Returns:
        The metadata.
      • getRepositoryPath

        public String getRepositoryPath()
        Create a Maven like relative repository path.
        Returns:
        A relative repository path.