You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by br...@apache.org on 2009/12/01 17:17:48 UTC

svn commit: r885817 - /archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/UploadAction.java

Author: brett
Date: Tue Dec  1 16:17:48 2009
New Revision: 885817

URL: http://svn.apache.org/viewvc?rev=885817&view=rev
Log:
[MRM-1025] switch upload action to use the maven-model writer instead

Modified:
    archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/UploadAction.java

Modified: archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/UploadAction.java
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/UploadAction.java?rev=885817&r1=885816&r2=885817&view=diff
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/UploadAction.java (original)
+++ archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/UploadAction.java Tue Dec  1 16:17:48 2009
@@ -22,6 +22,7 @@
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileOutputStream;
+import java.io.FileWriter;
 import java.io.IOException;
 import java.text.DateFormat;
 import java.text.SimpleDateFormat;
@@ -45,7 +46,6 @@
 import org.apache.maven.archiva.configuration.ArchivaConfiguration;
 import org.apache.maven.archiva.configuration.Configuration;
 import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration;
-import org.apache.maven.archiva.model.ArchivaProjectModel;
 import org.apache.maven.archiva.model.ArchivaRepositoryMetadata;
 import org.apache.maven.archiva.model.ArtifactReference;
 import org.apache.maven.archiva.model.SnapshotVersion;
@@ -59,14 +59,14 @@
 import org.apache.maven.archiva.repository.metadata.RepositoryMetadataException;
 import org.apache.maven.archiva.repository.metadata.RepositoryMetadataReader;
 import org.apache.maven.archiva.repository.metadata.RepositoryMetadataWriter;
-import org.apache.maven.archiva.repository.project.ProjectModelException;
-import org.apache.maven.archiva.repository.project.ProjectModelWriter;
-import org.apache.maven.archiva.repository.project.writers.ProjectModel400Writer;
 import org.apache.maven.archiva.security.AccessDeniedException;
 import org.apache.maven.archiva.security.ArchivaSecurityException;
 import org.apache.maven.archiva.security.PrincipalNotFoundException;
 import org.apache.maven.archiva.security.UserRepositories;
+import org.apache.maven.model.Model;
+import org.apache.maven.model.io.xpp3.MavenXpp3Writer;
 import org.codehaus.plexus.taskqueue.TaskQueueException;
+import org.codehaus.plexus.util.IOUtil;
 
 /**
  * Upload an artifact using Jakarta file upload in webwork. If set by the user a pom will also be generated. Metadata
@@ -150,8 +150,6 @@
 
     private ChecksumAlgorithm[] algorithms = new ChecksumAlgorithm[]{ChecksumAlgorithm.SHA1, ChecksumAlgorithm.MD5};
 
-    private ProjectModelWriter pomWriter = new ProjectModel400Writer();
-
     public void setArtifact( File file )
     {
         this.artifactFile = file;
@@ -391,11 +389,6 @@
                     addActionError( "Error encountered while writing pom file: " + ie.getMessage() );
                     return ERROR;
                 }
-                catch ( ProjectModelException pe )
-                {
-                    addActionError( "Error encountered while generating pom file: " + pe.getMessage() );
-                    return ERROR;
-                }
             }
 
             if ( pomFile != null && pomFile.length() > 0 )
@@ -475,16 +468,26 @@
     }
 
     private File createPom( File targetPath, String filename )
-        throws IOException, ProjectModelException
+        throws IOException
     {
-        ArchivaProjectModel projectModel = new ArchivaProjectModel();
+        Model projectModel = new Model();
+        projectModel.setModelVersion( "4.0.0" );
         projectModel.setGroupId( groupId );
         projectModel.setArtifactId( artifactId );
         projectModel.setVersion( version );
         projectModel.setPackaging( packaging );
 
         File pomFile = new File( targetPath, filename );
-        pomWriter.write( projectModel, pomFile );
+        MavenXpp3Writer writer = new MavenXpp3Writer();
+        FileWriter w = new FileWriter( pomFile );
+        try
+        {
+            writer.write( w, projectModel );
+        }
+        finally
+        {
+            IOUtil.close( w );
+        }
 
         return pomFile;
     }