From 00eb47a8cbca30f957214b8a40a1ce5dcf810723 Mon Sep 17 00:00:00 2001 From: Alexander Kass Date: Thu, 18 Jun 2020 11:21:03 +0300 Subject: [PATCH] Ability to provide maven artifacts GitOrigin-RevId: 660062553787dd7161bccbad933228e83a677f3e --- .../idea/maven/aether/ArtifactRepositoryManager.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/aether-dependency-resolver/src/org/jetbrains/idea/maven/aether/ArtifactRepositoryManager.java b/aether-dependency-resolver/src/org/jetbrains/idea/maven/aether/ArtifactRepositoryManager.java index fcb2326c604c..ea17142c7e73 100644 --- a/aether-dependency-resolver/src/org/jetbrains/idea/maven/aether/ArtifactRepositoryManager.java +++ b/aether-dependency-resolver/src/org/jetbrains/idea/maven/aether/ArtifactRepositoryManager.java @@ -87,10 +87,14 @@ public class ArtifactRepositoryManager { public ArtifactRepositoryManager(@NotNull File localRepositoryPath, @NotNull final ProgressConsumer progressConsumer) { // recreate remote repository objects to ensure the latest proxy settings are used - this(localRepositoryPath, Arrays.asList(createRemoteRepository(MAVEN_CENTRAL_REPOSITORY), createRemoteRepository(JBOSS_COMMUNITY_REPOSITORY)), progressConsumer); + this(localRepositoryPath, createDefaultRemoteRepositories(), progressConsumer); } public ArtifactRepositoryManager(@NotNull File localRepositoryPath, List remoteRepositories, @NotNull final ProgressConsumer progressConsumer) { + this(localRepositoryPath, remoteRepositories, progressConsumer, false); + } + + public ArtifactRepositoryManager(@NotNull File localRepositoryPath, List remoteRepositories, @NotNull final ProgressConsumer progressConsumer, boolean offline) { myRemoteRepositories.addAll(remoteRepositories); final DefaultRepositorySystemSession session = MavenRepositorySystemUtils.newSession(); if (progressConsumer != ProgressConsumer.DEAF) { @@ -135,6 +139,7 @@ public class ArtifactRepositoryManager { session.setLocalRepositoryManager(ourSystem.newLocalRepositoryManager(session, new LocalRepository(localRepositoryPath))); session.setProxySelector(ourProxySelector); + session.setOffline(offline); session.setReadOnly(); mySession = session; } @@ -356,6 +361,11 @@ public class ArtifactRepositoryManager { return new RemoteRepository.Builder(prototype.getId(), prototype.getContentType(), url).setProxy(ourProxySelector.getProxy(url)).build(); } + @NotNull + public static List createDefaultRemoteRepositories() { + return Arrays.asList(createRemoteRepository(MAVEN_CENTRAL_REPOSITORY), createRemoteRepository(JBOSS_COMMUNITY_REPOSITORY)); + } + private CollectRequest createCollectRequest(String groupId, String artifactId, Collection versions, final Set kinds) { final CollectRequest request = new CollectRequest(); for (Artifact artifact : toArtifacts(groupId, artifactId, versions, kinds)) {