Author: brett
Date: Sun Feb 17 18:25:51 2008
New Revision: 628598
URL: http://svn.apache.org/viewvc?rev=628598&view=rev
Log:
[MNG-3405] clean up the logging and simplify logic of reporting errors in
offline mode
Submitted by: James William Dumay (with adjustments)
Merged from: r628596 on maven-2.0.x/maven-artifact-manager branch
Modified:
maven/artifact/trunk/src/main/java/org/apache/maven/artifact/repository/metadata/DefaultRepositoryMetadataManager.java
Modified:
maven/artifact/trunk/src/main/java/org/apache/maven/artifact/repository/metadata/DefaultRepositoryMetadataManager.java
URL:
http://svn.apache.org/viewvc/maven/artifact/trunk/src/main/java/org/apache/maven/artifact/repository/metadata/DefaultRepositoryMetadataManager.java?rev=628598&r1=628597&r2=628598&view=diff
==============================================================================
---
maven/artifact/trunk/src/main/java/org/apache/maven/artifact/repository/metadata/DefaultRepositoryMetadataManager.java
(original)
+++
maven/artifact/trunk/src/main/java/org/apache/maven/artifact/repository/metadata/DefaultRepositoryMetadataManager.java
Sun Feb 17 18:25:51 2008
@@ -98,14 +98,25 @@
if ( checkForUpdates )
{
- getLogger().info( metadata.getKey() + ": checking for
updates from " + repository.getId() );
-
try
{
- resolveAlways( metadata, repository, file,
policy.getChecksumPolicy(), touchfile, true );
+ if ( wagonManager.isOnline() )
+ {
+ getLogger().info(
+ metadata.getKey() + ": checking for updates
from " + repository.getId() );
+ resolveAlways( metadata, repository, file,
policy.getChecksumPolicy(), touchfile );
+ }
+ else
+ {
+ getLogger().debug( "System is offline. Cannot
resolve metadata:\n" +
+ metadata.extendedToString() + "\n\n" );
+ }
}
catch ( TransferFailedException e )
{
+ getLogger().info( "Repository '" + repository.getId()
+ "' will be blacklisted" );
+ repository.setBlacklisted( true );
+
// TODO: [jc; 08-Nov-2005] revisit this for 2.1
// suppressing logging to avoid logging this error
twice.
}
@@ -302,7 +313,7 @@
{
MetadataTouchfile touchfile = new MetadataTouchfile( metadata,
localRepository );
- resolveAlways( metadata, remoteRepository, file,
ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN, touchfile, false );
+ resolveAlways( metadata, remoteRepository, file,
ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN, touchfile );
}
catch ( TransferFailedException e )
{
@@ -330,26 +341,9 @@
ArtifactRepository repository,
File file,
String checksumPolicy,
- MetadataTouchfile touchfile,
- boolean allowBlacklisting )
- throws RepositoryMetadataResolutionException, TransferFailedException
+ MetadataTouchfile touchfile )
+ throws TransferFailedException
{
- if ( !wagonManager.isOnline() )
- {
- if ( allowBlacklisting )
- {
- getLogger().debug(
- "System is offline. Cannot resolve metadata:\n" +
metadata.extendedToString() + "\n\n" );
- return;
- }
- else
- {
- // metadata is required for deployment, can't be offline
- throw new RepositoryMetadataResolutionException(
- "System is offline. Cannot resolve required metadata:\n" +
metadata.extendedToString() );
- }
- }
-
try
{
wagonManager.getArtifactMetadata( metadata, repository, file,
checksumPolicy );
@@ -369,9 +363,7 @@
{
getLogger().warn(
metadata + " could not be retrieved from repository: " +
repository.getId() + " due to an error: " + e.getMessage() );
- getLogger().info( "Repository '" + repository.getId() + "' will be
blacklisted" );
getLogger().debug( "Exception", e );
- repository.setBlacklisted( allowBlacklisting );
throw e;
}
@@ -402,12 +394,7 @@
{
MetadataTouchfile touchfile = new MetadataTouchfile( metadata,
localRepository );
- resolveAlways( metadata, deploymentRepository, file,
ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN, touchfile, false );
- }
- catch ( RepositoryMetadataResolutionException e )
- {
- throw new RepositoryMetadataDeploymentException(
- "Unable to get previous metadata to update: " +
e.getMessage(), e );
+ resolveAlways( metadata, deploymentRepository, file,
ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN, touchfile );
}
catch ( TransferFailedException e )
{