diff options
author | Henrik Lindberg | 2009-04-28 15:29:08 +0000 |
---|---|---|
committer | Henrik Lindberg | 2009-04-28 15:29:08 +0000 |
commit | 0466838d72f58188d39507baed0319c88b52b5ff (patch) | |
tree | 5a3079874bb9222e007a0d20e515194f26b6bd82 /bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/provisional | |
parent | 04801421fb6c0fed7e4369fbd0a47482af868fd6 (diff) | |
download | rt.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.java | 3 |
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)); |