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 2008/05/23 05:50:00 UTC

svn commit: r659397 - /archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/util/IndexWriter.java

Author: oching
Date: Thu May 22 20:49:59 2008
New Revision: 659397

URL: http://svn.apache.org/viewvc?rev=659397&view=rev
Log:
[MRM-694]
-fix index writer sorting for virtual repos

Modified:
    archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/util/IndexWriter.java

Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/util/IndexWriter.java
URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/util/IndexWriter.java?rev=659397&r1=659396&r2=659397&view=diff
==============================================================================
--- archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/util/IndexWriter.java (original)
+++ archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/util/IndexWriter.java Thu May 22 20:49:59 2008
@@ -125,7 +125,8 @@
         else 
         {            
             // virtual repository - filter unique directories
-            Map<String, File> uniqueChildFiles = new HashMap<String, File>();                        
+            Map<String, File> uniqueChildFiles = new HashMap<String, File>();
+            List<String> sortedList = new ArrayList<String>();
             for( File resource : localResources )
             {
                 List<File> files = new ArrayList<File>( Arrays.asList( resource.listFiles() ) ); 
@@ -135,17 +136,15 @@
                     if( uniqueChildFiles.get( file.getName() ) == null )
                     {
                         uniqueChildFiles.put( file.getName(), file );
+                        sortedList.add( file.getName() );
                     }                    
                 }
             }
-            
-            List<File> uniqueChildFilesInList = new ArrayList<File>();
-            uniqueChildFilesInList.addAll( uniqueChildFiles.values() );
-            Collections.sort( uniqueChildFilesInList );
-            
-            for ( File file : uniqueChildFilesInList )
-            {   
-                writeHyperlink( writer, file.getName(), file.isDirectory(), true );
+             
+            Collections.sort( sortedList );
+            for ( String fileName : sortedList )
+            {
+                writeHyperlink( writer, fileName, ( (File) uniqueChildFiles.get( fileName ) ).isDirectory(), true );
             }
         }
     }