You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by oc...@apache.org on 2011/03/16 15:53:41 UTC
svn commit: r1082160 - in /archiva/trunk/archiva-modules:
archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/
archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/
...
Author: oching
Date: Wed Mar 16 14:53:40 2011
New Revision: 1082160
URL: http://svn.apache.org/viewvc?rev=1082160&view=rev
Log:
[MRM-1461]
submitted by Maria Catherine Tan
o continue deleting contents of the repo even if it encountered a file that it couldn't delete then throw an IOException at the end
Modified:
archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedDefaultRepositoryContent.java
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AbstractManagedRepositoriesAction.java
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryActionTest.java
archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java
archiva/trunk/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/main/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImpl.java
archiva/trunk/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java
Modified: archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedDefaultRepositoryContent.java
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedDefaultRepositoryContent.java?rev=1082160&r1=1082159&r2=1082160&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedDefaultRepositoryContent.java (original)
+++ archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/content/ManagedDefaultRepositoryContent.java Wed Mar 16 14:53:40 2011
@@ -74,14 +74,7 @@ public class ManagedDefaultRepositoryCon
File projectDir = projectPath.getParentFile();
if( projectDir.exists() && projectDir.isDirectory() )
{
- try
- {
- FileUtils.deleteDirectory( projectDir );
- }
- catch ( IOException e )
- {
- // TODO: log this somewhere?
- }
+ FileUtils.deleteQuietly( projectDir );
}
else
{
Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AbstractManagedRepositoriesAction.java
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AbstractManagedRepositoriesAction.java?rev=1082160&r1=1082159&r2=1082160&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AbstractManagedRepositoriesAction.java (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AbstractManagedRepositoriesAction.java Wed Mar 16 14:53:40 2011
@@ -96,7 +96,11 @@ public abstract class AbstractManagedRep
protected void removeContents( ManagedRepositoryConfiguration existingRepository )
throws IOException
{
- FileUtils.deleteDirectory( new File( existingRepository.getLocation() ) );
+ File dir = new File( existingRepository.getLocation() );
+ if ( !FileUtils.deleteQuietly( dir ) )
+ {
+ throw new IOException( "Cannot delete repository " + dir );
+ }
}
protected void removeRepository( String repoId, Configuration configuration )
Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryActionTest.java
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryActionTest.java?rev=1082160&r1=1082159&r2=1082160&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryActionTest.java (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryActionTest.java Wed Mar 16 14:53:40 2011
@@ -181,6 +181,8 @@ public class EditManagedRepositoryAction
// no deletion
repositoryStatisticsManagerControl.replay();
+ new File( "target/test/" + REPO_ID + "-stage" ).mkdirs();
+
String status = action.commit();
assertEquals( Action.SUCCESS, status );
@@ -237,6 +239,8 @@ public class EditManagedRepositoryAction
repositoryStatisticsManager.deleteStatistics( metadataRepository, REPO_ID );
repositoryStatisticsManagerControl.replay();
+ new File( "target/test/location/" + REPO_ID + "-stage" ).mkdirs();
+
action.setRepoid( REPO_ID );
action.prepare();
assertEquals( REPO_ID, action.getRepoid() );
Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java?rev=1082160&r1=1082159&r2=1082160&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java Wed Mar 16 14:53:40 2011
@@ -384,7 +384,10 @@ public class ArchivaDavResource
{
if ( resource.isDirectory() )
{
- FileUtils.deleteDirectory( resource );
+ if ( !FileUtils.deleteQuietly( resource ) )
+ {
+ throw new IOException( "Could not remove directory" );
+ }
triggerAuditEvent( member, AuditEvent.REMOVE_DIR );
}
Modified: archiva/trunk/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/main/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImpl.java
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/main/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImpl.java?rev=1082160&r1=1082159&r2=1082160&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/main/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImpl.java (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/main/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImpl.java Wed Mar 16 14:53:40 2011
@@ -440,7 +440,11 @@ public class AdministrationServiceImpl
throw new Exception( "Error saving configuration for delete action" + e.getMessage() );
}
- FileUtils.deleteDirectory( new File( repository.getLocation() ) );
+ File dir = new File( repository.getLocation() );
+ if ( !FileUtils.deleteQuietly( dir ) )
+ {
+ throw new IOException( "Cannot delete repository " + dir );
+ }
List<ProxyConnectorConfiguration> proxyConnectors = config.getProxyConnectors();
for ( ProxyConnectorConfiguration proxyConnector : proxyConnectors )
@@ -499,7 +503,12 @@ public class AdministrationServiceImpl
{
for ( File child : children )
{
- FileUtils.deleteDirectory( child );
+ FileUtils.deleteQuietly( child );
+ }
+
+ if ( repoDir.listFiles().length > 0 )
+ {
+ throw new IOException( "Cannot delete repository contents of " + repoDir );
}
}
Modified: archiva/trunk/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java?rev=1082160&r1=1082159&r2=1082160&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java (original)
+++ archiva/trunk/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java Wed Mar 16 14:53:40 2011
@@ -371,28 +371,19 @@ public class FileMetadataRepository
public void removeMetadataFacets( String repositoryId, String facetId )
{
- try
+ File dir = getMetadataDirectory( repositoryId, facetId );
+ if ( !FileUtils.deleteQuietly( dir ) )
{
- FileUtils.deleteDirectory( getMetadataDirectory( repositoryId, facetId ) );
- }
- catch ( IOException e )
- {
- // TODO!
- e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
+ log.error( "Cannot delete the metadata repository {}", dir );
}
}
public void removeMetadataFacet( String repoId, String facetId, String name )
{
File dir = new File( getMetadataDirectory( repoId, facetId ), name );
- try
+ if ( !FileUtils.deleteQuietly( dir ) )
{
- FileUtils.deleteDirectory( dir );
- }
- catch ( IOException e )
- {
- // TODO
- e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
+ log.error( "Cannot delete the metadata repository {}", dir );
}
}
@@ -629,14 +620,10 @@ public class FileMetadataRepository
public void removeRepository( String repoId )
{
- try
- {
- FileUtils.deleteDirectory( getDirectory( repoId ) );
- }
- catch ( IOException e )
+ File dir = getDirectory( repoId );
+ if ( !FileUtils.deleteQuietly( dir ) )
{
- // TODO
- e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
+ log.error( "Cannot delete repository {}", dir );
}
}