Author: kenney
Date: Sun Jul 9 20:31:30 2006
New Revision: 420408
URL: http://svn.apache.org/viewvc?rev=420408&view=rev
Log:
Refactored the bootstrapper to use a proper Model
and inheritance/dependency chains so repositories defined in models
are used for metadata too. Previously they got lost because of all
the cloning.
Added:
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/Model.java
(with props)
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/ProjectResolver.java
(with props)
Modified:
maven/components/trunk/bootstrap/bootstrap-installer/src/main/java/org/apache/maven/bootstrap/installer/BootstrapInstaller.java
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/Bootstrap.java
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/DownloadFailedException.java
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/OnlineArtifactDownloader.java
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/Dependency.java
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/ModelReader.java
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/util/AbstractReader.java
Modified:
maven/components/trunk/bootstrap/bootstrap-installer/src/main/java/org/apache/maven/bootstrap/installer/BootstrapInstaller.java
URL:
http://svn.apache.org/viewvc/maven/components/trunk/bootstrap/bootstrap-installer/src/main/java/org/apache/maven/bootstrap/installer/BootstrapInstaller.java?rev=420408&r1=420407&r2=420408&view=diff
==============================================================================
---
maven/components/trunk/bootstrap/bootstrap-installer/src/main/java/org/apache/maven/bootstrap/installer/BootstrapInstaller.java
(original)
+++
maven/components/trunk/bootstrap/bootstrap-installer/src/main/java/org/apache/maven/bootstrap/installer/BootstrapInstaller.java
Sun Jul 9 20:31:30 2006
@@ -18,7 +18,7 @@
import org.apache.maven.bootstrap.Bootstrap;
import org.apache.maven.bootstrap.model.Dependency;
-import org.apache.maven.bootstrap.model.ModelReader;
+import org.apache.maven.bootstrap.model.Model;
import org.apache.maven.bootstrap.util.FileUtils;
import org.apache.maven.bootstrap.util.SimpleArgumentParser;
import org.codehaus.plexus.util.Expand;
@@ -29,15 +29,11 @@
import org.codehaus.plexus.util.cli.WriterStreamConsumer;
import java.io.File;
-import java.io.BufferedReader;
-import java.io.InputStreamReader;
import java.io.IOException;
import java.io.PrintWriter;
-import java.util.Arrays;
import java.util.Collections;
import java.util.Date;
import java.util.Iterator;
-import java.util.Properties;
/**
* Main class for bootstrap module.
@@ -121,7 +117,7 @@
bootstrapper.buildProject( new File( basedir ), true );
- ModelReader mavenCliModel = bootstrapper.getCachedModel(
"org.apache.maven", "maven-cli" );
+ Model mavenCliModel = bootstrapper.getCachedModel( "org.apache.maven",
"maven-cli" );
File installation = new File( basedir, "bootstrap/target/installation"
);
createInstallation( installation, mavenCliModel );
@@ -225,7 +221,7 @@
}
}
- private void createInstallation( File dir, ModelReader mavenCliModel )
+ private void createInstallation( File dir, Model mavenCliModel )
throws IOException, CommandLineException, InterruptedException
{
FileUtils.deleteDirectory( dir );
@@ -243,7 +239,7 @@
File bootDirectory = new File( coreDirectory, "boot" );
bootDirectory.mkdir();
- for ( Iterator i = mavenCliModel.getDependencies().iterator();
i.hasNext(); )
+ for ( Iterator i = mavenCliModel.getAllDependencies().iterator();
i.hasNext(); )
{
Dependency dep = (Dependency) i.next();
Modified:
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/Bootstrap.java
URL:
http://svn.apache.org/viewvc/maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/Bootstrap.java?rev=420408&r1=420407&r2=420408&view=diff
==============================================================================
---
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/Bootstrap.java
(original)
+++
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/Bootstrap.java
Sun Jul 9 20:31:30 2006
@@ -23,6 +23,7 @@
import org.apache.maven.bootstrap.download.OnlineArtifactDownloader;
import org.apache.maven.bootstrap.download.RepositoryMetadata;
import org.apache.maven.bootstrap.model.Dependency;
+import org.apache.maven.bootstrap.model.Model;
import org.apache.maven.bootstrap.model.ModelReader;
import org.apache.maven.bootstrap.model.Plugin;
import org.apache.maven.bootstrap.model.Repository;
@@ -35,7 +36,6 @@
import org.apache.maven.bootstrap.util.SimpleArgumentParser;
import org.xml.sax.SAXException;
-import javax.xml.parsers.ParserConfigurationException;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
@@ -58,6 +58,8 @@
import java.util.Set;
import java.util.TimeZone;
+import javax.xml.parsers.ParserConfigurationException;
+
/**
* Main class for bootstrap module.
*
@@ -136,7 +138,7 @@
String basedir = System.getProperty( "user.dir" );
File pom = new File( basedir, "pom.xml" );
- ModelReader reader = readModel( resolver, pom, true );
+ Model reader = readModel( resolver, pom, true );
File jar = buildProject( reader );
if ( "install".equals( goal ) )
@@ -144,7 +146,7 @@
install( reader, pom, jar );
}
- for ( Iterator i = reader.getDependencies().iterator(); i.hasNext(); )
+ for ( Iterator i = reader.getAllDependencies().iterator();
i.hasNext(); )
{
Dependency dep = (Dependency) i.next();
@@ -154,16 +156,16 @@
stats( fullStart, new Date() );
}
- private void install( ModelReader reader, File pom, File jar )
+ private void install( Model model, File pom, File jar )
throws Exception
{
- String artifactId = reader.getArtifactId();
+ String artifactId = model.getArtifactId();
- String version = reader.getVersion();
+ String version = model.getVersion();
- String groupId = reader.getGroupId();
+ String groupId = model.getGroupId();
- String type = reader.getPackaging();
+ String type = model.getPackaging();
Repository localRepository = resolver.getLocalRepository();
File file = localRepository.getArtifactFile(
@@ -173,7 +175,7 @@
FileUtils.copyFile( jar, file );
- installPomFile( reader, pom );
+ installPomFile( model, pom );
RepositoryMetadata metadata = new RepositoryMetadata();
metadata.setReleaseVersion( version );
@@ -188,17 +190,17 @@
metadata.write( file );
}
- private void installPomFile( ModelReader reader, File source )
+ private void installPomFile( Model model, File source )
throws IOException
{
- String artifactId = reader.getArtifactId();
+ String artifactId = model.getArtifactId();
- String version = reader.getVersion();
+ String version = model.getVersion();
- String groupId = reader.getGroupId();
+ String groupId = model.getGroupId();
Repository localRepository = resolver.getLocalRepository();
- File pom = localRepository.getMetadataFile( groupId, artifactId,
version, reader.getPackaging(),
+ File pom = localRepository.getMetadataFile( groupId, artifactId,
version, model.getPackaging(),
artifactId + "-" + version
+ ".pom" );
System.out.println( "Installing POM: " + pom );
@@ -209,9 +211,9 @@
private void cacheModels( File basedir, ArtifactResolver resolver )
throws IOException, ParserConfigurationException, SAXException
{
- ModelReader reader = readModel( resolver, new File( basedir, "pom.xml"
), false );
+ Model model = readModel( resolver, new File( basedir, "pom.xml" ),
false );
- for ( Iterator i = reader.getModules().iterator(); i.hasNext(); )
+ for ( Iterator i = model.getModules().iterator(); i.hasNext(); )
{
String module = (String) i.next();
@@ -232,19 +234,19 @@
File file = new File( basedir, "pom.xml" );
- ModelReader reader = readModel( resolver, file, true );
+ Model model = readModel( resolver, file, true );
- String key = reader.getGroupId() + ":" + reader.getArtifactId() + ":"
+ reader.getPackaging();
+ String key = model.getGroupId() + ":" + model.getArtifactId() + ":" +
model.getPackaging();
if ( inProgress.contains( key ) )
{
return;
}
- if ( reader.getPackaging().equals( "pom" ) )
+ if ( model.getPackaging().equals( "pom" ) )
{
if ( buildModules )
{
- for ( Iterator i = reader.getModules().iterator();
i.hasNext(); )
+ for ( Iterator i = model.getModules().iterator(); i.hasNext();
)
{
String module = (String) i.next();
@@ -262,15 +264,15 @@
return;
}
- buildProject( reader );
+ buildProject( model );
inProgress.remove( key );
}
- private File buildProject( ModelReader reader )
+ private File buildProject( Model model )
throws Exception
{
- File basedir = reader.getProjectFile().getParentFile();
+ File basedir = model.getProjectFile().getParentFile();
String sources = new File( basedir, "src/main/java"
).getAbsolutePath();
@@ -283,11 +285,11 @@
System.out.println( "Analysing dependencies ..." );
- for ( Iterator i = reader.getDependencies().iterator(); i.hasNext(); )
+ for ( Iterator i = model.getAllDependencies().iterator(); i.hasNext();
)
{
Dependency dep = (Dependency) i.next();
- dep.getRepositories().addAll( reader.getRemoteRepositories() );
+ dep.getRepositories().addAll( model.getRepositories() );
if ( modelFileCache.containsKey( dep.getId() ) )
{
@@ -295,7 +297,7 @@
}
}
- resolver.downloadDependencies( reader.getDependencies() );
+ resolver.downloadDependencies( model.getAllDependencies() );
System.out.println();
System.out.println();
@@ -312,11 +314,11 @@
//
----------------------------------------------------------------------
File generatedSourcesDirectory = null;
- if ( reader.getPlugins().containsKey( MODELLO_PLUGIN_ID ) )
+ if ( model.getPlugins().containsKey( MODELLO_PLUGIN_ID ) )
{
- Plugin plugin = (Plugin) reader.getPlugins().get(
MODELLO_PLUGIN_ID );
+ Plugin plugin = (Plugin) model.getPlugins().get( MODELLO_PLUGIN_ID
);
- File model = new File( basedir, (String)
plugin.getConfiguration().get( "model" ) );
+ File modelFile = new File( basedir, (String)
plugin.getConfiguration().get( "model" ) );
System.out.println( "Model exists!" );
@@ -337,10 +339,10 @@
Dependency dependency = plugin.asDependencyPom();
resolver.downloadDependencies( Collections.singletonList(
dependency ) );
File artifactFile = resolver.getArtifactFile( dependency );
- ModelReader pluginReader = readModel( resolver, artifactFile, true
);
+ Model pluginReader = readModel( resolver, artifactFile, true );
List dependencies = new ArrayList();
- for ( Iterator i = pluginReader.getDependencies().iterator();
i.hasNext(); )
+ for ( Iterator i = pluginReader.getAllDependencies().iterator();
i.hasNext(); )
{
Dependency d = (Dependency) i.next();
if ( !d.getGroupId().equals( "org.apache.maven" ) )
@@ -353,11 +355,11 @@
System.out.println( "Generating model bindings for version \'" +
modelVersion + "\' from '" + model + "'" );
- generateModelloSources( model.getAbsolutePath(), "java",
generatedSourcesDirectory, modelVersion, "false",
+ generateModelloSources( modelFile.getAbsolutePath(), "java",
generatedSourcesDirectory, modelVersion, "false",
classLoader );
- generateModelloSources( model.getAbsolutePath(), "xpp3-reader",
generatedSourcesDirectory, modelVersion,
+ generateModelloSources( modelFile.getAbsolutePath(),
"xpp3-reader", generatedSourcesDirectory, modelVersion,
"false", classLoader );
- generateModelloSources( model.getAbsolutePath(), "xpp3-writer",
generatedSourcesDirectory, modelVersion,
+ generateModelloSources( modelFile.getAbsolutePath(),
"xpp3-writer", generatedSourcesDirectory, modelVersion,
"false", classLoader );
}
@@ -367,7 +369,7 @@
System.out.println( "Compiling sources ..." );
- compile( reader.getDependencies(), sources, classes, null,
generatedSourcesDirectory, Dependency.SCOPE_COMPILE,
+ compile( model.getAllDependencies(), sources, classes, null,
generatedSourcesDirectory, Dependency.SCOPE_COMPILE,
resolver );
//
----------------------------------------------------------------------
@@ -382,32 +384,32 @@
// Create JAR
//
----------------------------------------------------------------------
- File jarFile = createJar( new File( basedir, "pom.xml" ), classes,
buildDir, reader );
+ File jarFile = createJar( new File( basedir, "pom.xml" ), classes,
buildDir, model );
System.out.println( "Packaging " + jarFile + " ..." );
- resolver.addBuiltArtifact( reader.getGroupId(),
reader.getArtifactId(), "jar", jarFile );
+ resolver.addBuiltArtifact( model.getGroupId(), model.getArtifactId(),
"jar", jarFile );
line();
return jarFile;
}
- private ModelReader readModel( ArtifactResolver resolver, File file,
boolean resolveTransitiveDependencies )
+ private Model readModel( ArtifactResolver resolver, File file, boolean
resolveTransitiveDependencies )
throws ParserConfigurationException, SAXException, IOException
{
ModelReader reader = new ModelReader( resolver,
resolveTransitiveDependencies );
- reader.parse( file );
+ Model model = reader.parseModel( file, Collections.EMPTY_LIST );
- resolver.addBuiltArtifact( reader.getGroupId(),
reader.getArtifactId(), "pom", file );
+ resolver.addBuiltArtifact( model.getGroupId(), model.getArtifactId(),
"pom", file );
- String id = reader.getGroupId() + ":" + reader.getArtifactId();
+ String id = model.getGroupId() + ":" + model.getArtifactId();
modelFileCache.put( id, file );
- modelCache.put( id, reader );
+ modelCache.put( id, model );
- return reader;
+ return model;
}
private void line()
@@ -415,7 +417,7 @@
System.out.println(
"------------------------------------------------------------------" );
}
- private File createJar( File pomFile, String classes, String buildDir,
ModelReader reader )
+ private File createJar( File pomFile, String classes, String buildDir,
Model reader )
throws Exception
{
JarMojo jarMojo = new JarMojo();
@@ -753,9 +755,9 @@
return cl;
}
- public ModelReader getCachedModel( String groupId, String artifactId )
+ public Model getCachedModel( String groupId, String artifactId )
{
- return (ModelReader) modelCache.get( groupId + ":" + artifactId );
+ return (Model) modelCache.get( groupId + ":" + artifactId );
}
public File getArtifactFile( Dependency dep )
Modified:
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/DownloadFailedException.java
URL:
http://svn.apache.org/viewvc/maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/DownloadFailedException.java?rev=420408&r1=420407&r2=420408&view=diff
==============================================================================
---
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/DownloadFailedException.java
(original)
+++
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/DownloadFailedException.java
Sun Jul 9 20:31:30 2006
@@ -5,6 +5,7 @@
import java.util.List;
import org.apache.maven.bootstrap.model.Dependency;
+import org.apache.maven.bootstrap.model.Model;
/*
* Copyright 2001-2005 The Apache Software Foundation.
@@ -49,7 +50,7 @@
for ( Iterator it = dep.getChain().iterator(); it.hasNext(); )
{
- Dependency chainDep = (Dependency) it.next();
+ Model chainDep = (Model) it.next();
msg += "\n\t" + chainDep;
repos.addAll( chainDep.getRepositories() );
}
Modified:
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/OnlineArtifactDownloader.java
URL:
http://svn.apache.org/viewvc/maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/OnlineArtifactDownloader.java?rev=420408&r1=420407&r2=420408&view=diff
==============================================================================
---
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/OnlineArtifactDownloader.java
(original)
+++
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/download/OnlineArtifactDownloader.java
Sun Jul 9 20:31:30 2006
@@ -17,6 +17,7 @@
*/
import org.apache.maven.bootstrap.model.Dependency;
+import org.apache.maven.bootstrap.model.Model;
import org.apache.maven.bootstrap.model.Repository;
import org.apache.maven.bootstrap.util.FileUtils;
import org.apache.maven.bootstrap.util.StringUtils;
@@ -129,7 +130,7 @@
for ( Iterator i = dep.getChain().iterator(); i.hasNext(); )
{
- repositories.addAll( ( (Dependency) i.next() ).getRepositories() );
+ repositories.addAll( ( (Model) i.next() ).getRepositories() );
}
for ( Iterator i = repositories.iterator(); i.hasNext(); )
Modified:
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/Dependency.java
URL:
http://svn.apache.org/viewvc/maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/Dependency.java?rev=420408&r1=420407&r2=420408&view=diff
==============================================================================
---
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/Dependency.java
(original)
+++
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/Dependency.java
Sun Jul 9 20:31:30 2006
@@ -16,8 +16,6 @@
* limitations under the License.
*/
-import java.util.ArrayList;
-import java.util.Collection;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@@ -27,22 +25,14 @@
*
* @version $Id$
*/
-public class Dependency
+public class Dependency extends Model
{
private String id;
- private String version;
-
private String url;
private String jar;
- private String artifactId;
-
- private String groupId;
-
- private String type = "jar";
-
private String scope = SCOPE_COMPILE;
private String resolvedVersion;
@@ -57,23 +47,18 @@
private Set exclusions = new HashSet();
- private List chain;
-
- private Collection repositories;
-
public Dependency( List chain )
{
- this.chain = new ArrayList( chain );
- this.chain.add( this );
+ super(chain);
}
public Dependency( String groupId, String artifactId, String version,
String type, List chain )
{
this( chain );
- this.version = version;
- this.artifactId = artifactId;
- this.groupId = groupId;
- this.type = type;
+ setVersion( version );
+ setArtifactId( artifactId );
+ setGroupId( groupId );
+ setType( type );
}
public void setId( String id )
@@ -91,16 +76,6 @@
return id;
}
- public void setGroupId( String groupId )
- {
- this.groupId = groupId;
- }
-
- public String getGroupId()
- {
- return groupId;
- }
-
public String getArtifactDirectory()
{
if ( isValid( getGroupId() ) )
@@ -111,16 +86,6 @@
return getId();
}
- public String getArtifactId()
- {
- return artifactId;
- }
-
- public void setArtifactId( String artifactId )
- {
- this.artifactId = artifactId;
- }
-
public String getArtifact()
{
// If the jar name has been explicty set then use that. This
@@ -152,16 +117,6 @@
return artifact;
}
- public void setVersion( String version )
- {
- this.version = version;
- }
-
- public String getVersion()
- {
- return version;
- }
-
public void setJar( String jar )
{
// This is a check we need because of the jelly interpolation
@@ -202,12 +157,12 @@
public String getType()
{
- return type;
+ return getPackaging();
}
public void setType( String type )
{
- this.type = type;
+ setPackaging( type );
}
private boolean isValid( String value )
@@ -216,61 +171,11 @@
}
- public Collection getRepositories()
- {
- if ( repositories == null )
- repositories = new ArrayList();
-
- return repositories;
- }
-
public String toString()
{
- return getId() + ":" + getVersion() + ":" + getType();
+ return "Dependency[" + getId() + ":" + getVersion() + ":" + getType()
+ "]";
}
- public int hashCode()
- {
- int result = 17;
- result = 37 * result + groupId.hashCode();
- result = 37 * result + artifactId.hashCode();
- result = 37 * result + type.hashCode();
- result = 37 * result + version.hashCode();
- return result;
- }
-
- public boolean equals( Object o )
- {
- if ( o == this )
- {
- return true;
- }
-
- if ( !( o instanceof Dependency ) )
- {
- return false;
- }
-
- Dependency d = (Dependency) o;
-
- if ( !d.getGroupId().equals( groupId ) )
- {
- return false;
- }
- else if ( !d.getArtifactId().equals( artifactId ) )
- {
- return false;
- }
- else if ( !d.getVersion().equals( version ) )
- {
- return false;
- }
- else if ( !d.getType().equals( type ) )
- {
- return false;
- }
- return true;
- }
public String getConflictId()
{
@@ -306,15 +211,10 @@
return exclusions;
}
- public List getChain()
- {
- return chain;
- }
-
public Dependency getPomDependency()
{
- Dependency dep = new Dependency( groupId, artifactId, version, "pom",
chain );
- dep.repositories = repositories;
+ Dependency dep = new Dependency( getGroupId(), getArtifactId(),
getVersion(), "pom", getChain() );
+ dep.getRepositories().addAll( getRepositories() );
return dep;
}
@@ -326,5 +226,17 @@
public boolean isOptional()
{
return optional;
+ }
+
+ public boolean equals( Object o )
+ {
+ if ( o instanceof Dependency )
+ {
+ return super.equals( o );
+ }
+ else
+ {
+ return false;
+ }
}
}
Added:
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/Model.java
URL:
http://svn.apache.org/viewvc/maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/Model.java?rev=420408&view=auto
==============================================================================
---
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/Model.java
(added)
+++
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/Model.java
Sun Jul 9 20:31:30 2006
@@ -0,0 +1,260 @@
+package org.apache.maven.bootstrap.model;
+
+/*
+ * Copyright 2001-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * Represents a Model.
+ *
+ * @author <a href="mailto:[EMAIL PROTECTED]">Kenney Westerhof</a>
+ *
+ */
+public class Model
+{
+ private Map dependencies = new HashMap();
+
+ Map parentDependencies = new HashMap();
+
+ Map transitiveDependencies = new HashMap();
+
+ private Map plugins = new HashMap();
+
+ private String artifactId;
+
+ private String version;
+
+ private String groupId;
+
+ private String parentGroupId;
+
+ private String parentArtifactId;
+
+ private String parentVersion;
+
+ private String packaging = "jar";
+
+ private File pomFile;
+
+ private List modules = new ArrayList();
+
+ private List resources = new ArrayList();
+
+ private Set repositories = new HashSet();
+
+ Map managedDependencies = new HashMap();
+
+ private List chain;
+
+ public Model()
+ {
+ this.chain = new ArrayList();
+ }
+
+ public Model( List chain )
+ {
+ this.chain = new ArrayList( chain );
+ this.chain.add( this );
+ }
+
+ public String getId()
+ {
+ return groupId + ":" + artifactId + ":" + packaging + ":" + version;
+ }
+
+ public String getArtifactId()
+ {
+ return artifactId;
+ }
+
+ public void setArtifactId( String artifactId )
+ {
+ this.artifactId = artifactId;
+ }
+
+ public String getVersion()
+ {
+ return version;
+ }
+
+ public void setVersion( String version )
+ {
+ this.version = version;
+ }
+
+ public String getGroupId()
+ {
+ return groupId;
+ }
+
+ public void setGroupId( String groupId )
+ {
+ this.groupId = groupId;
+ }
+
+ public String getPackaging()
+ {
+ return packaging;
+ }
+
+ public String getParentArtifactId()
+ {
+ return parentArtifactId;
+ }
+
+ public void setParentArtifactId( String artifactId )
+ {
+ this.parentArtifactId = artifactId;
+ }
+
+ public void setPackaging( String packaging )
+ {
+ this.packaging = packaging;
+ }
+
+ public String getParentGroupId()
+ {
+ return parentGroupId;
+ }
+
+ public void setParentGroupId( String groupId )
+ {
+ this.parentGroupId = groupId;
+ }
+
+ public String getParentVersion()
+ {
+ return parentVersion;
+ }
+
+ public void setParentVersion( String version )
+ {
+ this.parentVersion = version;
+ }
+
+ public Map getPlugins()
+ {
+ return plugins;
+ }
+
+ public List getModules()
+ {
+ return modules;
+ }
+
+ public List getResources()
+ {
+ return resources;
+ }
+
+ public File getProjectFile()
+ {
+ return pomFile;
+ }
+
+ public void setPomFile( File file )
+ {
+ this.pomFile = file;
+ }
+
+ public Set getRepositories()
+ {
+ return repositories;
+ }
+
+ public Collection getManagedDependencies()
+ {
+ Map m = new HashMap();
+ m.putAll( managedDependencies );
+ return m.values();
+ }
+
+ public Collection getAllDependencies()
+ {
+ Map m = new HashMap();
+ m.putAll( transitiveDependencies );
+ m.putAll( parentDependencies );
+ m.putAll( dependencies );
+ return m.values();
+ }
+
+ public List getChain()
+ {
+ return chain;
+ }
+
+ public Map getDependencies()
+ {
+ return dependencies;
+ }
+
+ public String toString()
+ {
+ return "Model[" + getId() + "]";
+ }
+
+ public int hashCode()
+ {
+ int result = 17;
+ result = 37 * result + groupId.hashCode();
+ result = 37 * result + artifactId.hashCode();
+ result = 37 * result + packaging.hashCode();
+ result = 37 * result + version.hashCode();
+ return result;
+ }
+
+ public boolean equals( Object o )
+ {
+ if ( o == this )
+ {
+ return true;
+ }
+
+ if ( !( o instanceof Model ) )
+ {
+ return false;
+ }
+
+ Model d = (Model) o;
+
+ if ( !d.getGroupId().equals( groupId ) )
+ {
+ return false;
+ }
+ else if ( !d.getArtifactId().equals( artifactId ) )
+ {
+ return false;
+ }
+ else if ( !d.getVersion().equals( version ) )
+ {
+ return false;
+ }
+ else if ( !d.getPackaging().equals( packaging ) )
+ {
+ return false;
+ }
+ return true;
+ }
+
+}
Propchange:
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/Model.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/Model.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified:
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/ModelReader.java
URL:
http://svn.apache.org/viewvc/maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/ModelReader.java?rev=420408&r1=420407&r2=420408&view=diff
==============================================================================
---
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/ModelReader.java
(original)
+++
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/ModelReader.java
Sun Jul 9 20:31:30 2006
@@ -17,22 +17,16 @@
*/
import org.apache.maven.bootstrap.download.ArtifactResolver;
-import org.apache.maven.bootstrap.download.DownloadFailedException;
import org.apache.maven.bootstrap.util.AbstractReader;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import javax.xml.parsers.ParserConfigurationException;
+
import java.io.File;
import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collection;
import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
import java.util.List;
-import java.util.Map;
import java.util.Set;
/**
@@ -45,27 +39,7 @@
{
private int depth = 0;
- private String artifactId;
-
- private String version;
-
- private String groupId;
-
- private String packaging = "jar";
-
- private String parentGroupId;
-
- private String parentArtifactId;
-
- private String parentVersion;
-
- private Map dependencies = new HashMap();
-
- private List repositories = new ArrayList();
-
- private List resources = new ArrayList();
-
- private Map managedDependencies = new HashMap();
+ private Model model;
private Dependency currentDependency;
@@ -87,12 +61,6 @@
private final ArtifactResolver resolver;
- private static Set inProgress = new HashSet();
-
- private Map parentDependencies = new HashMap();
-
- private Map transitiveDependencies = new HashMap();
-
private boolean insideDependencyManagement = false;
private boolean insideReleases;
@@ -105,12 +73,8 @@
private final Set excluded;
- private final List chain;
-
private final String inheritedScope;
- private Map plugins = new HashMap();
-
private boolean insideConfiguration;
private boolean insideBuild;
@@ -119,15 +83,13 @@
private boolean insidePlugin;
- private List modules = new ArrayList();
-
public ModelReader( ArtifactResolver resolver, boolean
resolveTransitiveDependencies )
{
- this( resolver, null, resolveTransitiveDependencies,
Collections.EMPTY_SET, Collections.EMPTY_LIST );
+ this( resolver, null, resolveTransitiveDependencies,
Collections.EMPTY_SET );
}
public ModelReader( ArtifactResolver resolver, String inheritedScope,
boolean resolveTransitiveDependencies,
- Set excluded, List chain )
+ Set excluded )
{
this.resolver = resolver;
@@ -136,34 +98,17 @@
this.excluded = excluded;
this.inheritedScope = inheritedScope;
-
- this.chain = chain;
}
- public List getRemoteRepositories()
+ public Model parseModel( File file, List chain )
+ throws ParserConfigurationException, SAXException, IOException
{
- return repositories;
- }
+ this.model = new Model( chain );
+ model.setPomFile( file );
- public Collection getDependencies()
- {
- Map m = new HashMap();
- m.putAll( transitiveDependencies );
- m.putAll( parentDependencies );
- m.putAll( dependencies );
- return m.values();
- }
-
- public Collection getManagedDependencies()
- {
- Map m = new HashMap();
- m.putAll( managedDependencies );
- return m.values();
- }
+ super.parse( file );
- public List getResources()
- {
- return resources;
+ return model;
}
public void startElement( String uri, String localName, String rawName,
Attributes attributes )
@@ -180,9 +125,9 @@
}
else if ( rawName.equals( "dependency" ) )
{
- List newChain =
- Collections.singletonList( new Dependency( groupId,
artifactId, version, packaging, this.chain ) );
- currentDependency = new Dependency( newChain );
+// List newChain = Collections.singletonList( new Dependency(
model.getGroupId(), model.getArtifactId(), model
+// .getVersion(), model.getPackaging(), this.chain ) );
+ currentDependency = new Dependency( model.getChain() );
insideDependency = true;
}
@@ -249,42 +194,42 @@
// support both v3 <extend> and v4 <parent>
if ( rawName.equals( "parent" ) )
{
- if ( parentArtifactId == null || parentArtifactId.trim().length()
== 0 )
+ if ( model.getParentArtifactId() == null ||
model.getParentArtifactId().trim().length() == 0 )
{
throw new SAXException( "Missing required element in <parent>:
artifactId." );
}
- if ( parentGroupId == null || parentGroupId.trim().length() == 0 )
+ if ( model.getParentGroupId() == null ||
model.getParentGroupId().trim().length() == 0 )
{
throw new SAXException( "Missing required element in <parent>:
groupId." );
}
- if ( parentVersion == null || parentVersion.trim().length() == 0 )
+ if ( model.getParentVersion() == null ||
model.getParentVersion().trim().length() == 0 )
{
throw new SAXException( "Missing required element in <parent>:
version." );
}
- if ( groupId == null )
+ if ( model.getGroupId() == null )
{
- groupId = parentGroupId;
+ model.setGroupId( model.getParentGroupId() );
}
- if ( version == null )
+ if ( model.getVersion() == null )
{
- version = parentVersion;
+ model.setVersion( model.getParentVersion() );
}
// actually, these should be transtive (see MNG-77) - but some
projects have circular deps that way
- ModelReader p = retrievePom( parentGroupId, parentArtifactId,
parentVersion, inheritedScope, false,
- excluded, Collections.EMPTY_LIST );
+ Model p = ProjectResolver.retrievePom( resolver,
model.getParentGroupId(), model.getParentArtifactId(),
+ model.getParentVersion(),
inheritedScope, false, excluded, model.getChain()
);//Collections.singletonList( model ) );
- addDependencies( p.getDependencies(), parentDependencies,
inheritedScope, excluded );
+ ProjectResolver.addDependencies( p.getAllDependencies(),
model.parentDependencies, inheritedScope, excluded );
- addDependencies( p.getManagedDependencies(), managedDependencies,
inheritedScope, Collections.EMPTY_SET );
+ ProjectResolver.addDependencies( p.getManagedDependencies(),
model.managedDependencies, inheritedScope, Collections.EMPTY_SET );
- repositories.addAll( p.getRemoteRepositories() );
+ model.getRepositories().addAll( p.getRepositories() );
- resources.addAll( p.getResources() );
+ model.getResources().addAll( p.getResources() );
insideParent = false;
}
@@ -294,11 +239,11 @@
if ( insideDependencyManagement )
{
- managedDependencies.put( currentDependency.getConflictId(),
currentDependency );
+ model.managedDependencies.put(
currentDependency.getConflictId(), currentDependency );
}
else
{
- dependencies.put( currentDependency.getConflictId(),
currentDependency );
+ model.getDependencies().put(
currentDependency.getConflictId(), currentDependency );
}
}
else if ( rawName.equals( "exclusion" ) )
@@ -312,19 +257,19 @@
}
else if ( rawName.equals( "resource" ) )
{
- resources.add( currentResource );
+ model.getResources().add( currentResource );
insideResource = false;
}
else if ( rawName.equals( "repository" ) )
{
- repositories.add( currentRepository );
+ model.getRepositories().add( currentRepository );
insideRepository = false;
}
else if ( rawName.equals( "plugin" ) )
{
- plugins.put( currentPlugin.getId(), currentPlugin );
+ model.getPlugins().put( currentPlugin.getId(), currentPlugin );
insidePlugin = false;
}
@@ -334,21 +279,21 @@
}
else if ( rawName.equals( "module" ) )
{
- modules.add( getBodyText() );
+ model.getModules().add( getBodyText() );
}
else if ( insideParent )
{
if ( rawName.equals( "groupId" ) )
{
- parentGroupId = getBodyText();
+ model.setParentGroupId( getBodyText() );
}
else if ( rawName.equals( "artifactId" ) )
{
- parentArtifactId = getBodyText();
+ model.setParentArtifactId( getBodyText() );
}
else if ( rawName.equals( "version" ) )
{
- parentVersion = getBodyText();
+ model.setParentVersion( getBodyText() );
}
}
else if ( insideDependency )
@@ -476,27 +421,27 @@
{
if ( rawName.equals( "artifactId" ) )
{
- artifactId = getBodyText();
+ model.setArtifactId( getBodyText() );
}
else if ( rawName.equals( "version" ) )
{
- version = getBodyText();
+ model.setVersion( getBodyText() );
}
else if ( rawName.equals( "groupId" ) )
{
- groupId = getBodyText();
+ model.setGroupId( getBodyText() );
}
else if ( rawName.equals( "packaging" ) )
{
- packaging = getBodyText();
+ model.setPackaging( getBodyText() );
}
}
if ( depth == 1 ) // model / project
{
- resolver.addBuiltArtifact( groupId, artifactId, "pom", pomFile );
+ resolver.addBuiltArtifact( model.getGroupId(),
model.getArtifactId(), "pom", model.getProjectFile() );
- resolveDependencies();
+ ProjectResolver.resolveDependencies( resolver, model,
resolveTransitiveDependencies, inheritedScope, excluded );
}
bodyText = new StringBuffer();
@@ -504,170 +449,4 @@
depth--;
}
- private void resolveDependencies()
- throws SAXException
- {
- for ( Iterator it = dependencies.values().iterator(); it.hasNext(); )
- {
- Dependency dependency = (Dependency) it.next();
-
- if ( !excluded.contains( dependency.getConflictId() ) &&
!dependency.isOptional() )
- {
- if ( !dependency.getScope().equals( Dependency.SCOPE_TEST ) ||
inheritedScope == null )
- {
- if ( dependency.getVersion() == null )
- {
- Dependency managedDependency =
- (Dependency) managedDependencies.get(
dependency.getConflictId() );
- if ( managedDependency == null )
- {
- throw new NullPointerException( "[" + groupId +
":" + artifactId + ":" + packaging + ":" +
- version + "] " + "Dependency " +
dependency.getConflictId() +
- " is missing a version, and nothing is found
in dependencyManagement. " );
- }
- dependency.setVersion( managedDependency.getVersion()
);
- }
-
- if ( resolveTransitiveDependencies )
- {
- Set excluded = new HashSet( this.excluded );
- excluded.addAll( dependency.getExclusions() );
-
- ModelReader p = retrievePom( dependency.getGroupId(),
dependency.getArtifactId(),
- dependency.getVersion(),
dependency.getScope(),
-
resolveTransitiveDependencies, excluded, dependency.getChain() );
-
- addDependencies( p.getDependencies(),
transitiveDependencies, dependency.getScope(), excluded );
- }
- }
- }
- }
- }
-
- private void addDependencies( Collection dependencies, Map target, String
inheritedScope, Set excluded )
- {
- for ( Iterator i = dependencies.iterator(); i.hasNext(); )
- {
- Dependency d = (Dependency) i.next();
-
- // skip test deps
- if ( !Dependency.SCOPE_TEST.equals( d.getScope() ) )
- {
- // Do we care about runtime here?
- if ( Dependency.SCOPE_TEST.equals( inheritedScope ) )
- {
- d.setScope( Dependency.SCOPE_TEST );
- }
-
- if ( !hasDependency( d, target ) && !excluded.contains(
d.getConflictId() ) && !d.isOptional() )
- {
- if ( !"plexus".equals( d.getGroupId() ) || (
!"plexus-utils".equals( d.getArtifactId() ) &&
- !"plexus-container-default".equals( d.getArtifactId()
) ) )
- {
- target.put( d.getConflictId(), d );
- }
- }
- }
- }
- }
-
- private boolean hasDependency( Dependency d, Map dependencies )
- {
- String conflictId = d.getConflictId();
- if ( dependencies.containsKey( conflictId ) )
- {
- // We only care about pushing in compile scope dependencies I think
- // if not, we'll need to be able to get the original and pick the
appropriate scope
- if ( d.getScope().equals( Dependency.SCOPE_COMPILE ) )
- {
- dependencies.remove( conflictId );
- }
- else
- {
- return true;
- }
- }
- return false;
- }
-
- private ModelReader retrievePom( String groupId, String artifactId, String
version, String inheritedScope,
- boolean resolveTransitiveDependencies,
Set excluded, List chain )
- throws SAXException
- {
- String key = groupId + ":" + artifactId + ":" + version;
-
- if ( inProgress.contains( key ) )
- {
- throw new SAXException( "Circular dependency found, looking for "
+ key + "\nIn progress:" + inProgress );
- }
-
- inProgress.add( key );
-
- ModelReader p = new ModelReader( resolver, inheritedScope,
resolveTransitiveDependencies, excluded, chain );
-
- try
- {
- Dependency pom = new Dependency( groupId, artifactId, version,
"pom", chain );
- pom.getRepositories().addAll( repositories );
- for ( Iterator it = chain.iterator(); it.hasNext(); )
- {
- pom.getRepositories().addAll( ( (Dependency) it.next()
).getRepositories() );
- }
-
- resolver.downloadDependencies( Collections.singletonList( pom ) );
-
- p.parse( resolver.getArtifactFile( pom ) );
- }
- catch ( IOException e )
- {
- throw new SAXException( "Error getting parent POM", e );
- }
- catch ( ParserConfigurationException e )
- {
- throw new SAXException( "Error getting parent POM", e );
- }
- catch ( DownloadFailedException e )
- {
- throw new SAXException( "Error getting parent POM", e );
- }
-
- inProgress.remove( key );
-
- return p;
- }
-
- public String getArtifactId()
- {
- return artifactId;
- }
-
- public String getVersion()
- {
- return version;
- }
-
- public String getGroupId()
- {
- return groupId;
- }
-
- public String getPackaging()
- {
- return packaging;
- }
-
- public Map getPlugins()
- {
- return plugins;
- }
-
- public List getModules()
- {
- return modules;
- }
-
- public File getProjectFile()
- {
- return pomFile;
- }
}
Added:
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/ProjectResolver.java
URL:
http://svn.apache.org/viewvc/maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/ProjectResolver.java?rev=420408&view=auto
==============================================================================
---
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/ProjectResolver.java
(added)
+++
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/ProjectResolver.java
Sun Jul 9 20:31:30 2006
@@ -0,0 +1,181 @@
+package org.apache.maven.bootstrap.model;
+
+/*
+ * Copyright 2001-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import org.apache.maven.bootstrap.download.ArtifactResolver;
+import org.apache.maven.bootstrap.download.DownloadFailedException;
+import org.xml.sax.SAXException;
+
+import javax.xml.parsers.ParserConfigurationException;
+
+import java.io.IOException;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ *
+ * Utility class for resolving Model dependencies.
+ *
+ */
+public final class ProjectResolver
+{
+ private static Set inProgress = new HashSet();
+
+ private ProjectResolver()
+ {
+
+ }
+
+ public static void resolveDependencies( ArtifactResolver resolver, Model
model,
+ boolean
resolveTransitiveDependencies, String inheritedScope, Set excluded )
+ throws SAXException
+ {
+ for ( Iterator it = model.getDependencies().values().iterator();
it.hasNext(); )
+ {
+ Dependency dependency = (Dependency) it.next();
+
+ if ( !excluded.contains( dependency.getConflictId() ) &&
!dependency.isOptional() )
+ {
+ if ( !dependency.getScope().equals( Dependency.SCOPE_TEST ) ||
inheritedScope == null )
+ {
+ if ( dependency.getVersion() == null )
+ {
+ Dependency managedDependency = (Dependency)
model.managedDependencies.get( dependency
+ .getConflictId() );
+
+ if ( managedDependency == null )
+ {
+ throw new NullPointerException( "[" +
model.getId() + "] " + "Dependency "
+ + dependency.getConflictId()
+ + " is missing a version, and nothing is found
in dependencyManagement. " );
+ }
+ dependency.setVersion( managedDependency.getVersion()
);
+ }
+
+ if ( resolveTransitiveDependencies )
+ {
+ Set excluded2 = new HashSet( excluded );
+ excluded2.addAll( dependency.getExclusions() );
+
+ Model p = retrievePom( resolver,
dependency.getGroupId(), dependency.getArtifactId(),
+ dependency.getVersion(),
dependency.getScope(),
+ resolveTransitiveDependencies,
excluded2, dependency.getChain() );
+
+ addDependencies( p.getAllDependencies(),
model.transitiveDependencies, dependency.getScope(),
+ excluded2 );
+ }
+ }
+ }
+ }
+ }
+
+ public static void addDependencies( Collection dependencies, Map target,
String inheritedScope, Set excluded )
+ {
+ for ( Iterator i = dependencies.iterator(); i.hasNext(); )
+ {
+ Dependency d = (Dependency) i.next();
+
+ // skip test deps
+ if ( !Dependency.SCOPE_TEST.equals( d.getScope() ) )
+ {
+ // Do we care about runtime here?
+ if ( Dependency.SCOPE_TEST.equals( inheritedScope ) )
+ {
+ d.setScope( Dependency.SCOPE_TEST );
+ }
+
+ if ( !hasDependency( d, target ) && !excluded.contains(
d.getConflictId() ) && !d.isOptional() )
+ {
+ if ( !"plexus".equals( d.getGroupId() )
+ || ( !"plexus-utils".equals( d.getArtifactId() ) &&
!"plexus-container-default".equals( d
+ .getArtifactId() ) ) )
+ {
+ target.put( d.getConflictId(), d );
+ }
+ }
+ }
+ }
+ }
+
+ private static boolean hasDependency( Dependency d, Map dependencies )
+ {
+ String conflictId = d.getConflictId();
+ if ( dependencies.containsKey( conflictId ) )
+ {
+ // We only care about pushing in compile scope dependencies I think
+ // if not, we'll need to be able to get the original and pick the
appropriate scope
+ if ( d.getScope().equals( Dependency.SCOPE_COMPILE ) )
+ {
+ dependencies.remove( conflictId );
+ }
+ else
+ {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ public static Model retrievePom( ArtifactResolver resolver, String
groupId, String artifactId, String version,
+ String inheritedScope, boolean
resolveTransitiveDependencies, Set excluded,
+ List chain )
+ throws SAXException
+ {
+ String key = groupId + ":" + artifactId + ":" + version;
+
+ if ( inProgress.contains( key ) )
+ {
+ throw new SAXException( "Circular dependency found, looking for "
+ key + "\nIn progress:" + inProgress );
+ }
+
+ inProgress.add( key );
+
+ ModelReader p = new ModelReader( resolver, inheritedScope,
resolveTransitiveDependencies, excluded );
+
+ try
+ {
+ // download the POM
+ Dependency pom = new Dependency( groupId, artifactId, version,
"pom", chain );
+
+ resolver.downloadDependencies( Collections.singletonList( pom ) );
+
+ // Parse the POM from the local repository into a model
+ Model model = p.parseModel( resolver.getArtifactFile( pom ), chain
);
+
+ inProgress.remove( key );
+
+ return model;
+ }
+ catch ( IOException e )
+ {
+ throw new SAXException( "Error getting parent POM", e );
+ }
+ catch ( ParserConfigurationException e )
+ {
+ throw new SAXException( "Error getting parent POM", e );
+ }
+ catch ( DownloadFailedException e )
+ {
+ throw new SAXException( "Error getting parent POM", e );
+ }
+ }
+}
Propchange:
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/ProjectResolver.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/model/ProjectResolver.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified:
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/util/AbstractReader.java
URL:
http://svn.apache.org/viewvc/maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/util/AbstractReader.java?rev=420408&r1=420407&r2=420408&view=diff
==============================================================================
---
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/util/AbstractReader.java
(original)
+++
maven/components/trunk/bootstrap/bootstrap-mini/src/main/java/org/apache/maven/bootstrap/util/AbstractReader.java
Sun Jul 9 20:31:30 2006
@@ -40,13 +40,9 @@
{
private SAXParserFactory saxFactory;
- protected File pomFile;
-
public void parse( File file )
throws ParserConfigurationException, SAXException, IOException
{
- pomFile = file;
-
saxFactory = SAXParserFactory.newInstance();
SAXParser parser = saxFactory.newSAXParser();