You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jv...@apache.org on 2007/02/24 21:39:49 UTC
svn commit: r511342 - in /maven/components/trunk/maven-embedder: pom.xml
src/main/java/org/apache/maven/embedder/MavenEmbedder.java
Author: jvanzyl
Date: Sat Feb 24 12:39:48 2007
New Revision: 511342
URL: http://svn.apache.org/viewvc?view=rev&rev=511342
Log:
MNG-2847 close up the reader properly when reading model.
Modified:
maven/components/trunk/maven-embedder/pom.xml
maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java
Modified: maven/components/trunk/maven-embedder/pom.xml
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/pom.xml?view=diff&rev=511342&r1=511341&r2=511342
==============================================================================
--- maven/components/trunk/maven-embedder/pom.xml (original)
+++ maven/components/trunk/maven-embedder/pom.xml Sat Feb 24 12:39:48 2007
@@ -27,7 +27,7 @@
<artifactId>maven-embedder</artifactId>
<name>Maven Embedder</name>
<properties>
- <bundleVersion>2.1.0.v20070209-2105</bundleVersion>
+ <bundleVersion>2.1.0.v20070221-2149</bundleVersion>
</properties>
<build>
<resources>
Modified: maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java?view=diff&rev=511342&r1=511341&r2=511342
==============================================================================
--- maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java (original)
+++ maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java Sat Feb 24 12:39:48 2007
@@ -78,6 +78,7 @@
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
+import java.io.Reader;
import java.net.URL;
import java.util.ArrayList;
import java.util.Collections;
@@ -209,12 +210,25 @@
this.logger = logger;
}
- public Model readModel( File model )
+ public Model readModel( File file )
throws XmlPullParserException, IOException
{
- return modelReader.read( new FileReader( model ) );
+ Reader reader = new FileReader( file );
+
+ Model model;
+
+ try
+ {
+ model = modelReader.read( reader );
+ }
+ finally
+ {
+ reader.close();
+ }
+
+ return model;
}
-
+
public void writeModel( Writer writer,
Model model,
boolean namespaceDeclaration )
@@ -239,18 +253,19 @@
{
return mavenProjectBuilder.build( mavenProject, localRepository, profileManager );
}
-
+
// ----------------------------------------------------------------------
// Settings
// ----------------------------------------------------------------------
-
+
public static Settings readSettings( File settingsFile )
throws SettingsConfigurationException, MavenEmbedderException, IOException
{
return readSettings( settingsFile, null );
}
- public static Settings readSettings( File settingsFile, MavenEmbedderLogger logger )
+ public static Settings readSettings( File settingsFile,
+ MavenEmbedderLogger logger )
throws SettingsConfigurationException, MavenEmbedderException, IOException
{
DefaultPlexusContainer container = null;
@@ -259,7 +274,7 @@
try
{
reader = new FileReader( settingsFile );
-
+
try
{
container = new DefaultPlexusContainer();
@@ -271,9 +286,8 @@
if ( logger != null )
{
- MavenEmbedderLoggerManager loggerManager = new MavenEmbedderLoggerManager(
- new PlexusLoggerAdapter(
- logger ) );
+ MavenEmbedderLoggerManager loggerManager =
+ new MavenEmbedderLoggerManager( new PlexusLoggerAdapter( logger ) );
container.setLoggerManager( loggerManager );
}
@@ -293,7 +307,7 @@
finally
{
IOUtil.close( reader );
-
+
if ( container != null )
{
container.dispose();
@@ -301,13 +315,16 @@
}
}
- public static void writeSettings( File settingsFile, Settings settings )
+ public static void writeSettings( File settingsFile,
+ Settings settings )
throws IOException, MavenEmbedderException
{
writeSettings( settingsFile, settings, null );
}
-
- public static void writeSettings( File settingsFile, Settings settings, MavenEmbedderLogger logger )
+
+ public static void writeSettings( File settingsFile,
+ Settings settings,
+ MavenEmbedderLogger logger )
throws IOException, MavenEmbedderException
{
DefaultPlexusContainer container = null;
@@ -316,7 +333,7 @@
try
{
writer = new FileWriter( settingsFile );
-
+
try
{
container = new DefaultPlexusContainer();
@@ -328,7 +345,8 @@
if ( logger != null )
{
- MavenEmbedderLoggerManager loggerManager = new MavenEmbedderLoggerManager( new PlexusLoggerAdapter( logger ) );
+ MavenEmbedderLoggerManager loggerManager =
+ new MavenEmbedderLoggerManager( new PlexusLoggerAdapter( logger ) );
container.setLoggerManager( loggerManager );
}
@@ -347,8 +365,8 @@
}
finally
{
- IOUtil.close( writer );
-
+ IOUtil.close( writer );
+
if ( container != null )
{
container.dispose();
@@ -562,7 +580,7 @@
public static final String DEFAULT_LAYOUT_ID = "default";
public static final File DEFAULT_GLOBAL_SETTINGS_FILE = MavenSettingsBuilder.DEFAULT_GLOBAL_SETTINGS_FILE;
-
+
public static final File DEFAULT_USER_SETTINGS_FILE = MavenSettingsBuilder.DEFAULT_USER_SETTINGS_FILE;
public ArtifactRepository createLocalRepository( File localRepository )
@@ -687,7 +705,7 @@
profileManager.explicitlyDeactivate( req.getInactiveProfiles() );
mavenProjectBuilder = (MavenProjectBuilder) container.lookup( MavenProjectBuilder.ROLE );
-
+
buildContextManager = (BuildContextManager) container.lookup( BuildContextManager.ROLE );
// ----------------------------------------------------------------------
@@ -775,9 +793,9 @@
try
{
buildContextManager.clearBuildContext();
-
+
container.release( buildContextManager );
-
+
container.release( mavenProjectBuilder );
container.release( artifactRepositoryFactory );