You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2010/03/15 23:37:54 UTC
svn commit: r923481 -
/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/DefaultOldArchetype.java
Author: hboutemy
Date: Mon Mar 15 22:37:53 2010
New Revision: 923481
URL: http://svn.apache.org/viewvc?rev=923481&view=rev
Log:
preserve encoding when reading or writing XML descriptors
Modified:
maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/DefaultOldArchetype.java
Modified: maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/DefaultOldArchetype.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/DefaultOldArchetype.java?rev=923481&r1=923480&r2=923481&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/DefaultOldArchetype.java (original)
+++ maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/DefaultOldArchetype.java Mon Mar 15 22:37:53 2010
@@ -33,7 +33,9 @@ import org.apache.velocity.context.Conte
import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.IOUtil;
+import org.codehaus.plexus.util.ReaderFactory;
import org.codehaus.plexus.util.StringUtils;
+import org.codehaus.plexus.util.WriterFactory;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
import org.codehaus.plexus.velocity.VelocityComponent;
import org.dom4j.Document;
@@ -45,8 +47,6 @@ import org.dom4j.io.XMLWriter;
import java.io.File;
import java.io.FileOutputStream;
-import java.io.FileReader;
-import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
@@ -116,8 +116,8 @@ public class DefaultOldArchetype
// try
// {
- archetype = archetypeArtifactManager.getArchetypeFile(
- archetypeGroupId, archetypeArtifactId, archetypeVersion,
+ archetype = archetypeArtifactManager.getArchetypeFile(
+ archetypeGroupId, archetypeArtifactId, archetypeVersion,
archetypeRepository, localRepository, remoteRepositories );
// }
// catch ( UnknownArchetype e )
@@ -296,11 +296,11 @@ public class DefaultOldArchetype
{
if ( parentPomFile.exists() )
{
- FileReader fileReader = null;
+ Reader fileReader = null;
try
{
- fileReader = new FileReader( parentPomFile );
+ fileReader = ReaderFactory.newXmlReader( parentPomFile );
MavenXpp3Reader reader = new MavenXpp3Reader();
parentModel = reader.read( fileReader );
if ( !"pom".equals( parentModel.getPackaging() ) )
@@ -358,12 +358,12 @@ public class DefaultOldArchetype
IOUtil.close( fileWriter );
}
*/
- FileReader fileReader = null;
+ Reader fileReader = null;
boolean added;
StringWriter w = new StringWriter();
try
{
- fileReader = new FileReader( parentPomFile );
+ fileReader = ReaderFactory.newXmlReader( parentPomFile );
added = addModuleToParentPom( artifactId, fileReader, w );
}
catch ( IOException e )
@@ -381,14 +381,20 @@ public class DefaultOldArchetype
if ( added )
{
+ Writer out = null;
try
{
- FileUtils.fileWrite( parentPomFile.getAbsolutePath(), w.toString() );
+ out = WriterFactory.newXmlWriter( parentPomFile );
+ IOUtil.copy( w.toString(), out );
}
catch ( IOException e )
{
throw new ArchetypeTemplateProcessingException( "Unable to rewrite parent POM", e );
}
+ finally
+ {
+ IOUtil.close( out );
+ }
}
}
@@ -488,10 +494,10 @@ public class DefaultOldArchetype
// ---------------------------------------------------------------------
Model generatedModel;
- FileReader pomReader = null;
+ Reader pomReader = null;
try
{
- pomReader = new FileReader( pomFile );
+ pomReader = ReaderFactory.newXmlReader( pomFile );
MavenXpp3Reader reader = new MavenXpp3Reader();
@@ -526,10 +532,10 @@ public class DefaultOldArchetype
}
generatedModel.setParent( parent );
- FileWriter pomWriter = null;
+ Writer pomWriter = null;
try
{
- pomWriter = new FileWriter( pomFile );
+ pomWriter = WriterFactory.newXmlWriter( pomFile );
MavenXpp3Writer writer = new MavenXpp3Writer();
writer.write( pomWriter, generatedModel );