You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by be...@apache.org on 2010/08/26 21:39:41 UTC
svn commit: r989902 -
/maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
Author: bentmann
Date: Thu Aug 26 19:39:41 2010
New Revision: 989902
URL: http://svn.apache.org/viewvc?rev=989902&view=rev
Log:
o Configured proper user agent
Modified:
maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
Modified: maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
URL: http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java?rev=989902&r1=989901&r2=989902&view=diff
==============================================================================
--- maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java (original)
+++ maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java Thu Aug 26 19:39:41 2010
@@ -16,6 +16,8 @@ package org.apache.maven;
*/
import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
@@ -27,6 +29,7 @@ import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
+import java.util.Properties;
import org.apache.maven.artifact.ArtifactUtils;
import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
@@ -66,8 +69,10 @@ import org.codehaus.plexus.component.ann
import org.codehaus.plexus.component.annotations.Requirement;
import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
import org.codehaus.plexus.logging.Logger;
+import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.util.dag.CycleDetectedException;
+import org.sonatype.aether.ConfigurationProperties;
import org.sonatype.aether.RepositoryEvent;
import org.sonatype.aether.RepositorySystem;
import org.sonatype.aether.RepositorySystemSession;
@@ -329,7 +334,11 @@ public class DefaultMaven
session.setUserProps( request.getUserProperties() );
session.setSystemProps( request.getSystemProperties() );
- session.setConfigProps( request.getSystemProperties() );
+ Map<Object, Object> configProps = new LinkedHashMap<Object, Object>();
+ configProps.put( ConfigurationProperties.USER_AGENT, getUserAgent() );
+ configProps.putAll( request.getSystemProperties() );
+ configProps.putAll( request.getUserProperties() );
+ session.setConfigProps( configProps );
session.setOffline( request.isOffline() );
session.setChecksumPolicy( request.getGlobalChecksumPolicy() );
@@ -445,6 +454,41 @@ public class DefaultMaven
return session;
}
+ private String getUserAgent()
+ {
+ StringBuilder buffer = new StringBuilder( 128 );
+
+ buffer.append( "Apache-Maven/" ).append( getMavenVersion() );
+ buffer.append( " (" );
+ buffer.append( "Java " ).append( System.getProperty( "java.version" ) );
+ buffer.append( "; " );
+ buffer.append( System.getProperty( "os.name" ) ).append( " " ).append( System.getProperty( "os.version" ) );
+ buffer.append( ")" );
+
+ return buffer.toString();
+ }
+
+ private String getMavenVersion()
+ {
+ Properties props = new Properties();
+
+ InputStream is = getClass().getResourceAsStream( "/META-INF/maven/org.apache.maven/maven-core/pom.properties" );
+ if ( is != null )
+ {
+ try
+ {
+ props.load( is );
+ }
+ catch ( IOException e )
+ {
+ logger.debug( "Failed to read Maven version", e );
+ }
+ IOUtil.close( is );
+ }
+
+ return props.getProperty( "version", "unknown-version" );
+ }
+
@SuppressWarnings({"ResultOfMethodCallIgnored"})
private void validateLocalRepository( MavenExecutionRequest request )
throws LocalRepositoryNotAccessibleException