You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2011/08/23 23:45:04 UTC
svn commit: r1160893 - in /maven/sandbox/trunk/mae:
mae-booter/src/main/java/org/apache/maven/mae/app/
mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/
mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/proj...
Author: jdcasey
Date: Tue Aug 23 21:45:04 2011
New Revision: 1160893
URL: http://svn.apache.org/viewvc?rev=1160893&view=rev
Log:
initialize remote repositories before attempting to load projects
Modified:
maven/sandbox/trunk/mae/mae-booter/src/main/java/org/apache/maven/mae/app/AbstractMAEApplication.java
maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/DefaultProjectLoader.java
maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/session/DefaultSessionInjector.java
Modified: maven/sandbox/trunk/mae/mae-booter/src/main/java/org/apache/maven/mae/app/AbstractMAEApplication.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mae/mae-booter/src/main/java/org/apache/maven/mae/app/AbstractMAEApplication.java?rev=1160893&r1=1160892&r2=1160893&view=diff
==============================================================================
--- maven/sandbox/trunk/mae/mae-booter/src/main/java/org/apache/maven/mae/app/AbstractMAEApplication.java (original)
+++ maven/sandbox/trunk/mae/mae-booter/src/main/java/org/apache/maven/mae/app/AbstractMAEApplication.java Tue Aug 23 21:45:04 2011
@@ -19,6 +19,11 @@
package org.apache.maven.mae.app;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
import org.apache.log4j.Logger;
import org.apache.maven.mae.MAEException;
import org.apache.maven.mae.boot.embed.MAEEmbedder;
@@ -35,16 +40,10 @@ import org.apache.maven.mae.internal.con
import org.apache.maven.mae.internal.container.VirtualInstance;
import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
/**
- * {@link MAEApplication} implementation that provides support for loading a full Maven component
- * environment, complete with {@link MAELibrary}'s, {@link ComponentSelector} and {@link InstanceRegistry}.
- * This class supervises the assembly of the environment, giving the application developer an easy
- * way to inject the behavior he needs.
+ * {@link MAEApplication} implementation that provides support for loading a full Maven component environment, complete
+ * with {@link MAELibrary}'s, {@link ComponentSelector} and {@link InstanceRegistry}. This class supervises the assembly
+ * of the environment, giving the application developer an easy way to inject the behavior he needs.
*
* @author John Casey
*/
@@ -66,9 +65,8 @@ public abstract class AbstractMAEApplica
}
/**
- * Programmatically add a new {@link MAELibrary} instance, beyond those that are automatically
- * detected via the /META-INF/services/org.apache.maven.mae.conf.MAELibrary files on the
- * classpath.
+ * Programmatically add a new {@link MAELibrary} instance, beyond those that are automatically detected via the
+ * /META-INF/services/org.apache.maven.mae.conf.MAELibrary files on the classpath.
*/
protected final AbstractMAEApplication withLibrary( final MAELibrary library )
{
@@ -78,6 +76,7 @@ public abstract class AbstractMAEApplica
/**
* {@inheritDoc}
+ *
* @see org.apache.maven.mae.app.MAEApplication#load()
*/
@Override
@@ -88,21 +87,19 @@ public abstract class AbstractMAEApplica
}
/**
- * Carry out the application loading process. This means:
- * <br/>
+ * Carry out the application loading process. This means: <br/>
* <ul>
- * <li>Create a new {@link MAEEmbedderBuilder}</li>
- * <li>Add to that an {@link InstanceLibraryLoader} to handle libraries that were
- * programmatically added here</li>
- * <li>Call {@link AbstractMAEApplication#beforeLoading()}</li>
- * <li>Call {@link AbstractMAEApplication#configureBuilder(MAEEmbedderBuilder)} to allow
- * fine-tuning of the {@link MAEEmbedderBuilder} instance</li>
- * <li>Call {@link MAEEmbedderBuilder#build} to create an instance of {@link MAEEmbedder}</li>
- * <li>For each instance in the {@link InstanceRegistry}, lookup via {@link MAEEmbedder#container()}
- * to ensure injectable component dependencies are filled</li>
- * <li>Call {@link AbstractMAEApplication#afterLoading()}</li>
- * <li>Set the loaded flag, which will prevent this process from repeating for an application
- * that has already been loaded</li>
+ * <li>Create a new {@link MAEEmbedderBuilder}</li>
+ * <li>Add to that an {@link InstanceLibraryLoader} to handle libraries that were programmatically added here</li>
+ * <li>Call {@link AbstractMAEApplication#beforeLoading()}</li>
+ * <li>Call {@link AbstractMAEApplication#configureBuilder(MAEEmbedderBuilder)} to allow fine-tuning of the
+ * {@link MAEEmbedderBuilder} instance</li>
+ * <li>Call {@link MAEEmbedderBuilder#build} to create an instance of {@link MAEEmbedder}</li>
+ * <li>For each instance in the {@link InstanceRegistry}, lookup via {@link MAEEmbedder#container()} to ensure
+ * injectable component dependencies are filled</li>
+ * <li>Call {@link AbstractMAEApplication#afterLoading()}</li>
+ * <li>Set the loaded flag, which will prevent this process from repeating for an application that has already been
+ * loaded</li>
* </ul>
*/
private synchronized final MAEApplication doLoad()
@@ -113,7 +110,8 @@ public abstract class AbstractMAEApplica
return this;
}
- final MAEEmbedderBuilder builder = new MAEEmbedderBuilder().withLibraryLoader( new InstanceLibraryLoader( additionalLibraries ) );
+ final MAEEmbedderBuilder builder =
+ new MAEEmbedderBuilder().withLibraryLoader( new InstanceLibraryLoader( additionalLibraries ) );
configureBuilder( builder );
@@ -139,8 +137,8 @@ public abstract class AbstractMAEApplica
}
/**
- * Register a new, external component instance for injection into other components, or to
- * have components injected into it.
+ * Register a new, external component instance for injection into other components, or to have components injected
+ * into it.
*/
@SuppressWarnings( { "unchecked", "rawtypes" } )
protected final void withComponentInstance( final Object instance )
@@ -149,9 +147,9 @@ public abstract class AbstractMAEApplica
}
/**
- * Register a new {@link VirtualInstance}, which allows the component environment to bind its
- * requirements without actually having access to the component instance. The instance itself
- * will be injected into the {@link VirtualInstance} later.
+ * Register a new {@link VirtualInstance}, which allows the component environment to bind its requirements without
+ * actually having access to the component instance. The instance itself will be injected into the
+ * {@link VirtualInstance} later.
*/
protected final <C> void withVirtualComponent( final Class<C> virtualClass )
{
@@ -167,8 +165,8 @@ public abstract class AbstractMAEApplica
}
/**
- * Register a new, external component instance to make it available for injection, or to allow
- * other components to be injected into it.
+ * Register a new, external component instance to make it available for injection, or to allow other components to
+ * be injected into it.
*/
protected final <C> void withComponentInstance( final ComponentKey<C> componentKey, final C instance )
{
@@ -176,9 +174,9 @@ public abstract class AbstractMAEApplica
}
/**
- * Register a new {@link VirtualInstance}, which allows the component environment to bind its
- * requirements without actually having access to the component instance. The instance itself
- * will be injected into the {@link VirtualInstance} later.
+ * Register a new {@link VirtualInstance}, which allows the component environment to bind its requirements without
+ * actually having access to the component instance. The instance itself will be injected into the
+ * {@link VirtualInstance} later.
*/
protected final <C> void withVirtualComponent( final ComponentKey<C> virtualKey )
{
@@ -194,8 +192,8 @@ public abstract class AbstractMAEApplica
}
/**
- * Fine-tune the {@link MAEEmbedderBuilder} instance before it is used to create the
- * {@link MAEEmbedder} that will be used to load the application components.
+ * Fine-tune the {@link MAEEmbedderBuilder} instance before it is used to create the {@link MAEEmbedder} that will
+ * be used to load the application components.
*/
protected void configureBuilder( final MAEEmbedderBuilder builder )
throws MAEException
@@ -203,10 +201,10 @@ public abstract class AbstractMAEApplica
}
/**
- * Hook allowing application developers access to the {@link MAEEmbedder} just after the registered
- * external component instances have been injected, but before loading is considered complete.
+ * Hook allowing application developers access to the {@link MAEEmbedder} just after the registered external
+ * component instances have been injected, but before loading is considered complete.
*/
- protected void afterLoading(MAEEmbedder embedder)
+ protected void afterLoading( final MAEEmbedder embedder )
throws MAEException
{
}
@@ -278,7 +276,7 @@ public abstract class AbstractMAEApplica
if ( provider == null )
{
throw new IllegalStateException( "Your application booter: " + getClass().getName()
- + " must implement either getVersion() or getVersionProvider()." );
+ + " must implement either getVersion() or getVersionProvider()." );
}
return provider.getVersion();
Modified: maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/DefaultProjectLoader.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/DefaultProjectLoader.java?rev=1160893&r1=1160892&r2=1160893&view=diff
==============================================================================
--- maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/DefaultProjectLoader.java (original)
+++ maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/DefaultProjectLoader.java Tue Aug 23 21:45:04 2011
@@ -85,6 +85,7 @@ public class DefaultProjectLoader
final File... rootPoms )
throws ProjectToolsException
{
+ sessionInjector.getRemoteRepositories( session );
final ProjectBuildingRequest pbr = sessionInjector.getProjectBuildingRequest( session );
try
@@ -217,6 +218,7 @@ public class DefaultProjectLoader
public MavenProject buildProjectInstance( final File pomFile, final ProjectToolsSession session )
throws ProjectToolsException
{
+ sessionInjector.getRemoteRepositories( session );
final ProjectBuildingRequest pbr = sessionInjector.getProjectBuildingRequest( session );
try
Modified: maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/session/DefaultSessionInjector.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/session/DefaultSessionInjector.java?rev=1160893&r1=1160892&r2=1160893&view=diff
==============================================================================
--- maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/session/DefaultSessionInjector.java (original)
+++ maven/sandbox/trunk/mae/mae-components/mae-project-tools/src/main/java/org/apache/maven/mae/project/session/DefaultSessionInjector.java Tue Aug 23 21:45:04 2011
@@ -60,6 +60,8 @@ public class DefaultSessionInjector
public synchronized ProjectBuildingRequest getProjectBuildingRequest( final ProjectToolsSession session )
throws ProjectToolsException
{
+ getRemoteRepositories( session );
+
ProjectBuildingRequest pbr = session.getProjectBuildingRequest();
try
{