http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/archiva/webdav/util/IndexWriter.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/archiva/webdav/util/IndexWriter.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/archiva/webdav/util/IndexWriter.java
index 14fd0fe..c0cc31f 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/archiva/webdav/util/IndexWriter.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/archiva/webdav/util/IndexWriter.java
@@ -22,9 +22,14 @@ package org.apache.archiva.webdav.util;
 import org.apache.commons.lang.StringUtils;
 import org.apache.jackrabbit.webdav.DavResource;
 import org.apache.jackrabbit.webdav.io.OutputContext;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
-import java.io.File;
+import java.io.IOException;
 import java.io.PrintWriter;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
 import java.text.DateFormat;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -34,18 +39,22 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Locale;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  */
 public class IndexWriter
 {
+
+    private static final Logger log = LoggerFactory.getLogger( 
IndexWriter.class );
+
     private final String logicalResource;
 
-    private final List<File> localResources;
+    private final List<Path> localResources;
 
     private final boolean isVirtual;
 
-    public IndexWriter( DavResource resource, File localResource, String 
logicalResource )
+    public IndexWriter( DavResource resource, Path localResource, String 
logicalResource )
     {
         this.localResources = new ArrayList<>();
         this.localResources.add( localResource );
@@ -53,7 +62,7 @@ public class IndexWriter
         this.isVirtual = false;
     }
 
-    public IndexWriter( DavResource resource, List<File> localResources, 
String logicalResource )
+    public IndexWriter( DavResource resource, List<Path> localResources, 
String logicalResource )
     {
         this.logicalResource = logicalResource;
         this.localResources = localResources;
@@ -69,7 +78,14 @@ public class IndexWriter
         {
             PrintWriter writer = new PrintWriter( 
outputContext.getOutputStream() );
             writeDocumentStart( writer );
-            writeHyperlinks( writer );
+            try
+            {
+                writeHyperlinks( writer );
+            }
+            catch ( IOException e )
+            {
+                log.error("Could not write hyperlinks {}", e.getMessage(), e);
+            }
             writeDocumentEnd( writer );
             writer.flush();
             writer.close();
@@ -111,8 +127,8 @@ public class IndexWriter
         //Check if not root
         if ( logicalResource != null && logicalResource.length() > 0 )
         {
-            File file = new File( logicalResource );
-            String parentName = file.getParent() == null ? "/" : 
file.getParent();
+            Path file = Paths.get( logicalResource );
+            String parentName = file.getParent() == null ? "/" : 
file.getParent().toString();
 
             //convert to unix path in case archiva is hosted on windows
             parentName = StringUtils.replace( parentName, "\\", "/" );
@@ -133,18 +149,19 @@ public class IndexWriter
         writer.println( "</html>" );
     }
 
-    private void writeHyperlinks( PrintWriter writer )
+    private void writeHyperlinks( PrintWriter writer ) throws IOException
     {
         if ( !isVirtual )
         {
-            for ( File localResource : localResources )
+            for ( Path localResource : localResources )
             {
-                List<File> files = new ArrayList<>( Arrays.asList( 
localResource.listFiles() ) );
+                List<Path> files = Files.list(localResource).collect( 
Collectors.toList( ) );
                 Collections.sort( files );
 
-                for ( File file : files )
+                for ( Path file : files )
                 {
-                    writeHyperlink( writer, file.getName(), 
file.lastModified(), file.length(), file.isDirectory() );
+                    writeHyperlink( writer, file.getFileName().toString(), 
Files.getLastModifiedTime( file ).toMillis(), Files.size(file),
+                        Files.isDirectory( file ) );
                 }
             }
         }
@@ -153,26 +170,26 @@ public class IndexWriter
             // virtual repository - filter unique directories
             Map<String, List<String>> uniqueChildFiles = new HashMap<>();
             List<String> sortedList = new ArrayList<>();
-            for ( File resource : localResources )
+            for ( Path resource : localResources )
             {
-                List<File> files = new ArrayList<>( Arrays.asList( 
resource.listFiles() ) );
-                for ( File file : files )
+                List<Path> files = Files.list(resource).collect( 
Collectors.toList() );
+                for ( Path file : files )
                 {
                     List<String> mergedChildFiles = new ArrayList<>();
-                    if ( uniqueChildFiles.get( file.getName() ) == null )
+                    if ( uniqueChildFiles.get( file.getFileName() ) == null )
                     {
-                        mergedChildFiles.add( file.getAbsolutePath() );
+                        mergedChildFiles.add( file.toAbsolutePath().toString() 
);
                     }
                     else
                     {
-                        mergedChildFiles = uniqueChildFiles.get( 
file.getName() );
-                        if ( !mergedChildFiles.contains( 
file.getAbsolutePath() ) )
+                        mergedChildFiles = uniqueChildFiles.get( 
file.getFileName() );
+                        if ( !mergedChildFiles.contains( 
file.toAbsolutePath().toString() ) )
                         {
-                            mergedChildFiles.add( file.getAbsolutePath() );
+                            mergedChildFiles.add( 
file.toAbsolutePath().toString() );
                         }
                     }
-                    uniqueChildFiles.put( file.getName(), mergedChildFiles );
-                    sortedList.add( file.getName() );
+                    uniqueChildFiles.put( file.getFileName().toString(), 
mergedChildFiles );
+                    sortedList.add( file.getFileName().toString() );
                 }
             }
 
@@ -183,11 +200,12 @@ public class IndexWriter
                 List<String> childFilesFromMap = uniqueChildFiles.get( 
fileName );
                 for ( String childFilePath : childFilesFromMap )
                 {
-                    File childFile = new File( childFilePath );
-                    if ( !written.contains( childFile.getName() ) )
+                    Path childFile = Paths.get( childFilePath );
+                    if ( !written.contains( childFile.getFileName().toString() 
) )
                     {
-                        written.add( childFile.getName() );
-                        writeHyperlink( writer, fileName, 
childFile.lastModified(), childFile.length(), childFile.isDirectory() );
+                        written.add( childFile.getFileName().toString() );
+                        writeHyperlink( writer, fileName, 
Files.getLastModifiedTime( childFile).toMillis(),
+                            Files.size(childFile), Files.isDirectory( 
childFile) );
                     }
                 }
             }

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/AbstractRepositoryServletProxiedTestCase.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/AbstractRepositoryServletProxiedTestCase.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/AbstractRepositoryServletProxiedTestCase.java
index 42146c0..742bb1f 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/AbstractRepositoryServletProxiedTestCase.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/AbstractRepositoryServletProxiedTestCase.java
@@ -39,8 +39,9 @@ import org.junit.After;
 import org.junit.Before;
 
 import javax.servlet.http.HttpServletResponse;
-import java.io.File;
 import java.nio.charset.Charset;
+import java.nio.file.Files;
+import java.nio.file.Path;
 
 import static org.assertj.core.api.Assertions.assertThat;
 import org.junit.Rule;
@@ -61,7 +62,7 @@ public abstract class AbstractRepositoryServletProxiedTestCase
 
         public Server server;
 
-        public File root;
+        public Path root;
 
         public RemoteRepositoryConfiguration config;
     }
@@ -128,15 +129,15 @@ public abstract class 
AbstractRepositoryServletProxiedTestCase
             "temp" ).toFile();*/// new File( System.getProperty( "basedir" ) + 
"target/remote-repos/" + id + "/" );
 
         // Remove exising root contents.
-        if ( repo.root.exists() )
+        if ( Files.exists(repo.root) )
         {
-            FileUtils.deleteDirectory( repo.root );
+            org.apache.archiva.common.utils.FileUtils.deleteDirectory( 
repo.root );
         }
 
         // Establish root directory.
-        if ( !repo.root.exists() )
+        if ( !Files.exists(repo.root) )
         {
-            repo.root.mkdirs();
+            Files.createDirectories( repo.root );
         }
 
         repo.server = new Server( );
@@ -147,7 +148,7 @@ public abstract class 
AbstractRepositoryServletProxiedTestCase
 
         ServletContextHandler context = new ServletContextHandler();
         context.setContextPath( repo.context );
-        context.setResourceBase( repo.root.getAbsolutePath() );
+        context.setResourceBase( repo.root.toAbsolutePath().toString() );
         context.setAttribute( "dirAllowed", true );
         context.setAttribute( "maxCacheSize", 0 );
 
@@ -215,16 +216,16 @@ public abstract class 
AbstractRepositoryServletProxiedTestCase
         }
     }
 
-    protected File populateRepo( RemoteRepoInfo remoteRepo, String path, 
String contents )
+    protected Path populateRepo( RemoteRepoInfo remoteRepo, String path, 
String contents )
         throws Exception
     {
-        File destFile = new File( remoteRepo.root, path );
-        if ( destFile.exists() )
+        Path destFile = remoteRepo.root.resolve( path );
+        if ( Files.exists(destFile) )
         {
-            destFile.delete();
+            Files.delete(destFile);
         }
-        destFile.getParentFile().mkdirs();
-        FileUtils.writeStringToFile( destFile, contents, 
Charset.defaultCharset() );
+        Files.createDirectories( destFile.getParent());
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( destFile, 
Charset.defaultCharset(), contents);
         return destFile;
     }
 

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/AbstractRepositoryServletTestCase.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/AbstractRepositoryServletTestCase.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/AbstractRepositoryServletTestCase.java
index 6c87d82..5353ea0 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/AbstractRepositoryServletTestCase.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/AbstractRepositoryServletTestCase.java
@@ -66,13 +66,15 @@ import javax.servlet.Servlet;
 import javax.servlet.ServletContext;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.UnsupportedEncodingException;
 import java.lang.annotation.Annotation;
 import java.net.URL;
 import java.nio.charset.Charset;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
 import java.util.Locale;
 import java.util.Map;
 import org.apache.commons.lang.StringUtils;
@@ -88,9 +90,9 @@ public abstract class AbstractRepositoryServletTestCase
 {
     protected static final String REPOID_INTERNAL = "internal";
 
-    protected File repoRootInternal;
+    protected Path repoRootInternal;
 
-    protected File repoRootLegacy;
+    protected Path repoRootLegacy;
 
     @Inject
     protected ArchivaConfiguration archivaConfiguration;
@@ -118,19 +120,19 @@ public abstract class AbstractRepositoryServletTestCase
 
         super.setUp();
 
-        String appserverBase = new File( "target/appserver-base" 
).getAbsolutePath();
+        String appserverBase = Paths.get( "target/appserver-base" 
).toAbsolutePath().toString();
         System.setProperty( "appserver.base", appserverBase );
 
-        File testConf = new File( "src/test/resources/repository-archiva.xml" 
);
-        File testConfDest = new File( appserverBase, "conf/archiva.xml" );
-        if ( testConfDest.exists() )
+        Path testConf = Paths.get( "src/test/resources/repository-archiva.xml" 
);
+        Path testConfDest = Paths.get(appserverBase, "conf/archiva.xml" );
+        if ( Files.exists(testConfDest) )
         {
-            FileUtils.deleteQuietly( testConfDest );
+            org.apache.archiva.common.utils.FileUtils.deleteQuietly( 
testConfDest );
         }
-        FileUtils.copyFile( testConf, testConfDest );
+        FileUtils.copyFile( testConf.toFile(), testConfDest.toFile() );
 
-        repoRootInternal = new File( appserverBase, 
"data/repositories/internal" );
-        repoRootLegacy = new File( appserverBase, "data/repositories/legacy" );
+        repoRootInternal = Paths.get( appserverBase, 
"data/repositories/internal" );
+        repoRootLegacy = Paths.get( appserverBase, "data/repositories/legacy" 
);
         Configuration config = archivaConfiguration.getConfiguration();
 
         config.getManagedRepositories().clear();
@@ -674,29 +676,30 @@ public abstract class AbstractRepositoryServletTestCase
         throws Exception
     {
 
-        if ( repoRootInternal.exists() )
+        if ( Files.exists(repoRootInternal) )
         {
-            FileUtils.deleteDirectory( repoRootInternal );
+            org.apache.archiva.common.utils.FileUtils.deleteDirectory( 
repoRootInternal );
         }
 
-        if ( repoRootLegacy.exists() )
+        if ( Files.exists(repoRootLegacy) )
         {
-            FileUtils.deleteDirectory( repoRootLegacy );
+            org.apache.archiva.common.utils.FileUtils.deleteDirectory( 
repoRootLegacy );
         }
 
     }
 
 
-    protected void assertFileContents( String expectedContents, File repoRoot, 
String path )
+    protected void assertFileContents( String expectedContents, Path repoRoot, 
String subpath )
         throws IOException
     {
-        File actualFile = new File( repoRoot, path );
-        assertTrue( "File <" + actualFile.getAbsolutePath() + "> should 
exist.", actualFile.exists() );
-        assertTrue( "File <" + actualFile.getAbsolutePath() + "> should be a 
file (not a dir/link/device/etc).",
-                    actualFile.isFile() );
+        String path = Paths.get(subpath).isAbsolute() ? subpath.substring( 
1,subpath.length() ) : subpath;
+        Path actualFile = repoRoot.resolve( path );
+        assertTrue( "File <" + actualFile.toAbsolutePath() + "> should 
exist.", Files.exists(actualFile) );
+        assertTrue( "File <" + actualFile.toAbsolutePath() + "> should be a 
file (not a dir/link/device/etc).",
+                    Files.isRegularFile( actualFile ) );
 
-        String actualContents = FileUtils.readFileToString( actualFile, 
Charset.defaultCharset() );
-        assertEquals( "File Contents of <" + actualFile.getAbsolutePath() + 
">", expectedContents, actualContents );
+        String actualContents = 
org.apache.archiva.common.utils.FileUtils.readFileToString( actualFile, 
Charset.defaultCharset() );
+        assertEquals( "File Contents of <" + actualFile.toAbsolutePath() + 
">", expectedContents, actualContents );
     }
 
     protected void assertRepositoryValid( RepositoryServlet servlet, String 
repoId )
@@ -704,9 +707,9 @@ public abstract class AbstractRepositoryServletTestCase
     {
         ManagedRepository repository = servlet.getRepository( repoId );
         assertNotNull( "Archiva Managed Repository id:<" + repoId + "> should 
exist.", repository );
-        File repoRoot = new File( repository.getLocation() );
+        Path repoRoot = Paths.get( repository.getLocation() );
         assertTrue( "Archiva Managed Repository id:<" + repoId + "> should 
have a valid location on disk.",
-                    repoRoot.exists() && repoRoot.isDirectory() );
+                    Files.exists(repoRoot) && Files.isDirectory(repoRoot) );
     }
 
     protected void assertResponseOK( WebResponse response )
@@ -745,19 +748,19 @@ public abstract class AbstractRepositoryServletTestCase
                              response.getStatusCode() );
     }
 
-    protected ManagedRepositoryConfiguration createManagedRepository( String 
id, String name, File location,
+    protected ManagedRepositoryConfiguration createManagedRepository( String 
id, String name, Path location,
                                                                       boolean 
blockRedeployments )
     {
         ManagedRepositoryConfiguration repo = new 
ManagedRepositoryConfiguration();
         repo.setId( id );
         repo.setName( name );
-        repo.setLocation( location.getAbsolutePath() );
+        repo.setLocation( location.toAbsolutePath().toString() );
         repo.setBlockRedeployments( blockRedeployments );
 
         return repo;
     }
 
-    protected ManagedRepositoryConfiguration createManagedRepository( String 
id, String name, File location,
+    protected ManagedRepositoryConfiguration createManagedRepository( String 
id, String name, Path location,
                                                                       String 
layout, boolean blockRedeployments )
     {
         ManagedRepositoryConfiguration repo = createManagedRepository( id, 
name, location, blockRedeployments );
@@ -781,21 +784,21 @@ public abstract class AbstractRepositoryServletTestCase
     }
 
 
-    protected void setupCleanRepo( File repoRootDir )
+    protected void setupCleanRepo( Path repoRootDir )
         throws IOException
     {
-        FileUtils.deleteDirectory( repoRootDir );
-        if ( !repoRootDir.exists() )
+        org.apache.archiva.common.utils.FileUtils.deleteDirectory( repoRootDir 
);
+        if ( !Files.exists(repoRootDir) )
         {
-            repoRootDir.mkdirs();
+            Files.createDirectories( repoRootDir );
         }
     }
 
-    protected void assertManagedFileNotExists( File repoRootInternal, String 
resourcePath )
+    protected void assertManagedFileNotExists( Path repoRootInternal, String 
resourcePath )
     {
-        File repoFile = new File( repoRootInternal, resourcePath );
-        assertFalse( "Managed Repository File <" + repoFile.getAbsolutePath() 
+ "> should not exist.",
-                     repoFile.exists() );
+        Path repoFile =  repoRootInternal.resolve( resourcePath );
+        assertFalse( "Managed Repository File <" + repoFile.toAbsolutePath() + 
"> should not exist.",
+                     Files.exists(repoFile) );
     }
 
     protected void setupCleanInternalRepo()
@@ -804,12 +807,12 @@ public abstract class AbstractRepositoryServletTestCase
         setupCleanRepo( repoRootInternal );
     }
 
-    protected File populateRepo( File repoRootManaged, String path, String 
contents )
+    protected Path populateRepo( Path repoRootManaged, String path, String 
contents )
         throws Exception
     {
-        File destFile = new File( repoRootManaged, path );
-        destFile.getParentFile().mkdirs();
-        FileUtils.writeStringToFile( destFile, contents, 
Charset.defaultCharset() );
+        Path destFile = repoRootManaged.resolve( path );
+        Files.createDirectories( destFile.getParent() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( destFile, 
Charset.defaultCharset(), contents );
         return destFile;
     }
 }

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/ArchivaDavResourceFactoryTest.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/ArchivaDavResourceFactoryTest.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/ArchivaDavResourceFactoryTest.java
index 331cd58..dbfbc1d 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/ArchivaDavResourceFactoryTest.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/ArchivaDavResourceFactoryTest.java
@@ -44,7 +44,6 @@ import org.apache.jackrabbit.webdav.DavException;
 import org.apache.jackrabbit.webdav.DavResourceLocator;
 import org.apache.jackrabbit.webdav.DavServletRequest;
 import org.apache.jackrabbit.webdav.DavServletResponse;
-
 import org.easymock.IMocksControl;
 import org.junit.After;
 import org.junit.Before;
@@ -54,8 +53,9 @@ import org.springframework.context.ApplicationContext;
 import org.springframework.test.context.ContextConfiguration;
 
 import javax.inject.Inject;
-import java.io.File;
 import java.io.IOException;
+import java.nio.file.Path;
+import java.nio.file.Paths;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -150,13 +150,13 @@ public class ArchivaDavResourceFactoryTest
         if ( defaultManagedRepositoryAdmin.getManagedRepository( RELEASES_REPO 
) == null )
         {
             defaultManagedRepositoryAdmin.addManagedRepository(
-                createManagedRepository( RELEASES_REPO, new File( 
"target/test-classes/" + RELEASES_REPO ).getPath(),
+                createManagedRepository( RELEASES_REPO, Paths.get( 
"target/test-classes/" + RELEASES_REPO ).toString(),
                                          "default" ), false, null );
         }
         if ( defaultManagedRepositoryAdmin.getManagedRepository( INTERNAL_REPO 
) == null )
         {
             defaultManagedRepositoryAdmin.addManagedRepository(
-                createManagedRepository( INTERNAL_REPO, new File( 
"target/test-classes/" + INTERNAL_REPO ).getPath(),
+                createManagedRepository( INTERNAL_REPO, Paths.get( 
"target/test-classes/" + INTERNAL_REPO ).toString(),
                                          "default" ), false, null );
         }
         RepositoryGroup repoGroupConfig = new RepositoryGroup();
@@ -255,8 +255,8 @@ public class ArchivaDavResourceFactoryTest
 
             expect( repoRequest.toNativePath( 
"org/apache/archiva/archiva/1.2-SNAPSHOT/archiva-1.2-SNAPSHOT.jar",
                                               internalRepo ) ).andReturn(
-                new File( config.findManagedRepositoryById( INTERNAL_REPO 
).getLocation(),
-                          
"target/test-classes/internal/org/apache/archiva/archiva/1.2-SNAPSHOT/archiva-1.2-SNAPSHOT.jar"
 ).getPath() );
+                Paths.get( config.findManagedRepositoryById( INTERNAL_REPO 
).getLocation(),
+                          
"target/test-classes/internal/org/apache/archiva/archiva/1.2-SNAPSHOT/archiva-1.2-SNAPSHOT.jar"
 ).toString());
 
             expect( repoFactory.getManagedRepositoryContent( INTERNAL_REPO ) 
).andReturn( internalRepo );
 
@@ -335,8 +335,8 @@ public class ArchivaDavResourceFactoryTest
 
             expect( repoRequest.toNativePath( 
"org/apache/archiva/archiva/1.2-SNAPSHOT/archiva-1.2-SNAPSHOT.jar",
                                               internalRepo ) ).andReturn(
-                new File( config.findManagedRepositoryById( INTERNAL_REPO 
).getLocation(),
-                          
"target/test-classes/internal/org/apache/archiva/archiva/1.2-SNAPSHOT/archiva-1.2-SNAPSHOT.jar"
 ).getPath() );
+                Paths.get( config.findManagedRepositoryById( INTERNAL_REPO 
).getLocation(),
+                          
"target/test-classes/internal/org/apache/archiva/archiva/1.2-SNAPSHOT/archiva-1.2-SNAPSHOT.jar"
 ).toString());
 
 
             expect( repoRequest.isArchetypeCatalog(
@@ -370,7 +370,7 @@ public class ArchivaDavResourceFactoryTest
                                                                     new 
ArchivaDavLocatorFactory() );
 
         defaultManagedRepositoryAdmin.addManagedRepository(
-            createManagedRepository( LOCAL_MIRROR_REPO, new File( 
"target/test-classes/local-mirror" ).getPath(),
+            createManagedRepository( LOCAL_MIRROR_REPO, Paths.get( 
"target/test-classes/local-mirror" ).toString(),
                                      "default" ), false, null );
 
         List<RepositoryGroupConfiguration> repoGroups = new ArrayList<>();
@@ -417,13 +417,13 @@ public class ArchivaDavResourceFactoryTest
 
             expect( repoRequest.toNativePath( 
"org/apache/archiva/archiva/1.2-SNAPSHOT/archiva-1.2-SNAPSHOT.jar",
                                               internalRepo ) ).andReturn(
-                new File( config.findManagedRepositoryById( INTERNAL_REPO 
).getLocation(),
-                          
"target/test-classes/internal/org/apache/archiva/archiva/1.2-SNAPSHOT/archiva-1.2-SNAPSHOT.jar"
 ).getPath() );
+                Paths.get( config.findManagedRepositoryById( INTERNAL_REPO 
).getLocation(),
+                          
"target/test-classes/internal/org/apache/archiva/archiva/1.2-SNAPSHOT/archiva-1.2-SNAPSHOT.jar"
 ).toString() );
 
             expect( repoRequest.toNativePath( 
"org/apache/archiva/archiva/1.2-SNAPSHOT/archiva-1.2-SNAPSHOT.jar",
                                               localMirrorRepo ) )
-                .andReturn( new File( config.findManagedRepositoryById( 
LOCAL_MIRROR_REPO ).getLocation(),
-                                      
"target/test-classes/internal/org/apache/archiva/archiva/1.2-SNAPSHOT/archiva-1.2-SNAPSHOT.jar"
 ).getPath() );
+                .andReturn( Paths.get( config.findManagedRepositoryById( 
LOCAL_MIRROR_REPO ).getLocation(),
+                                      
"target/test-classes/internal/org/apache/archiva/archiva/1.2-SNAPSHOT/archiva-1.2-SNAPSHOT.jar"
 ).toString());
 
             expect( repoRequest.isArchetypeCatalog( 
"org/apache/archiva/archiva/1.2-SNAPSHOT/archiva-1.2-SNAPSHOT.jar" ) 
).andReturn( false ).times( 2 );
             archivaConfigurationControl.replay();
@@ -562,7 +562,7 @@ public class ArchivaDavResourceFactoryTest
         throws Exception
     {
         defaultManagedRepositoryAdmin.addManagedRepository(
-            createManagedRepository( LEGACY_REPO, new File( 
"target/test-classes/" + LEGACY_REPO ).getPath(),
+            createManagedRepository( LEGACY_REPO, Paths.get( 
"target/test-classes/" + LEGACY_REPO ).toString(),
                                      "legacy" ), false, null );
         DavResourceLocator locator =
             new ArchivaDavResourceLocator( "", "/repository/" + LEGACY_REPO + 
"/eclipse/maven-metadata.xml",
@@ -647,17 +647,17 @@ public class ArchivaDavResourceFactoryTest
         @Override
         public ProxyFetchResult fetchMetadataFromProxies( 
ManagedRepositoryContent repository, String logicalPath )
         {
-            File target = new File( repository.getRepoRoot(), logicalPath );
+            Path target = Paths.get(repository.getRepoRoot(), logicalPath );
             try
             {
-                FileUtils.copyFile( new File( 
"target/test-classes/maven-metadata.xml" ), target );
+                FileUtils.copyFile( Paths.get( 
"target/test-classes/maven-metadata.xml" ).toFile(), target.toFile() );
             }
             catch ( IOException e )
             {
 
             }
 
-            return new ProxyFetchResult( target.toPath(), true );
+            return new ProxyFetchResult( target, true );
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/ArchivaTemporaryFolderRule.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/ArchivaTemporaryFolderRule.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/ArchivaTemporaryFolderRule.java
index 8ca9fd5..1229c39 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/ArchivaTemporaryFolderRule.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/ArchivaTemporaryFolderRule.java
@@ -15,37 +15,36 @@
  */
 package org.apache.archiva.webdav;
 
-import java.io.File;
-import java.io.IOException;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import org.apache.commons.io.FileUtils;
 import org.junit.rules.TestRule;
 import org.junit.runner.Description;
 import org.junit.runners.model.Statement;
 
+import java.io.IOException;
+import java.nio.file.FileSystems;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+
 /**
  * Rule to help creating folder for repository based on testmethod name
  * @author Eric
  */
 public class ArchivaTemporaryFolderRule implements TestRule {
-    private File d;
+    private Path d;
     private Description desc = Description.EMPTY;
 
     public void before() throws IOException {
         // hard coded maven target file
-        File f1 = new File("target" + File.separator + "archivarepo" + 
File.separator + ArchivaTemporaryFolderRule.resumepackage(desc.getClassName()) 
+ File.separator + desc.getMethodName());
-        f1.mkdirs();
-        Path p = Files.createDirectories(f1.toPath());
-        d = p.toFile();
+        Path f1 = Paths.get("target", "archivarepo", 
ArchivaTemporaryFolderRule.resumepackage(desc.getClassName()), 
desc.getMethodName());
+        d = Files.createDirectories( f1 );
     }
 
-    public File getRoot() {
+    public Path getRoot() {
         return d;
     }
 
     public void after() throws IOException {
-        FileUtils.deleteDirectory(getRoot());
+        org.apache.archiva.common.utils.FileUtils.deleteDirectory(getRoot());
     }
 
     @Override
@@ -77,7 +76,7 @@ public class ArchivaTemporaryFolderRule implements TestRule {
         String[] p = packagename.split("\\.");
         for (int i = 0; i < p.length - 2; i++) 
         {
-            sb.append(p[i].charAt(0)).append(File.separator);
+            sb.append(p[i].charAt(0)).append( FileSystems.getDefault( 
).getSeparator());
         }
         sb.append(p[p.length - 1]);
         return sb.toString();

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/DavResourceTest.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/DavResourceTest.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/DavResourceTest.java
index 0d99709..ef2ba32 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/DavResourceTest.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/DavResourceTest.java
@@ -21,9 +21,10 @@ package org.apache.archiva.webdav;
 
 import junit.framework.TestCase;
 import org.apache.archiva.admin.model.beans.ManagedRepository;
-import org.apache.archiva.repository.events.AuditListener;
 import org.apache.archiva.common.filelock.FileLockManager;
-import org.apache.commons.io.FileUtils;
+import org.apache.archiva.repository.events.AuditListener;
+import org.apache.archiva.test.utils.ArchivaSpringJUnit4ClassRunner;
+import org.apache.archiva.webdav.util.MimeTypes;
 import org.apache.jackrabbit.webdav.DavException;
 import org.apache.jackrabbit.webdav.DavResource;
 import org.apache.jackrabbit.webdav.DavResourceFactory;
@@ -37,7 +38,6 @@ import org.apache.jackrabbit.webdav.lock.LockManager;
 import org.apache.jackrabbit.webdav.lock.Scope;
 import org.apache.jackrabbit.webdav.lock.SimpleLockManager;
 import org.apache.jackrabbit.webdav.lock.Type;
-import org.apache.archiva.webdav.util.MimeTypes;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -45,9 +45,10 @@ import org.junit.runner.RunWith;
 import org.springframework.test.context.ContextConfiguration;
 
 import javax.inject.Inject;
-import java.io.File;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
 import java.util.Collections;
-import org.apache.archiva.test.utils.ArchivaSpringJUnit4ClassRunner;
 
 @RunWith( ArchivaSpringJUnit4ClassRunner.class )
 @ContextConfiguration( locations = { 
"classpath*:/META-INF/spring-context.xml", "classpath*:/spring-context.xml" } )
@@ -66,11 +67,11 @@ public class DavResourceTest
 
     private DavResourceFactory resourceFactory;
 
-    private File baseDir;
+    private Path baseDir;
 
     private final String REPOPATH = "myresource.jar";
 
-    private File myResource;
+    private Path myResource;
 
     private DavResource resource;
 
@@ -85,10 +86,10 @@ public class DavResourceTest
     {
         super.setUp();
         session = new ArchivaDavSession();
-        baseDir = new File( "target/DavResourceTest" );
-        baseDir.mkdirs();
-        myResource = new File( baseDir, "myresource.jar" );
-        assertTrue( "Could not create " + myResource.getAbsolutePath(), 
myResource.createNewFile() );
+        baseDir = Paths.get( "target/DavResourceTest" );
+        Files.createDirectories( baseDir );
+        myResource = baseDir.resolve( "myresource.jar" );
+        Files.createFile(myResource);
         resourceFactory = new RootContextDavResourceFactory();
         
         resourceLocator =
@@ -104,12 +105,12 @@ public class DavResourceTest
         throws Exception
     {
         super.tearDown();
-        FileUtils.deleteDirectory( baseDir );
+        org.apache.archiva.common.utils.FileUtils.deleteDirectory( baseDir );
     }
 
-    private DavResource getDavResource( String logicalPath, File file )
+    private DavResource getDavResource( String logicalPath, Path file )
     {
-        return new ArchivaDavResource( file.getAbsolutePath(), logicalPath, 
repository, session, resourceLocator,
+        return new ArchivaDavResource( file.toAbsolutePath().toString(), 
logicalPath, repository, session, resourceLocator,
                                        resourceFactory, mimeTypes, 
Collections.<AuditListener> emptyList(), null, fileLockManager );
     }
 
@@ -117,7 +118,7 @@ public class DavResourceTest
     public void testDeleteNonExistantResourceShould404()
         throws Exception
     {
-        File dir = new File( baseDir, "testdir" );
+        Path dir = baseDir.resolve( "testdir" );
         try
         {
             DavResource directoryResource = getDavResource( "/testdir", dir );
@@ -134,17 +135,17 @@ public class DavResourceTest
     public void testDeleteCollection()
         throws Exception
     {
-        File dir = new File( baseDir, "testdir" );
+        Path dir = baseDir.resolve( "testdir" );
         try
         {
-            assertTrue( dir.mkdir() );
+            assertNotNull( Files.createDirectories(dir) );
             DavResource directoryResource = getDavResource( "/testdir", dir );
             directoryResource.getCollection().removeMember( directoryResource 
);
-            assertFalse( dir.exists() );
+            assertFalse( Files.exists(dir) );
         }
         finally
         {
-            FileUtils.deleteDirectory( dir );
+            org.apache.archiva.common.utils.FileUtils.deleteDirectory( dir );
         }
     }
 
@@ -152,9 +153,9 @@ public class DavResourceTest
     public void testDeleteResource()
         throws Exception
     {
-        assertTrue( myResource.exists() );
+        assertTrue( Files.exists(myResource) );
         resource.getCollection().removeMember( resource );
-        assertFalse( myResource.exists() );
+        assertFalse( Files.exists(myResource) );
     }
 
     @Test
@@ -329,7 +330,7 @@ public class DavResourceTest
         public DavResource createResource( DavResourceLocator locator, 
DavSession session )
             throws DavException
         {
-            return new ArchivaDavResource( baseDir.getAbsolutePath(), "/", 
repository, session, resourceLocator,
+            return new ArchivaDavResource( 
baseDir.toAbsolutePath().toString(), "/", repository, session, resourceLocator,
                                            resourceFactory, mimeTypes, 
Collections.<AuditListener> emptyList(),
                                            null, fileLockManager );
         }

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletBrowseTest.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletBrowseTest.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletBrowseTest.java
index 6caa0e8..00ef3e3 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletBrowseTest.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletBrowseTest.java
@@ -31,7 +31,7 @@ import org.junit.Before;
 import org.junit.Test;
 
 import javax.servlet.http.HttpServletResponse;
-import java.io.File;
+import java.nio.file.Files;
 import java.util.Arrays;
 import java.util.List;
 
@@ -48,10 +48,10 @@ public class RepositoryServletBrowseTest
     {
         super.setUp();
 
-        new File( repoRootInternal, "org/apache/archiva" ).mkdirs();
-        new File( repoRootInternal, "org/codehaus/mojo/" ).mkdirs();
-        new File( repoRootInternal, "net/sourceforge" ).mkdirs();
-        new File( repoRootInternal, "commons-lang" ).mkdirs();
+        Files.createDirectories( repoRootInternal.resolve( 
"org/apache/archiva" ));
+        Files.createDirectories( repoRootInternal.resolve( 
"org/codehaus/mojo/" ));
+        Files.createDirectories( repoRootInternal.resolve("net/sourceforge" ));
+        Files.createDirectories( repoRootInternal.resolve("commons-lang" ));
 
         startRepository();
     }
@@ -94,8 +94,8 @@ public class RepositoryServletBrowseTest
     public void testGetDirectoryWhichHasMatchingFile() //MRM-893
         throws Exception
     {
-        new File( repoRootInternal, "org/apache/archiva/artifactId/1.0" 
).mkdirs();
-        new File( repoRootInternal, 
"org/apache/archiva/artifactId/1.0/artifactId-1.0.jar" ).createNewFile();
+        Files.createDirectories( 
repoRootInternal.resolve("org/apache/archiva/artifactId/1.0" ));
+        Files.createFile( 
repoRootInternal.resolve("org/apache/archiva/artifactId/1.0/artifactId-1.0.jar" 
));
 
         WebRequest request =
             new GetMethodWebRequest( 
"http://machine.com/repository/internal/org/apache/archiva/artifactId"; );

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletDeployTest.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletDeployTest.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletDeployTest.java
index 400090d..921629a 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletDeployTest.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletDeployTest.java
@@ -19,8 +19,10 @@ package org.apache.archiva.webdav;
  * under the License.
  */
 
-import java.io.File;
 import java.io.InputStream;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
 
 import javax.servlet.http.HttpServletResponse;
 
@@ -237,8 +239,8 @@ public class RepositoryServletDeployTest
         
         assertEquals(HttpServletResponse.SC_CONFLICT, 
response.getStatusCode());
         
-        File mkColLocalPath = new File(repoRootInternal, "path/to/");
-        assertFalse(mkColLocalPath.exists());
+        Path mkColLocalPath = repoRootInternal.resolve( "path/to/");
+        assertFalse( Files.exists(mkColLocalPath));
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletNoProxyMetadataTest.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletNoProxyMetadataTest.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletNoProxyMetadataTest.java
index 87d1dfc..bb91dd2 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletNoProxyMetadataTest.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletNoProxyMetadataTest.java
@@ -21,12 +21,12 @@ package org.apache.archiva.webdav;
 
 import com.gargoylesoftware.htmlunit.WebRequest;
 import com.gargoylesoftware.htmlunit.WebResponse;
-import org.apache.commons.io.FileUtils;
 import org.junit.Before;
 import org.junit.Test;
 
-import java.io.File;
 import java.nio.charset.Charset;
+import java.nio.file.Files;
+import java.nio.file.Path;
 
 /**
  * RepositoryServletTest
@@ -50,10 +50,10 @@ public class RepositoryServletNoProxyMetadataTest
         String commonsLangMetadata = 
"commons-lang/commons-lang/2.1/maven-metadata.xml";
         String expectedMetadataContents = 
"metadata-for-commons-lang-version-2.1";
 
-        File checksumFile = new File( repoRootInternal, commonsLangMetadata );
-        checksumFile.getParentFile().mkdirs();
+        Path checksumFile = repoRootInternal.resolve(commonsLangMetadata);
+        Files.createDirectories(checksumFile.getParent());
 
-        FileUtils.writeStringToFile( checksumFile, expectedMetadataContents, 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
checksumFile, Charset.defaultCharset(), expectedMetadataContents );
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/internal/"; + commonsLangMetadata );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -69,10 +69,10 @@ public class RepositoryServletNoProxyMetadataTest
         String commonsLangMetadata = 
"commons-lang/commons-lang/maven-metadata.xml";
         String expectedMetadataContents = 
"metadata-for-commons-lang-version-for-project";
 
-        File checksumFile = new File( repoRootInternal, commonsLangMetadata );
-        checksumFile.getParentFile().mkdirs();
+        Path checksumFile = repoRootInternal.resolve(commonsLangMetadata);
+        Files.createDirectories(checksumFile.getParent());
 
-        FileUtils.writeStringToFile( checksumFile, expectedMetadataContents, 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
checksumFile, Charset.defaultCharset(), expectedMetadataContents );
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/internal/"; + commonsLangMetadata );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -88,10 +88,10 @@ public class RepositoryServletNoProxyMetadataTest
         String commonsLangMetadata = "commons-lang/maven-metadata.xml";
         String expectedMetadataContents = "metadata-for-commons-lang-group";
 
-        File checksumFile = new File( repoRootInternal, commonsLangMetadata );
-        checksumFile.getParentFile().mkdirs();
+        Path checksumFile = repoRootInternal.resolve(commonsLangMetadata);
+        Files.createDirectories(checksumFile.getParent());
 
-        FileUtils.writeStringToFile( checksumFile, expectedMetadataContents, 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
checksumFile, Charset.defaultCharset() , expectedMetadataContents);
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/internal/"; + commonsLangMetadata );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -108,10 +108,10 @@ public class RepositoryServletNoProxyMetadataTest
             
"org/apache/maven/plugins/maven-assembly-plugin/2.2-beta-2-SNAPSHOT/maven-metadata.xml";
         String expectedMetadataContents = 
"metadata-for-assembly-plugin-version-2.2-beta-2-SNAPSHOT";
 
-        File checksumFile = new File( repoRootInternal, assemblyPluginMetadata 
);
-        checksumFile.getParentFile().mkdirs();
+        Path checksumFile = repoRootInternal.resolve(assemblyPluginMetadata);
+        Files.createDirectories(checksumFile.getParent());
 
-        FileUtils.writeStringToFile( checksumFile, expectedMetadataContents, 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
checksumFile, Charset.defaultCharset(), expectedMetadataContents );
 
         WebRequest request =
             new GetMethodWebRequest( "http://machine.com/repository/internal/"; 
+ assemblyPluginMetadata );

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletNoProxyTest.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletNoProxyTest.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletNoProxyTest.java
index cb86267..89a16d4 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletNoProxyTest.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletNoProxyTest.java
@@ -23,16 +23,16 @@ package org.apache.archiva.webdav;
 import com.gargoylesoftware.htmlunit.WebRequest;
 import com.gargoylesoftware.htmlunit.WebResponse;
 import org.apache.archiva.configuration.ProxyConnectorConfiguration;
-import org.apache.commons.io.FileUtils;
 import org.junit.Before;
 import org.junit.Test;
+import org.springframework.mock.web.MockHttpServletRequest;
+import org.springframework.mock.web.MockHttpServletResponse;
 
-import java.io.File;
+import javax.servlet.http.HttpServletResponse;
 import java.nio.charset.Charset;
+import java.nio.file.Files;
+import java.nio.file.Path;
 import java.util.ArrayList;
-import javax.servlet.http.HttpServletResponse;
-import org.springframework.mock.web.MockHttpServletRequest;
-import org.springframework.mock.web.MockHttpServletResponse;
 
 /**
  * RepositoryServletTest
@@ -57,10 +57,10 @@ public class RepositoryServletNoProxyTest
     {
         String commonsLangSha1 = 
"commons-lang/commons-lang/2.1/commons-lang-2.1.jar.sha1";
 
-        File checksumFile = new File( repoRootInternal, commonsLangSha1 );
-        checksumFile.getParentFile().mkdirs();
+        Path checksumFile = repoRootInternal.resolve( commonsLangSha1 );
+        Files.createDirectories(checksumFile.getParent());
 
-        FileUtils.writeStringToFile( checksumFile, "dummy-checksum", 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
checksumFile, Charset.defaultCharset(), "dummy-checksum" );
 
         //WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/internal/"; + commonsLangSha1 );
         WebResponse response = getWebResponse( "/repository/internal/" + 
commonsLangSha1 );
@@ -73,10 +73,10 @@ public class RepositoryServletNoProxyTest
     {
         String commonsLangSha1 = 
"commons-lang/commons-lang/2.1/commons-lang-2.1.jar.sha1";
 
-        File checksumFile = new File( repoRootInternal, commonsLangSha1 );
-        checksumFile.getParentFile().mkdirs();
+        Path checksumFile = repoRootInternal.resolve(commonsLangSha1);
+        Files.createDirectories(checksumFile.getParent());
 
-        FileUtils.writeStringToFile( checksumFile, "dummy-checksum", 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
checksumFile, Charset.defaultCharset(), "dummy-checksum");
 
         //WebRequest request = new WebRequest( 
"http://machine.com/repository/internal/"; + commonsLangSha1 );
         WebResponse response = getWebResponse( "/repository/internal/" + 
commonsLangSha1 );
@@ -91,10 +91,10 @@ public class RepositoryServletNoProxyTest
     {
         String commonsLangSha1 = 
"commons-lang/commons-lang/2.1/commons-lang-2.1.jar.sha1";
 
-        File checksumFile = new File( repoRootInternal, commonsLangSha1 );
-        checksumFile.getParentFile().mkdirs();
+        Path checksumFile = repoRootInternal.resolve(commonsLangSha1);
+        Files.createDirectories(checksumFile.getParent());
 
-        FileUtils.writeStringToFile( checksumFile, "dummy-checksum", 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
checksumFile, Charset.defaultCharset() , "dummy-checksum");
 
         //WebRequest request = new GetMethodWebRequest(
         //    "http://machine.com/repository/internal/"; + 
"commons-lang/jars/commons-lang-2.1.jar.sha1" );
@@ -110,10 +110,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangMetadata = 
"commons-lang/commons-lang/2.1/maven-metadata.xml";
         String expectedMetadataContents = "dummy-versioned-metadata";
 
-        File metadataFile = new File( repoRootInternal, commonsLangMetadata );
-        metadataFile.getParentFile().mkdirs();
+        Path metadataFile = repoRootInternal.resolve(commonsLangMetadata);
+        Files.createDirectories(metadataFile.getParent());
 
-        FileUtils.writeStringToFile( metadataFile, expectedMetadataContents, 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
metadataFile, Charset.defaultCharset(), expectedMetadataContents );
 
         //WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/internal/"; + commonsLangMetadata );
         WebResponse response = getWebResponse( "/repository/internal/" + 
commonsLangMetadata );
@@ -129,10 +129,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangMetadata = 
"commons-lang/commons-lang/maven-metadata.xml";
         String expectedMetadataContents = "dummy-project-metadata";
 
-        File metadataFile = new File( repoRootInternal, commonsLangMetadata );
-        metadataFile.getParentFile().mkdirs();
+        Path metadataFile = repoRootInternal.resolve(commonsLangMetadata);
+        Files.createDirectories(metadataFile.getParent());
 
-        FileUtils.writeStringToFile( metadataFile, expectedMetadataContents, 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
metadataFile, Charset.defaultCharset(), expectedMetadataContents );
 
         //WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/internal/"; + commonsLangMetadata );
         WebResponse response = getWebResponse( "/repository/internal/" + 
commonsLangMetadata );
@@ -148,10 +148,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangMetadata = "commons-lang/maven-metadata.xml";
         String expectedMetadataContents = "dummy-group-metadata";
 
-        File metadataFile = new File( repoRootInternal, commonsLangMetadata );
-        metadataFile.getParentFile().mkdirs();
+        Path metadataFile = repoRootInternal.resolve(commonsLangMetadata);
+        Files.createDirectories(metadataFile.getParent());
 
-        FileUtils.writeStringToFile( metadataFile, expectedMetadataContents, 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
metadataFile, Charset.defaultCharset(), expectedMetadataContents );
 
         //WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/internal/"; + commonsLangMetadata );
         WebResponse response = getWebResponse( "/repository/internal/" + 
commonsLangMetadata );
@@ -167,10 +167,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangJar = 
"commons-lang/commons-lang/2.1/commons-lang-2.1.jar";
         String expectedArtifactContents = "dummy-commons-lang-artifact";
 
-        File artifactFile = new File( repoRootInternal, commonsLangJar );
-        artifactFile.getParentFile().mkdirs();
+        Path artifactFile = repoRootInternal.resolve(commonsLangJar);
+        Files.createDirectories(artifactFile.getParent());
 
-        FileUtils.writeStringToFile( artifactFile, expectedArtifactContents, 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
artifactFile, Charset.defaultCharset(), expectedArtifactContents );
 
         //WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/internal/"; + commonsLangJar );
         WebResponse response = getWebResponse( "/repository/internal/" + 
commonsLangJar );
@@ -186,10 +186,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangJar = 
"commons-lang/commons-lang/2.1/commons-lang-2.1.jar";
         String expectedArtifactContents = "dummy-commons-lang-artifact";
 
-        File artifactFile = new File( repoRootInternal, commonsLangJar );
-        artifactFile.getParentFile().mkdirs();
+        Path artifactFile = repoRootInternal.resolve(commonsLangJar);
+        Files.createDirectories(artifactFile.getParent());
 
-        FileUtils.writeStringToFile( artifactFile, expectedArtifactContents, 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
artifactFile, Charset.defaultCharset(), expectedArtifactContents );
 
         //WebRequest request = new GetMethodWebRequest(
         //    "http://machine.com/repository/internal/"; + 
"commons-lang/jars/commons-lang-2.1.jar" );
@@ -205,10 +205,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangJar = 
"commons-lang/commons-lang/2.1-SNAPSHOT/commons-lang-2.1-SNAPSHOT.jar";
         String expectedArtifactContents = 
"dummy-commons-lang-snapshot-artifact";
 
-        File artifactFile = new File( repoRootInternal, commonsLangJar );
-        artifactFile.getParentFile().mkdirs();
+        Path artifactFile = repoRootInternal.resolve(commonsLangJar);
+        Files.createDirectories(artifactFile.getParent());
 
-        FileUtils.writeStringToFile( artifactFile, expectedArtifactContents, 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
artifactFile, Charset.defaultCharset() , expectedArtifactContents);
 
         //WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/internal/"; + commonsLangJar );
         WebResponse response = getWebResponse( "/repository/internal/" + 
commonsLangJar );
@@ -224,10 +224,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangJar = 
"commons-lang/commons-lang/2.1-SNAPSHOT/commons-lang-2.1-SNAPSHOT.jar";
         String expectedArtifactContents = 
"dummy-commons-lang-snapshot-artifact";
 
-        File artifactFile = new File( repoRootInternal, commonsLangJar );
-        artifactFile.getParentFile().mkdirs();
+        Path artifactFile = repoRootInternal.resolve(commonsLangJar);
+        Files.createDirectories(artifactFile.getParent());
 
-        FileUtils.writeStringToFile( artifactFile, expectedArtifactContents, 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
artifactFile, Charset.defaultCharset() , expectedArtifactContents);
 
         //WebRequest request = new GetMethodWebRequest(
         //    "http://machine.com/repository/internal/"; + 
"commons-lang/jars/commons-lang-2.1-SNAPSHOT.jar" );
@@ -242,10 +242,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangJar = 
"commons-lang/commons-lang/2.1-SNAPSHOT/commons-lang-2.1-20050821.023400-1.jar";
         String expectedArtifactContents = 
"dummy-commons-lang-snapshot-artifact";
 
-        File artifactFile = new File( repoRootInternal, commonsLangJar );
-        artifactFile.getParentFile().mkdirs();
+        Path artifactFile = repoRootInternal.resolve(commonsLangJar);
+        Files.createDirectories(artifactFile.getParent());
 
-        FileUtils.writeStringToFile( artifactFile, expectedArtifactContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(artifactFile, 
Charset.defaultCharset(), expectedArtifactContents);
 
         //WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/internal/"; + commonsLangJar );
         WebResponse response = getWebResponse( "/repository/internal/" + 
commonsLangJar );
@@ -261,10 +261,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangJar = 
"commons-lang/commons-lang/2.1-SNAPSHOT/commons-lang-2.1-20050821.023400-1.jar";
         String expectedArtifactContents = 
"dummy-commons-lang-snapshot-artifact";
 
-        File artifactFile = new File( repoRootInternal, commonsLangJar );
-        artifactFile.getParentFile().mkdirs();
+        Path artifactFile = repoRootInternal.resolve(commonsLangJar);
+        Files.createDirectories(artifactFile.getParent());
 
-        FileUtils.writeStringToFile( artifactFile, expectedArtifactContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(artifactFile, 
Charset.defaultCharset(), expectedArtifactContents);
 
         WebRequest request = new GetMethodWebRequest(
             "http://machine.com/repository/internal/"; + 
"commons-lang/jars/commons-lang-2.1-20050821.023400-1.jar" );
@@ -282,10 +282,10 @@ public class RepositoryServletNoProxyTest
         String expectedContents = "the-contents-of-the-dual-extension";
         String dualExtensionPath = 
"org/project/example-presentation/3.2/example-presentation-3.2.xml.zip";
 
-        File checksumFile = new File( repoRootInternal, dualExtensionPath );
-        checksumFile.getParentFile().mkdirs();
+        Path checksumFile = repoRootInternal.resolve(dualExtensionPath);
+        Files.createDirectories(checksumFile.getParent());
 
-        FileUtils.writeStringToFile( checksumFile, expectedContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(checksumFile, 
Charset.defaultCharset(), expectedContents);
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/internal/"; + dualExtensionPath );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -301,10 +301,10 @@ public class RepositoryServletNoProxyTest
         String expectedContents = "the-contents-of-the-dual-extension";
         String dualExtensionPath = 
"org/project/example-presentation/3.2/example-presentation-3.2.zip";
 
-        File checksumFile = new File( repoRootInternal, dualExtensionPath );
-        checksumFile.getParentFile().mkdirs();
+        Path checksumFile = repoRootInternal.resolve(dualExtensionPath);
+        Files.createDirectories(checksumFile.getParent());
 
-        FileUtils.writeStringToFile( checksumFile, expectedContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(checksumFile, 
Charset.defaultCharset(), expectedContents);
 
         WebRequest request = new GetMethodWebRequest(
             "http://machine.com/repository/internal/"; + 
"org.project/distributions/example-presentation-3.2.zip" );
@@ -319,10 +319,10 @@ public class RepositoryServletNoProxyTest
     {
         String commonsLangSha1 = 
"commons-lang/commons-lang/2.1/commons-lang-2.1.jar.sha1";
 
-        File checksumFile = new File( repoRootLegacy, 
"commons-lang/jars/commons-lang-2.1.jar.sha1" );
-        checksumFile.getParentFile().mkdirs();
+        Path checksumFile = repoRootLegacy.resolve( 
"commons-lang/jars/commons-lang-2.1.jar.sha1" );
+        Files.createDirectories(checksumFile.getParent());
 
-        FileUtils.writeStringToFile( checksumFile, "dummy-checksum", 
Charset.defaultCharset() );
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
checksumFile, Charset.defaultCharset(), "dummy-checksum" );
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/legacy/"; + commonsLangSha1 );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -334,10 +334,10 @@ public class RepositoryServletNoProxyTest
         throws Exception
     {
         String commonsLangSha1 = "commons-lang/jars/commons-lang-2.1.jar.sha1";
-        File checksumFile = new File( repoRootLegacy, commonsLangSha1 );
-        checksumFile.getParentFile().mkdirs();
+        Path checksumFile = repoRootLegacy.resolve(commonsLangSha1);
+        Files.createDirectories(checksumFile.getParent());
 
-        FileUtils.writeStringToFile( checksumFile, "dummy-checksum", 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(checksumFile, 
Charset.defaultCharset(), "dummy-checksum");
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/legacy/"; + commonsLangSha1 );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -352,10 +352,10 @@ public class RepositoryServletNoProxyTest
         String expectedMetadataContents = "dummy-versioned-metadata";
 
         // TODO: find out what this should be from maven-artifact
-        File metadataFile = new File( repoRootLegacy, commonsLangMetadata );
-        metadataFile.getParentFile().mkdirs();
+        Path metadataFile = repoRootLegacy.resolve(commonsLangMetadata);
+        Files.createDirectories(metadataFile.getParent());
 
-        FileUtils.writeStringToFile( metadataFile, expectedMetadataContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(metadataFile, 
Charset.defaultCharset(), expectedMetadataContents);
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/legacy/"; + commonsLangMetadata );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -370,10 +370,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangMetadata = 
"commons-lang/commons-lang/maven-metadata.xml";
         String expectedMetadataContents = "dummy-project-metadata";
 
-        File metadataFile = new File( repoRootLegacy, commonsLangMetadata );
-        metadataFile.getParentFile().mkdirs();
+        Path metadataFile = repoRootLegacy.resolve(commonsLangMetadata);
+        Files.createDirectories(metadataFile.getParent());
 
-        FileUtils.writeStringToFile( metadataFile, expectedMetadataContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(metadataFile, 
Charset.defaultCharset(), expectedMetadataContents);
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/legacy/"; + commonsLangMetadata );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -387,10 +387,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangMetadata = "commons-lang/maven-metadata.xml";
         String expectedMetadataContents = "dummy-group-metadata";
 
-        File metadataFile = new File( repoRootLegacy, commonsLangMetadata );
-        metadataFile.getParentFile().mkdirs();
+        Path metadataFile = repoRootLegacy.resolve(commonsLangMetadata);
+        Files.createDirectories(metadataFile.getParent());
 
-        FileUtils.writeStringToFile( metadataFile, expectedMetadataContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(metadataFile, 
Charset.defaultCharset(), expectedMetadataContents);
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/legacy/"; + commonsLangMetadata );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -404,10 +404,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangJar = 
"commons-lang/commons-lang/2.1/commons-lang-2.1.jar";
         String expectedArtifactContents = "dummy-commons-lang-artifact";
 
-        File artifactFile = new File( repoRootLegacy, 
"commons-lang/jars/commons-lang-2.1.jar" );
-        artifactFile.getParentFile().mkdirs();
+        Path artifactFile = 
repoRootLegacy.resolve("commons-lang/jars/commons-lang-2.1.jar" );
+        Files.createDirectories(artifactFile.getParent());
 
-        FileUtils.writeStringToFile( artifactFile, expectedArtifactContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(artifactFile, 
Charset.defaultCharset(), expectedArtifactContents);
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/legacy/"; + commonsLangJar );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -421,10 +421,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangJar = "commons-lang/jars/commons-lang-2.1.jar";
         String expectedArtifactContents = "dummy-commons-lang-artifact";
 
-        File artifactFile = new File( repoRootLegacy, commonsLangJar );
-        artifactFile.getParentFile().mkdirs();
+        Path artifactFile = repoRootLegacy.resolve(commonsLangJar);
+        Files.createDirectories(artifactFile.getParent());
 
-        FileUtils.writeStringToFile( artifactFile, expectedArtifactContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(artifactFile, 
Charset.defaultCharset(), expectedArtifactContents);
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/legacy/"; + commonsLangJar );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -438,10 +438,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangJar = 
"commons-lang/commons-lang/2.1-SNAPSHOT/commons-lang-2.1-SNAPSHOT.jar";
         String expectedArtifactContents = 
"dummy-commons-lang-snapshot-artifact";
 
-        File artifactFile = new File( repoRootLegacy, 
"commons-lang/jars/commons-lang-2.1-SNAPSHOT.jar" );
-        artifactFile.getParentFile().mkdirs();
+        Path artifactFile = repoRootLegacy.resolve( 
"commons-lang/jars/commons-lang-2.1-SNAPSHOT.jar" );
+        Files.createDirectories(artifactFile.getParent());
 
-        FileUtils.writeStringToFile( artifactFile, expectedArtifactContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(artifactFile, 
Charset.defaultCharset(), expectedArtifactContents);
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/legacy/"; + commonsLangJar );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -455,10 +455,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangJar = 
"commons-lang/jars/commons-lang-2.1-SNAPSHOT.jar";
         String expectedArtifactContents = 
"dummy-commons-lang-snapshot-artifact";
 
-        File artifactFile = new File( repoRootLegacy, commonsLangJar );
-        artifactFile.getParentFile().mkdirs();
+        Path artifactFile = repoRootLegacy.resolve(commonsLangJar);
+        Files.createDirectories(artifactFile.getParent());
 
-        FileUtils.writeStringToFile( artifactFile, expectedArtifactContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(artifactFile, 
Charset.defaultCharset(), expectedArtifactContents);
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/legacy/"; + commonsLangJar );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -473,10 +473,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangJar = "commons-lang/commons-lang/2.1-SNAPSHOT/" + 
filename;
         String expectedArtifactContents = 
"dummy-commons-lang-snapshot-artifact";
 
-        File artifactFile = new File( repoRootLegacy, "commons-lang/jars/" + 
filename );
-        artifactFile.getParentFile().mkdirs();
+        Path artifactFile = repoRootLegacy.resolve( "commons-lang/jars/" + 
filename );
+        Files.createDirectories(artifactFile.getParent());
 
-        FileUtils.writeStringToFile( artifactFile, expectedArtifactContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(artifactFile, 
Charset.defaultCharset(), expectedArtifactContents);
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/legacy/"; + commonsLangJar );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -490,10 +490,10 @@ public class RepositoryServletNoProxyTest
         String commonsLangJar = 
"commons-lang/jars/commons-lang-2.1-20050821.023400-1.jar";
         String expectedArtifactContents = 
"dummy-commons-lang-snapshot-artifact";
 
-        File artifactFile = new File( repoRootLegacy, commonsLangJar );
-        artifactFile.getParentFile().mkdirs();
+        Path artifactFile = repoRootLegacy.resolve(commonsLangJar);
+        Files.createDirectories(artifactFile.getParent());
 
-        FileUtils.writeStringToFile( artifactFile, expectedArtifactContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(artifactFile, 
Charset.defaultCharset(), expectedArtifactContents);
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/legacy/"; + commonsLangJar );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -510,10 +510,10 @@ public class RepositoryServletNoProxyTest
         String expectedContents = "the-contents-of-the-dual-extension";
         String dualExtensionPath = 
"org/project/example-presentation/3.2/example-presentation-3.2.xml.zip";
 
-        File checksumFile = new File( repoRootLegacy, 
"org.project/distributions/example-presentation-3.2.xml.zip" );
-        checksumFile.getParentFile().mkdirs();
+        Path checksumFile = repoRootLegacy.resolve( 
"org.project/distributions/example-presentation-3.2.xml.zip" );
+        Files.createDirectories(checksumFile.getParent());
 
-        FileUtils.writeStringToFile( checksumFile, expectedContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(checksumFile, 
Charset.defaultCharset(), expectedContents);
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/legacy/"; + dualExtensionPath );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -527,10 +527,10 @@ public class RepositoryServletNoProxyTest
         String expectedContents = "the-contents-of-the-dual-extension";
         String dualExtensionPath = 
"org.project/distributions/example-presentation-3.2.zip";
 
-        File checksumFile = new File( repoRootLegacy, dualExtensionPath );
-        checksumFile.getParentFile().mkdirs();
+        Path checksumFile = repoRootLegacy.resolve(dualExtensionPath);
+        Files.createDirectories(checksumFile.getParent());
 
-        FileUtils.writeStringToFile( checksumFile, expectedContents, 
Charset.defaultCharset() );
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(checksumFile, 
Charset.defaultCharset(), expectedContents);
 
         WebRequest request = new GetMethodWebRequest( 
"http://machine.com/repository/legacy/"; + dualExtensionPath );
         WebResponse response = getServletUnitClient().getResponse( request );
@@ -548,13 +548,13 @@ public class RepositoryServletNoProxyTest
 
         
archivaConfiguration.getConfiguration().getWebapp().getUi().setApplicationUrl("http://localhost";);
 
-        File artifactFile = new File( repoRootInternal, commonsLangJar );
-        artifactFile.getParentFile().mkdirs();
-        FileUtils.writeStringToFile( artifactFile, expectedArtifactContents, 
Charset.defaultCharset() );
+        Path artifactFile = repoRootInternal.resolve(commonsLangJar);
+        Files.createDirectories(artifactFile.getParent());
+        
org.apache.archiva.common.utils.FileUtils.writeStringToFile(artifactFile, 
Charset.defaultCharset(), expectedArtifactContents);
 
-        File metadataFile = new File( repoRootInternal, commonsLangMetadata );
-        metadataFile.getParentFile().mkdirs();
-        FileUtils.writeStringToFile( metadataFile, 
createVersionMetadata("commons-lang", "commons-lang",
+        Path metadataFile = repoRootInternal.resolve(commonsLangMetadata);
+        Files.createDirectories(metadataFile.getParent());
+        org.apache.archiva.common.utils.FileUtils.writeStringToFile( 
metadataFile, Charset.defaultCharset(), createVersionMetadata("commons-lang", 
"commons-lang",
                 "2.1-SNAPSHOT", "20050821.023400", "1", "20050821.023400"));
 
         WebRequest webRequest = new GetMethodWebRequest(

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedPassthroughTest.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedPassthroughTest.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedPassthroughTest.java
index af32040..e6ed57b 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedPassthroughTest.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedPassthroughTest.java
@@ -19,7 +19,6 @@ package org.apache.archiva.webdav;
  * under the License.
  */
 
-import java.io.File;
 
 import com.gargoylesoftware.htmlunit.WebRequest;
 import com.gargoylesoftware.htmlunit.WebResponse;
@@ -27,6 +26,10 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.attribute.FileTime;
+
 /**
  * RepositoryServlet Tests, Proxied, Get of resources that are not artifacts 
or metadata, with varying policy settings.
  * 
@@ -136,13 +139,13 @@ public class RepositoryServletProxiedPassthroughTest
 
         String expectedRemoteContents = contents;
         String expectedManagedContents = null;
-        File remoteFile = populateRepo( remoteCentral, path, 
expectedRemoteContents );
+        Path remoteFile = populateRepo( remoteCentral, path, 
expectedRemoteContents );
 
         if ( hasManagedCopy )
         {
             expectedManagedContents = contents;
-            File managedFile = populateRepo( repoRootInternal, path, 
expectedManagedContents );
-            managedFile.setLastModified( remoteFile.lastModified() + 
deltaManagedToRemoteTimestamp );
+            Path managedFile = populateRepo( repoRootInternal, path, 
expectedManagedContents );
+            Files.setLastModifiedTime( managedFile, FileTime.fromMillis( 
Files.getLastModifiedTime( remoteFile ).toMillis() + 
deltaManagedToRemoteTimestamp ));
         }
 
         setupConnector( REPOID_INTERNAL, remoteCentral );

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedPluginSnapshotPolicyTest.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedPluginSnapshotPolicyTest.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedPluginSnapshotPolicyTest.java
index 7104b2b..d475fa3 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedPluginSnapshotPolicyTest.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedPluginSnapshotPolicyTest.java
@@ -26,7 +26,9 @@ import 
org.apache.archiva.configuration.ProxyConnectorConfiguration;
 import org.apache.archiva.policies.SnapshotsPolicy;
 import org.junit.Test;
 
-import java.io.File;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.attribute.FileTime;
 import java.util.ArrayList;
 
 /**
@@ -169,13 +171,13 @@ public class 
RepositoryServletProxiedPluginSnapshotPolicyTest
         String resourcePath = 
"org/apache/archiva/archivatest-maven-plugin/4.0-alpha-1-SNAPSHOT/archivatest-maven-plugin-4.0-alpha-1-20070822.033400-42.jar";
         String expectedRemoteContents = 
"archivatest-maven-plugin-4.0-alpha-1-20070822.033400-42|jar-remote-contents";
         String expectedManagedContents = null;
-        File remoteFile = populateRepo( remoteSnapshots, resourcePath, 
expectedRemoteContents );
+        Path remoteFile = populateRepo( remoteSnapshots, resourcePath, 
expectedRemoteContents );
 
         if ( hasManagedCopy )
         {
             expectedManagedContents = 
"archivatest-maven-plugin-4.0-alpha-1-20070822.033400-42|jar-managed-contents";
-            File managedFile = populateRepo( repoRootInternal, resourcePath, 
expectedManagedContents );
-            managedFile.setLastModified( remoteFile.lastModified() + 
deltaManagedToRemoteTimestamp );
+            Path managedFile = populateRepo( repoRootInternal, resourcePath, 
expectedManagedContents );
+            Files.setLastModifiedTime( managedFile, FileTime.fromMillis( 
Files.getLastModifiedTime( remoteFile).toMillis() + 
deltaManagedToRemoteTimestamp ));
         }
 
         archivaConfiguration.getConfiguration().setProxyConnectors( new 
ArrayList<ProxyConnectorConfiguration>( 0 ) );

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedReleasePolicyTest.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedReleasePolicyTest.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedReleasePolicyTest.java
index e554ee4..c14b6c2 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedReleasePolicyTest.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedReleasePolicyTest.java
@@ -25,7 +25,9 @@ import 
org.apache.archiva.configuration.ProxyConnectorConfiguration;
 import org.apache.archiva.policies.ReleasesPolicy;
 import org.junit.Test;
 
-import java.io.File;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.attribute.FileTime;
 import java.util.ArrayList;
 
 /**
@@ -165,13 +167,14 @@ public class RepositoryServletProxiedReleasePolicyTest
         String resourcePath = "org/apache/archiva/test/1.0/test-1.0.jar";
         String expectedRemoteContents = "archiva-test-1.0|jar-remote-contents";
         String expectedManagedContents = null;
-        File remoteFile = populateRepo( remoteCentral, resourcePath, 
expectedRemoteContents );
+        Path remoteFile = populateRepo( remoteCentral, resourcePath, 
expectedRemoteContents );
 
         if ( hasManagedCopy )
         {
             expectedManagedContents = "archiva-test-1.0|jar-managed-contents";
-            File managedFile = populateRepo( repoRootInternal, resourcePath, 
expectedManagedContents );
-            managedFile.setLastModified( remoteFile.lastModified() + 
deltaManagedToRemoteTimestamp );
+            Path managedFile = populateRepo( repoRootInternal, resourcePath, 
expectedManagedContents );
+            Files.setLastModifiedTime(
+                managedFile, FileTime.fromMillis( Files.getLastModifiedTime( 
remoteFile ).toMillis() + deltaManagedToRemoteTimestamp ));
         }
 
         archivaConfiguration.getConfiguration().setProxyConnectors( new 
ArrayList<ProxyConnectorConfiguration>() );

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedSnapshotPolicyTest.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedSnapshotPolicyTest.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedSnapshotPolicyTest.java
index 72d1328..e35b176 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedSnapshotPolicyTest.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedSnapshotPolicyTest.java
@@ -28,7 +28,9 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
-import java.io.File;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.attribute.FileTime;
 import java.util.ArrayList;
 
 /**
@@ -191,13 +193,13 @@ public class RepositoryServletProxiedSnapshotPolicyTest
         String resourcePath = 
"org/apache/archiva/test/2.0-SNAPSHOT/test-2.0-SNAPSHOT.jar";
         String expectedRemoteContents = 
"archiva-test-2.0-SNAPSHOT|jar-remote-contents";
         String expectedManagedContents = null;
-        File remoteFile = populateRepo( remoteSnapshots, resourcePath, 
expectedRemoteContents );
+        Path remoteFile = populateRepo( remoteSnapshots, resourcePath, 
expectedRemoteContents );
 
         if ( hasManagedCopy )
         {
             expectedManagedContents = 
"archiva-test-2.0-SNAPSHOT|jar-managed-contents";
-            File managedFile = populateRepo( repoRootInternal, resourcePath, 
expectedManagedContents );
-            managedFile.setLastModified( remoteFile.lastModified() + 
deltaManagedToRemoteTimestamp );
+            Path managedFile = populateRepo( repoRootInternal, resourcePath, 
expectedManagedContents );
+            Files.setLastModifiedTime( managedFile, 
FileTime.fromMillis(Files.getLastModifiedTime( remoteFile ).toMillis() + 
deltaManagedToRemoteTimestamp ));
         }
 
         setupSnapshotConnector( REPOID_INTERNAL, remoteSnapshots, 
snapshotsPolicy );

http://git-wip-us.apache.org/repos/asf/archiva/blob/abba44b0/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedTimestampedSnapshotPolicyTest.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedTimestampedSnapshotPolicyTest.java
 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedTimestampedSnapshotPolicyTest.java
index 0c3219d..fea53db 100644
--- 
a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedTimestampedSnapshotPolicyTest.java
+++ 
b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/archiva/webdav/RepositoryServletProxiedTimestampedSnapshotPolicyTest.java
@@ -27,7 +27,9 @@ import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 
-import java.io.File;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.attribute.FileTime;
 import java.util.ArrayList;
 
 /**
@@ -187,13 +189,14 @@ public class 
RepositoryServletProxiedTimestampedSnapshotPolicyTest
         String resourcePath = 
"org/apache/archiva/test/3.0-SNAPSHOT/test-3.0-20070822.033400-42.jar";
         String expectedRemoteContents = 
"archiva-test-3.0-20070822.033400-42|jar-remote-contents";
         String expectedManagedContents = null;
-        File remoteFile = populateRepo( remoteSnapshots, resourcePath, 
expectedRemoteContents );
+        Path remoteFile = populateRepo( remoteSnapshots, resourcePath, 
expectedRemoteContents );
 
         if ( hasManagedCopy )
         {
             expectedManagedContents = 
"archiva-test-3.0-20070822.033400-42|jar-managed-contents";
-            File managedFile = populateRepo( repoRootInternal, resourcePath, 
expectedManagedContents );
-            managedFile.setLastModified( remoteFile.lastModified() + 
deltaManagedToRemoteTimestamp );
+            Path managedFile = populateRepo( repoRootInternal, resourcePath, 
expectedManagedContents );
+            Files.setLastModifiedTime( managedFile, FileTime.fromMillis(
+                Files.getLastModifiedTime( remoteFile ).toMillis() + 
deltaManagedToRemoteTimestamp ));
         }
 
         setupSnapshotConnector( REPOID_INTERNAL, remoteSnapshots, 
snapshotsPolicy );

Reply via email to