Class DefaultMetadata

  • All Implemented Interfaces:
    Metadata

    public final class DefaultMetadata
    extends AbstractMetadata
    A basic metadata instance. Note: Instances of this class are immutable and the exposed mutators return new objects rather than changing the current instance.
    • Nested Class Summary

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.lang.String artifactId  
      private java.io.File file  
      private java.lang.String groupId  
      private Metadata.Nature nature  
      private java.util.Map<java.lang.String,​java.lang.String> properties  
      private java.lang.String type  
      private java.lang.String version  
    • Constructor Summary

      Constructors 
      Constructor Description
      DefaultMetadata​(java.lang.String groupId, java.lang.String artifactId, java.lang.String version, java.lang.String type, Metadata.Nature nature)
      Creates a new metadata for the groupId:artifactId:version level with the specific type and nature.
      DefaultMetadata​(java.lang.String groupId, java.lang.String artifactId, java.lang.String version, java.lang.String type, Metadata.Nature nature, java.io.File file)
      Creates a new metadata for the groupId:artifactId:version level with the specific type and nature.
      DefaultMetadata​(java.lang.String groupId, java.lang.String artifactId, java.lang.String version, java.lang.String type, Metadata.Nature nature, java.io.File file, java.util.Map<java.lang.String,​java.lang.String> properties)  
      DefaultMetadata​(java.lang.String groupId, java.lang.String artifactId, java.lang.String version, java.lang.String type, Metadata.Nature nature, java.util.Map<java.lang.String,​java.lang.String> properties, java.io.File file)
      Creates a new metadata for the groupId:artifactId:version level with the specific type and nature.
      DefaultMetadata​(java.lang.String groupId, java.lang.String artifactId, java.lang.String type, Metadata.Nature nature)
      Creates a new metadata for the groupId:artifactId level with the specific type and nature.
      DefaultMetadata​(java.lang.String groupId, java.lang.String type, Metadata.Nature nature)
      Creates a new metadata for the groupId level with the specific type and nature.
      DefaultMetadata​(java.lang.String type, Metadata.Nature nature)
      Creates a new metadata for the repository root with the specific type and nature.
    • Field Detail

      • groupId

        private final java.lang.String groupId
      • artifactId

        private final java.lang.String artifactId
      • version

        private final java.lang.String version
      • type

        private final java.lang.String type
      • file

        private final java.io.File file
      • properties

        private final java.util.Map<java.lang.String,​java.lang.String> properties
    • Constructor Detail

      • DefaultMetadata

        public DefaultMetadata​(java.lang.String type,
                               Metadata.Nature nature)
        Creates a new metadata for the repository root with the specific type and nature.
        Parameters:
        type - The type of the metadata, e.g. "maven-metadata.xml", may be null.
        nature - The nature of the metadata, must not be null.
      • DefaultMetadata

        public DefaultMetadata​(java.lang.String groupId,
                               java.lang.String type,
                               Metadata.Nature nature)
        Creates a new metadata for the groupId level with the specific type and nature.
        Parameters:
        groupId - The group identifier to which this metadata applies, may be null.
        type - The type of the metadata, e.g. "maven-metadata.xml", may be null.
        nature - The nature of the metadata, must not be null.
      • DefaultMetadata

        public DefaultMetadata​(java.lang.String groupId,
                               java.lang.String artifactId,
                               java.lang.String type,
                               Metadata.Nature nature)
        Creates a new metadata for the groupId:artifactId level with the specific type and nature.
        Parameters:
        groupId - The group identifier to which this metadata applies, may be null.
        artifactId - The artifact identifier to which this metadata applies, may be null.
        type - The type of the metadata, e.g. "maven-metadata.xml", may be null.
        nature - The nature of the metadata, must not be null.
      • DefaultMetadata

        public DefaultMetadata​(java.lang.String groupId,
                               java.lang.String artifactId,
                               java.lang.String version,
                               java.lang.String type,
                               Metadata.Nature nature)
        Creates a new metadata for the groupId:artifactId:version level with the specific type and nature.
        Parameters:
        groupId - The group identifier to which this metadata applies, may be null.
        artifactId - The artifact identifier to which this metadata applies, may be null.
        version - The version to which this metadata applies, may be null.
        type - The type of the metadata, e.g. "maven-metadata.xml", may be null.
        nature - The nature of the metadata, must not be null.
      • DefaultMetadata

        public DefaultMetadata​(java.lang.String groupId,
                               java.lang.String artifactId,
                               java.lang.String version,
                               java.lang.String type,
                               Metadata.Nature nature,
                               java.io.File file)
        Creates a new metadata for the groupId:artifactId:version level with the specific type and nature.
        Parameters:
        groupId - The group identifier to which this metadata applies, may be null.
        artifactId - The artifact identifier to which this metadata applies, may be null.
        version - The version to which this metadata applies, may be null.
        type - The type of the metadata, e.g. "maven-metadata.xml", may be null.
        nature - The nature of the metadata, must not be null.
        file - The resolved file of the metadata, may be null.
      • DefaultMetadata

        public DefaultMetadata​(java.lang.String groupId,
                               java.lang.String artifactId,
                               java.lang.String version,
                               java.lang.String type,
                               Metadata.Nature nature,
                               java.util.Map<java.lang.String,​java.lang.String> properties,
                               java.io.File file)
        Creates a new metadata for the groupId:artifactId:version level with the specific type and nature.
        Parameters:
        groupId - The group identifier to which this metadata applies, may be null.
        artifactId - The artifact identifier to which this metadata applies, may be null.
        version - The version to which this metadata applies, may be null.
        type - The type of the metadata, e.g. "maven-metadata.xml", may be null.
        nature - The nature of the metadata, must not be null.
        properties - The properties of the metadata, may be null if none.
        file - The resolved file of the metadata, may be null.
      • DefaultMetadata

        DefaultMetadata​(java.lang.String groupId,
                        java.lang.String artifactId,
                        java.lang.String version,
                        java.lang.String type,
                        Metadata.Nature nature,
                        java.io.File file,
                        java.util.Map<java.lang.String,​java.lang.String> properties)
    • Method Detail

      • emptify

        private static java.lang.String emptify​(java.lang.String str)
      • getGroupId

        public java.lang.String getGroupId()
        Description copied from interface: Metadata
        Gets the group identifier of this metadata.
        Returns:
        The group identifier or an empty string if the metadata applies to the entire repository, never null.
      • getArtifactId

        public java.lang.String getArtifactId()
        Description copied from interface: Metadata
        Gets the artifact identifier of this metadata.
        Returns:
        The artifact identifier or an empty string if the metadata applies to the groupId level only, never null.
      • getVersion

        public java.lang.String getVersion()
        Description copied from interface: Metadata
        Gets the version of this metadata.
        Returns:
        The version or an empty string if the metadata applies to the groupId:artifactId level only, never null.
      • getType

        public java.lang.String getType()
        Description copied from interface: Metadata
        Gets the type of the metadata, e.g. "maven-metadata.xml".
        Returns:
        The type of the metadata, never null.
      • getNature

        public Metadata.Nature getNature()
        Description copied from interface: Metadata
        Gets the nature of this metadata. The nature indicates to what artifact versions the metadata refers.
        Returns:
        The nature, never null.
      • getFile

        public java.io.File getFile()
        Description copied from interface: Metadata
        Gets the file of this metadata. Note that only resolved metadata has a file associated with it.
        Returns:
        The file or null if none.
      • getProperties

        public java.util.Map<java.lang.String,​java.lang.String> getProperties()
        Description copied from interface: Metadata
        Gets the properties of this metadata.
        Returns:
        The (read-only) properties, never null.