Diff of /maven/components/trunk/sandbox/repoclean/src/main/java/org/apache/maven/tools/repoclean/rewrite/V3PomRewriter.java
Parent Directory
| Revision Log
| Patch
--- maven/components/trunk/sandbox/repoclean/src/main/java/org/apache/maven/tools/repoclean/rewrite/V3PomRewriter.java 2005/05/07 05:42:39 169040
+++ maven/components/trunk/sandbox/repoclean/src/main/java/org/apache/maven/tools/repoclean/rewrite/V3PomRewriter.java 2005/05/07 05:45:20 169041
@@ -4,14 +4,12 @@ import org.apache.maven.artifact.Artifac
import org.apache.maven.model.Model;
import org.apache.maven.model.io.xpp3.MavenXpp3Writer;
import org.apache.maven.model.v3_0_0.io.xpp3.MavenXpp3Reader;
-import org.apache.maven.tools.repoclean.report.FileReporter;
+import org.apache.maven.tools.repoclean.report.Reporter;
import org.apache.maven.tools.repoclean.translate.PomV3ToV4Translator;
-import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.StringUtils;
-import java.io.File;
-import java.io.FileReader;
-import java.io.FileWriter;
+import java.io.Reader;
+import java.io.Writer;
/* ====================================================================
* Copyright 2001-2004 The Apache Software Foundation.
@@ -33,51 +31,39 @@ import java.io.FileWriter;
/**
* @author jdcasey
*/
-public class V3PomRewriter implements ArtifactPomRewriter
+public class V3PomRewriter
+ implements ArtifactPomRewriter
{
private PomV3ToV4Translator translator;
- public void rewrite( Artifact artifact, File from, File to, FileReporter reporter, boolean reportOnly )
+ public void rewrite( Artifact artifact, Reader from, Writer to, Reporter reporter, boolean reportOnly )
throws Exception
{
Model v4Model = null;
- if ( from.exists() )
+ if( from != null )
{
- FileReader fromReader = null;
+ org.apache.maven.model.v3_0_0.Model v3Model = null;
try
{
- org.apache.maven.model.v3_0_0.Model v3Model = null;
- try
- {
- fromReader = new FileReader( from );
-
- MavenXpp3Reader v3Reader = new MavenXpp3Reader();
-
- v3Model = v3Reader.read( fromReader );
- }
- catch ( Exception e )
- {
- reporter.error( "Invalid v3 POM at: \'" + from + "\'. Cannot read.", e );
-
- throw e;
- }
-
- if ( v3Model != null )
- {
- v4Model = translator.translate( v3Model, reporter );
- }
+ MavenXpp3Reader v3Reader = new MavenXpp3Reader();
+
+ v3Model = v3Reader.read( from );
}
- finally
+ catch ( Exception e )
{
- IOUtil.close( fromReader );
+ reporter.error( "Invalid v3 POM at: \'" + from + "\'. Cannot read.", e );
+
+ throw e;
+ }
+
+ if ( v3Model != null )
+ {
+ v4Model = translator.translate( v3Model, reporter );
}
}
else
{
- reporter.warn( "POM for artifact[" + artifact.getId() +
- "] does not exist in source repository. We will create a skeletal one here." );
-
v4Model = new Model();
}
@@ -87,28 +73,13 @@ public class V3PomRewriter implements Ar
if ( !reportOnly )
{
- File toParent = to.getParentFile();
- if ( !toParent.exists() )
- {
- toParent.mkdirs();
- }
-
- FileWriter toWriter = null;
- try
- {
- toWriter = new FileWriter( to );
- MavenXpp3Writer v4Writer = new MavenXpp3Writer();
- v4Writer.write( toWriter, v4Model );
- }
- finally
- {
- IOUtil.close( toWriter );
- }
+ MavenXpp3Writer v4Writer = new MavenXpp3Writer();
+ v4Writer.write( to, v4Model );
}
}
}
- private void validateV4Basics( Model model, Artifact artifact, FileReporter reporter )
+ private void validateV4Basics( Model model, Artifact artifact, Reporter reporter )
throws Exception
{
if ( StringUtils.isEmpty( model.getModelVersion() ) )