You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wagon-commits@maven.apache.org by br...@apache.org on 2008/05/14 08:37:05 UTC
svn commit: r656120 - in /maven/wagon/trunk/wagon-providers:
wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/
wagon-http-lightweight/src/test/java/org/apache/maven/wagon/providers/http/
wagon-http/src/test/java/org/apache/mav...
Author: brett
Date: Tue May 13 23:37:05 2008
New Revision: 656120
URL: http://svn.apache.org/viewvc?rev=656120&view=rev
Log:
[WAGONHTTP-16] ensure that HTTP providers work if the url has a trailing slash
Submitted by: Nathan Beyer
Modified:
maven/wagon/trunk/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpWagon.java
maven/wagon/trunk/wagon-providers/wagon-http-lightweight/src/test/java/org/apache/maven/wagon/providers/http/LightweightHttpWagonTest.java
maven/wagon/trunk/wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HttpWagonTest.java
Modified: maven/wagon/trunk/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpWagon.java
URL: http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpWagon.java?rev=656120&r1=656119&r2=656120&view=diff
==============================================================================
--- maven/wagon/trunk/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpWagon.java (original)
+++ maven/wagon/trunk/wagon-providers/wagon-http-lightweight/src/main/java/org/apache/maven/wagon/providers/http/LightweightHttpWagon.java Tue May 13 23:37:05 2008
@@ -72,13 +72,31 @@
*/
private boolean useCache;
+ /**
+ * Builds a complete URL string from the repository URL and the relative path passed.
+ *
+ * @param path the relative path
+ * @return the complete URL
+ */
+ private String buildUrl( String path )
+ {
+ final String repoUrl = getRepository().getUrl();
+
+ if ( repoUrl.charAt( repoUrl.length() - 1 ) != '/' )
+ {
+ return repoUrl + '/' + path;
+ }
+
+ return repoUrl + path;
+ }
+
public void fillInputData( InputData inputData )
throws TransferFailedException, ResourceDoesNotExistException
{
Resource resource = inputData.getResource();
try
{
- URL url = resolveResourceURL( resource );
+ URL url = new URL( buildUrl( resource.getName() ) );
URLConnection urlConnection = url.openConnection();
urlConnection.setRequestProperty( "Accept-Encoding", "gzip" );
if ( !useCache )
@@ -116,7 +134,7 @@
Resource resource = outputData.getResource();
try
{
- URL url = resolveResourceURL( resource );
+ URL url = new URL( buildUrl( resource.getName() ) );
putConnection = (HttpURLConnection) url.openConnection();
putConnection.setRequestMethod( "PUT" );
@@ -129,24 +147,6 @@
}
}
- private URL resolveResourceURL( Resource resource )
- throws MalformedURLException
- {
- String repositoryUrl = getRepository().getUrl();
-
- URL url;
- if ( repositoryUrl.endsWith( "/" ) )
- {
- url = new URL( repositoryUrl + resource.getName() );
- }
- else
- {
- url = new URL( repositoryUrl + "/" + resource.getName() );
- }
- return url;
- }
-
-
public void put( File source, String resourceName )
throws TransferFailedException, ResourceDoesNotExistException, AuthorizationException
{
@@ -154,7 +154,7 @@
try
{
- String url = getRepository().getUrl() + "/" + resourceName;
+ String url = buildUrl( resourceName );
int statusCode = putConnection.getResponseCode();
switch ( statusCode )
@@ -269,7 +269,7 @@
destinationDirectory += "/";
}
- String url = getRepository().getUrl() + "/" + destinationDirectory;
+ String url = buildUrl( destinationDirectory );
Resource resource = new Resource( destinationDirectory );
@@ -294,7 +294,7 @@
try
{
- URL url = resolveResourceURL( new Resource(resourceName) );
+ URL url = new URL( buildUrl( new Resource(resourceName).getName() ) );
headConnection = (HttpURLConnection) url.openConnection();
headConnection.setRequestMethod( "HEAD" );
Modified: maven/wagon/trunk/wagon-providers/wagon-http-lightweight/src/test/java/org/apache/maven/wagon/providers/http/LightweightHttpWagonTest.java
URL: http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-http-lightweight/src/test/java/org/apache/maven/wagon/providers/http/LightweightHttpWagonTest.java?rev=656120&r1=656119&r2=656120&view=diff
==============================================================================
--- maven/wagon/trunk/wagon-providers/wagon-http-lightweight/src/test/java/org/apache/maven/wagon/providers/http/LightweightHttpWagonTest.java (original)
+++ maven/wagon/trunk/wagon-providers/wagon-http-lightweight/src/test/java/org/apache/maven/wagon/providers/http/LightweightHttpWagonTest.java Tue May 13 23:37:05 2008
@@ -41,7 +41,7 @@
protected String getTestRepositoryUrl()
{
- return "http://localhost:10007";
+ return "http://localhost:10007/";
}
protected void setupWagonTestingFixtures()
Modified: maven/wagon/trunk/wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HttpWagonTest.java
URL: http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HttpWagonTest.java?rev=656120&r1=656119&r2=656120&view=diff
==============================================================================
--- maven/wagon/trunk/wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HttpWagonTest.java (original)
+++ maven/wagon/trunk/wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HttpWagonTest.java Tue May 13 23:37:05 2008
@@ -41,7 +41,7 @@
protected String getTestRepositoryUrl()
{
- return "http://localhost:10007";
+ return "http://localhost:10007/";
}
protected void setupWagonTestingFixtures()
---------------------------------------------------------------------
To unsubscribe, e-mail: wagon-commits-unsubscribe@maven.apache.org
For additional commands, e-mail: wagon-commits-help@maven.apache.org