Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHenrik Lindberg2009-04-28 15:29:08 +0000
committerHenrik Lindberg2009-04-28 15:29:08 +0000
commit0466838d72f58188d39507baed0319c88b52b5ff (patch)
tree5a3079874bb9222e007a0d20e515194f26b6bd82 /bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional
parent04801421fb6c0fed7e4369fbd0a47482af868fd6 (diff)
downloadrt.equinox.p2-0466838d72f58188d39507baed0319c88b52b5ff.tar.gz
rt.equinox.p2-0466838d72f58188d39507baed0319c88b52b5ff.tar.xz
rt.equinox.p2-0466838d72f58188d39507baed0319c88b52b5ff.zip
Bug 274011 [ui] Available Software Dialog handles "authentication problem" badly.
Exceptions and status codes now find their way to the UI. The remainder needs to be handled there though.
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional')
-rw-r--r--bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/spi/p2/artifact/repository/SimpleArtifactRepositoryFactory.java3
1 files changed, 3 insertions, 0 deletions
diff --git a/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/spi/p2/artifact/repository/SimpleArtifactRepositoryFactory.java b/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/spi/p2/artifact/repository/SimpleArtifactRepositoryFactory.java
index 058463801..4477ffa45 100644
--- a/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/spi/p2/artifact/repository/SimpleArtifactRepositoryFactory.java
+++ b/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional/spi/p2/artifact/repository/SimpleArtifactRepositoryFactory.java
@@ -64,6 +64,9 @@ public class SimpleArtifactRepositoryFactory extends ArtifactRepositoryFactory {
artifacts = new BufferedOutputStream(new FileOutputStream(localFile));
IStatus status = getTransport().download(SimpleArtifactRepository.getActualLocation(location, compress), artifacts, sub.newChild(100));
if (!status.isOK()) {
+ // not meaningful to continue on an authentication exception (user will likely just be prompted again)
+ if (status.getCode() == ProvisionException.REPOSITORY_FAILED_AUTHENTICATION)
+ throw new ProvisionException(status);
// retry uncompressed
compress = false;
status = getTransport().download(SimpleArtifactRepository.getActualLocation(location, compress), artifacts, sub.newChild(100));

Back to the top