diff --git a/aether-impl/src/main/java/org/eclipse/aether/internal/impl/DefaultUpdateCheckManager.java b/aether-impl/src/main/java/org/eclipse/aether/internal/impl/DefaultUpdateCheckManager.java index 8b702e64239ae989ffc15aa388f7bbe0c668bee6..cbe8d6bbe24c04b9aadd8444f4928a4d5a882c86 100644 --- a/aether-impl/src/main/java/org/eclipse/aether/internal/impl/DefaultUpdateCheckManager.java +++ b/aether-impl/src/main/java/org/eclipse/aether/internal/impl/DefaultUpdateCheckManager.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2010, 2012 Sonatype, Inc. + * Copyright (c) 2010, 2013 Sonatype, Inc. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -198,33 +198,31 @@ public class DefaultUpdateCheckManager else { int errorPolicy = Utils.getPolicy( session, artifact, repository ); - if ( error == null || error.length() <= 0 ) + int cacheFlag = getCacheFlag( error ); + if ( ( errorPolicy & cacheFlag ) != 0 ) { - if ( ( errorPolicy & ResolutionErrorPolicy.CACHE_NOT_FOUND ) != 0 ) - { - check.setRequired( false ); - check.setException( newException( error, artifact, repository ) ); - } - else - { - check.setRequired( true ); - } + check.setRequired( false ); + check.setException( newException( error, artifact, repository ) ); } else { - if ( ( errorPolicy & ResolutionErrorPolicy.CACHE_TRANSFER_ERROR ) != 0 ) - { - check.setRequired( false ); - check.setException( newException( error, artifact, repository ) ); - } - else - { - check.setRequired( true ); - } + check.setRequired( true ); } } } + private static int getCacheFlag( String error ) + { + if ( error == null || error.length() <= 0 ) + { + return ResolutionErrorPolicy.CACHE_NOT_FOUND; + } + else + { + return ResolutionErrorPolicy.CACHE_TRANSFER_ERROR; + } + } + private ArtifactTransferException newException( String error, Artifact artifact, RemoteRepository repository ) { if ( error == null || error.length() <= 0 ) @@ -338,29 +336,15 @@ public class DefaultUpdateCheckManager else { int errorPolicy = Utils.getPolicy( session, metadata, repository ); - if ( error == null || error.length() <= 0 ) + int cacheFlag = getCacheFlag( error ); + if ( ( errorPolicy & cacheFlag ) != 0 ) { - if ( ( errorPolicy & ResolutionErrorPolicy.CACHE_NOT_FOUND ) != 0 ) - { - check.setRequired( false ); - check.setException( newException( error, metadata, repository ) ); - } - else - { - check.setRequired( true ); - } + check.setRequired( false ); + check.setException( newException( error, metadata, repository ) ); } else { - if ( ( errorPolicy & ResolutionErrorPolicy.CACHE_TRANSFER_ERROR ) != 0 ) - { - check.setRequired( false ); - check.setException( newException( error, metadata, repository ) ); - } - else - { - check.setRequired( true ); - } + check.setRequired( true ); } } }