This is an automated email from the ASF dual-hosted git repository. rmannibucau pushed a commit to branch MNG-7134 in repository https://gitbox.apache.org/repos/asf/maven.git
commit abd28587994ac011754ca43657867bee18d04bf3 Author: Hervé Boutemy <hbout...@apache.org> AuthorDate: Thu Mar 25 23:51:26 2021 +0100 [MNG-7128] keep blocked attribute from mirrors in artifact repositories --- .../maven/artifact/repository/ArtifactRepository.java | 6 ++++++ .../artifact/repository/DefaultArtifactRepository.java | 12 ++++++++++++ .../maven/repository/legacy/LegacyRepositorySystem.java | 5 +++++ .../src/main/java/org/apache/maven/RepositoryUtils.java | 1 + .../artifact/repository/LegacyLocalRepositoryManager.java | 9 +++++++++ .../maven/artifact/repository/MavenArtifactRepository.java | 14 ++++++++++++++ .../org/apache/maven/bridge/MavenRepositorySystem.java | 5 +++++ 7 files changed, 52 insertions(+) diff --git a/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepository.java b/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepository.java index 0b33345..47839ea 100644 --- a/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepository.java +++ b/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepository.java @@ -73,6 +73,12 @@ public interface ArtifactRepository @Deprecated void setBlacklisted( boolean blackListed ); + /** @since 3.8.1 **/ + boolean isBlocked(); + + /** @since 3.8.1 **/ + void setBlocked( boolean blocked ); + // // New interface methods for the repository system. // diff --git a/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepository.java b/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepository.java index 16b82c5..ef487b8 100644 --- a/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepository.java +++ b/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepository.java @@ -54,6 +54,8 @@ public class DefaultArtifactRepository private List<ArtifactRepository> mirroredRepositories = Collections.emptyList(); + private boolean blocked; + /** * Create a local repository or a test repository. * @@ -264,4 +266,14 @@ public class DefaultArtifactRepository } } + public boolean isBlocked() + { + return blocked; + } + + public void setBlocked( boolean blocked ) + { + this.blocked = blocked; + } + } diff --git a/maven-compat/src/main/java/org/apache/maven/repository/legacy/LegacyRepositorySystem.java b/maven-compat/src/main/java/org/apache/maven/repository/legacy/LegacyRepositorySystem.java index e3e7781..fd62e6c 100644 --- a/maven-compat/src/main/java/org/apache/maven/repository/legacy/LegacyRepositorySystem.java +++ b/maven-compat/src/main/java/org/apache/maven/repository/legacy/LegacyRepositorySystem.java @@ -446,6 +446,8 @@ public class LegacyRepositorySystem effectiveRepository.setMirroredRepositories( mirroredRepos ); + effectiveRepository.setBlocked( aliasedRepo.isBlocked() ); + effectiveRepositories.add( effectiveRepository ); } @@ -502,6 +504,7 @@ public class LegacyRepositorySystem mirror.setId( repo.getId() ); mirror.setUrl( repo.getUrl() ); mirror.setLayout( repo.getContentType() ); + mirror.setBlocked( repo.isBlocked() ); return mirror; } } @@ -538,6 +541,8 @@ public class LegacyRepositorySystem { repository.setLayout( getLayout( mirror.getLayout() ) ); } + + repository.setBlocked( mirror.isBlocked() ); } } diff --git a/maven-core/src/main/java/org/apache/maven/RepositoryUtils.java b/maven-core/src/main/java/org/apache/maven/RepositoryUtils.java index c1e21c4..80e5874 100644 --- a/maven-core/src/main/java/org/apache/maven/RepositoryUtils.java +++ b/maven-core/src/main/java/org/apache/maven/RepositoryUtils.java @@ -210,6 +210,7 @@ public class RepositoryUtils builder.setAuthentication( toAuthentication( repo.getAuthentication() ) ); builder.setProxy( toProxy( repo.getProxy() ) ); builder.setMirroredRepositories( toRepos( repo.getMirroredRepositories() ) ); + builder.setBlocked( repo.isBlocked() ); result = builder.build(); } return result; diff --git a/maven-core/src/main/java/org/apache/maven/artifact/repository/LegacyLocalRepositoryManager.java b/maven-core/src/main/java/org/apache/maven/artifact/repository/LegacyLocalRepositoryManager.java index 634b63c..acd7d5f 100644 --- a/maven-core/src/main/java/org/apache/maven/artifact/repository/LegacyLocalRepositoryManager.java +++ b/maven-core/src/main/java/org/apache/maven/artifact/repository/LegacyLocalRepositoryManager.java @@ -427,6 +427,15 @@ public class LegacyLocalRepositoryManager { } + public boolean isBlocked() + { + return false; + } + + public void setBlocked( boolean blocked ) + { + } + } } diff --git a/maven-core/src/main/java/org/apache/maven/artifact/repository/MavenArtifactRepository.java b/maven-core/src/main/java/org/apache/maven/artifact/repository/MavenArtifactRepository.java index c330fda..46197a4 100644 --- a/maven-core/src/main/java/org/apache/maven/artifact/repository/MavenArtifactRepository.java +++ b/maven-core/src/main/java/org/apache/maven/artifact/repository/MavenArtifactRepository.java @@ -57,6 +57,8 @@ public class MavenArtifactRepository private List<ArtifactRepository> mirroredRepositories = Collections.emptyList(); + private boolean blocked; + public MavenArtifactRepository() { } @@ -160,6 +162,8 @@ public class MavenArtifactRepository sb.append( ", update => " ).append( releases.getUpdatePolicy() ).append( "]\n" ); } + sb.append( " blocked: " ).append( isBlocked() ).append( '\n' ); + return sb.toString(); } @@ -414,4 +418,14 @@ public class MavenArtifactRepository } } + public boolean isBlocked() + { + return blocked; + } + + public void setBlocked( boolean blocked ) + { + this.blocked = blocked; + } + } diff --git a/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java b/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java index 90bfdcd..72e8b4f 100644 --- a/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java +++ b/maven-core/src/main/java/org/apache/maven/bridge/MavenRepositorySystem.java @@ -190,6 +190,7 @@ public class MavenRepositorySystem mirror.setId( repo.getId() ); mirror.setUrl( repo.getUrl() ); mirror.setLayout( repo.getContentType() ); + mirror.setBlocked( repo.isBlocked() ); return mirror; } } @@ -226,6 +227,8 @@ public class MavenRepositorySystem { repository.setLayout( getLayout( mirror.getLayout() ) ); } + + repository.setBlocked( mirror.isBlocked() ); } } @@ -671,6 +674,8 @@ public class MavenRepositorySystem effectiveRepository.setMirroredRepositories( mirroredRepos ); + effectiveRepository.setBlocked( aliasedRepo.isBlocked() ); + effectiveRepositories.add( effectiveRepository ); }