Class EnhancedLocalRepositoryManager

  • All Implemented Interfaces:
    LocalRepositoryManager

    class EnhancedLocalRepositoryManager
    extends SimpleLocalRepositoryManager
    These are implementation details for enhanced local repository manager, subject to change without prior notice. Repositories from which a cached artifact was resolved are tracked in a properties file named _remote.repositories, with content key as filename>repo_id and value as empty string. If a file has been installed in the repository, but not downloaded from a remote repository, it is tracked as empty repository id and always resolved. For example:
     artifact-1.0.pom>=
     artifact-1.0.jar>=
     artifact-1.0.pom>central=
     artifact-1.0.jar>central=
     artifact-1.0.zip>central=
     artifact-1.0-classifier.zip>central=
     artifact-1.0.pom>my_repo_id=
     
    See Also:
    EnhancedLocalRepositoryManagerFactory
    • Field Detail

      • trackingFilename

        private final java.lang.String trackingFilename
    • Constructor Detail

      • EnhancedLocalRepositoryManager

        EnhancedLocalRepositoryManager​(java.io.File basedir,
                                       RepositorySystemSession session)
    • Method Detail

      • add

        public void add​(RepositorySystemSession session,
                        LocalArtifactRegistration request)
        Description copied from interface: LocalRepositoryManager
        Registers an installed or resolved artifact with the local repository. Note that artifact registration is merely concerned about updating the local repository's internal state, not about actually installing the artifact or its accompanying metadata.
        Specified by:
        add in interface LocalRepositoryManager
        Overrides:
        add in class SimpleLocalRepositoryManager
        Parameters:
        session - The repository system session during which the registration is made, must not be null.
        request - The registration request, must not be null.
      • getRepositoryKeys

        private java.util.Collection<java.lang.String> getRepositoryKeys​(RemoteRepository repository,
                                                                         java.util.Collection<java.lang.String> contexts)
      • addArtifact

        private void addArtifact​(Artifact artifact,
                                 java.util.Collection<java.lang.String> repositories,
                                 boolean local)
      • readRepos

        private java.util.Properties readRepos​(java.io.File artifactFile)
      • addRepo

        private void addRepo​(java.io.File artifactFile,
                             java.util.Collection<java.lang.String> repositories)
      • getTrackingFile

        private java.io.File getTrackingFile​(java.io.File artifactFile)
      • getKey

        private java.lang.String getKey​(java.io.File file,
                                        java.lang.String repository)
      • isTracked

        private boolean isTracked​(java.util.Properties props,
                                  java.io.File file)