Skip to content

Commit

Permalink
SEAMFORGE-209
Browse files Browse the repository at this point in the history
  • Loading branch information
gastaldi committed Jul 5, 2011
1 parent ebc444a commit 0fc103a
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 17 deletions.
@@ -0,0 +1,28 @@
package org.jboss.forge.maven;

import org.sonatype.aether.repository.Authentication;

/**
* Repository Utils
*
* @author George Gastaldi <gegastaldi@gmail.com>
*
*/
public final class RepositoryUtils
{
private RepositoryUtils()
{
}

public static org.sonatype.aether.repository.Proxy convertFromMavenProxy(org.apache.maven.settings.Proxy proxy)
{
org.sonatype.aether.repository.Proxy result = null;
if (proxy != null)
{
Authentication auth = new Authentication(proxy.getUsername(), proxy.getPassword());
result = new org.sonatype.aether.repository.Proxy(proxy.getProtocol(), proxy.getHost(), proxy.getPort(), auth);
}
return result;
}

}
Expand Up @@ -13,6 +13,7 @@
import org.apache.maven.settings.Settings;
import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
import org.jboss.forge.ForgeEnvironment;
import org.jboss.forge.maven.RepositoryUtils;
import org.jboss.forge.maven.facets.MavenContainer;
import org.jboss.forge.parser.java.util.Strings;
import org.jboss.forge.project.ProjectModelException;
Expand All @@ -29,7 +30,6 @@
import org.sonatype.aether.artifact.Artifact;
import org.sonatype.aether.collection.CollectRequest;
import org.sonatype.aether.repository.ArtifactRepository;
import org.sonatype.aether.repository.Authentication;
import org.sonatype.aether.repository.LocalRepository;
import org.sonatype.aether.repository.RemoteRepository;
import org.sonatype.aether.repository.RepositoryPolicy;
Expand Down Expand Up @@ -274,7 +274,7 @@ private RemoteRepository convertToMavenRepo(final DependencyRepository repo)
Proxy activeProxy = settings.getActiveProxy();
if (activeProxy != null)
{
remoteRepository.setProxy(convertFromMavenProxy(activeProxy));
remoteRepository.setProxy(RepositoryUtils.convertFromMavenProxy(activeProxy));
}
return remoteRepository;
}
Expand Down Expand Up @@ -339,16 +339,4 @@ public Artifact dependencyToMavenArtifact(final Dependency dep)
dep.getPackagingType() == null ? "jar" : dep.getPackagingType(), dep.getVersion());
return artifact;
}

private static org.sonatype.aether.repository.Proxy convertFromMavenProxy(org.apache.maven.settings.Proxy proxy)
{
org.sonatype.aether.repository.Proxy result = null;
if (proxy != null)
{
Authentication auth = new Authentication(proxy.getUsername(), proxy.getPassword());
result = new org.sonatype.aether.repository.Proxy(proxy.getProtocol(), proxy.getHost(), proxy.getPort(), auth);
}
return result;
}

}
Expand Up @@ -38,6 +38,7 @@
import org.apache.maven.project.ProjectBuilder;
import org.apache.maven.project.ProjectBuildingRequest;
import org.apache.maven.repository.internal.MavenRepositorySystemSession;
import org.apache.maven.settings.Proxy;
import org.apache.maven.settings.Settings;
import org.apache.maven.settings.building.DefaultSettingsBuilderFactory;
import org.apache.maven.settings.building.DefaultSettingsBuildingRequest;
Expand All @@ -49,9 +50,11 @@
import org.codehaus.plexus.PlexusContainer;
import org.codehaus.plexus.logging.console.ConsoleLoggerManager;
import org.jboss.forge.ForgeEnvironment;
import org.jboss.forge.maven.RepositoryUtils;
import org.jboss.forge.project.ProjectModelException;
import org.jboss.forge.shell.util.OSUtils;
import org.sonatype.aether.impl.internal.SimpleLocalRepositoryManager;
import org.sonatype.aether.util.repository.DefaultProxySelector;

/**
* @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a>
Expand Down Expand Up @@ -107,6 +110,12 @@ public ProjectBuildingRequest getRequest()
request.setRemoteRepositories(new ArrayList<ArtifactRepository>());

MavenRepositorySystemSession repositorySession = new MavenRepositorySystemSession();
Proxy activeProxy = settings.getActiveProxy();
if (activeProxy != null) {
DefaultProxySelector dps = new DefaultProxySelector();
dps.add(RepositoryUtils.convertFromMavenProxy(activeProxy), activeProxy.getNonProxyHosts());
repositorySession.setProxySelector(dps);
}
repositorySession.setLocalRepositoryManager(new SimpleLocalRepositoryManager(settings.getLocalRepository()));
repositorySession.setOffline(environment.isOnline() == false);

Expand Down
Expand Up @@ -36,7 +36,7 @@ public void testAddDependencyFromManagedParent() throws IOException
Parent parent = new Parent();
parent.setArtifactId("weld-api-bom");
parent.setGroupId("org.jboss.weld");
parent.setVersion("1.0");
parent.setVersion("1.1.Final");
Model pom = mvnFacet.getPOM();
pom.setParent(parent);
mvnFacet.setPOM(pom);
Expand Down Expand Up @@ -76,7 +76,7 @@ public void testAddDependencyFromLocalAndManagedParent() throws IOException
Parent parent = new Parent();
parent.setArtifactId("weld-api-bom");
parent.setGroupId("org.jboss.weld");
parent.setVersion("1.0");
parent.setVersion("1.1.Final");
Model pom = mvnFacet.getPOM();
pom.setParent(parent);
mvnFacet.setPOM(pom);
Expand Down Expand Up @@ -109,7 +109,7 @@ public void testAddDependencyFromManagedImport() throws IOException
{
initializeJavaProject();
// commons-httpclient v 3.1 is in the depManagement section of the weld-api-bom
getShell().execute("project add-managed-dependency org.jboss.weld:weld-api-bom:1.0:import:pom");
getShell().execute("project add-managed-dependency org.jboss.weld:weld-api-bom:1.1.Final:import:pom");

MavenCoreFacet mvnFacet = getProject().getFacet(MavenCoreFacet.class);

Expand Down

0 comments on commit 0fc103a

Please sign in to comment.