You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm-commits@maven.apache.org by ev...@apache.org on 2008/05/14 22:43:36 UTC
svn commit: r656423 - in
/maven/scm/trunk/maven-scm-providers/maven-scm-provider-bazaar/src:
main/java/org/apache/maven/scm/provider/bazaar/repository/
test/java/org/apache/maven/scm/provider/bazaar/repository/
Author: evenisse
Date: Wed May 14 13:43:35 2008
New Revision: 656423
URL: http://svn.apache.org/viewvc?rev=656423&view=rev
Log:
[SCM-314] Fix support of file URL on windows
Modified:
maven/scm/trunk/maven-scm-providers/maven-scm-provider-bazaar/src/main/java/org/apache/maven/scm/provider/bazaar/repository/BazaarScmProviderRepository.java
maven/scm/trunk/maven-scm-providers/maven-scm-provider-bazaar/src/test/java/org/apache/maven/scm/provider/bazaar/repository/BazaarScmProviderRepositoryTest.java
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-bazaar/src/main/java/org/apache/maven/scm/provider/bazaar/repository/BazaarScmProviderRepository.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-bazaar/src/main/java/org/apache/maven/scm/provider/bazaar/repository/BazaarScmProviderRepository.java?rev=656423&r1=656422&r2=656423&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-bazaar/src/main/java/org/apache/maven/scm/provider/bazaar/repository/BazaarScmProviderRepository.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-bazaar/src/main/java/org/apache/maven/scm/provider/bazaar/repository/BazaarScmProviderRepository.java Wed May 14 13:43:35 2008
@@ -60,8 +60,15 @@
public String getURI()
{
- return protocol + ( needsAuthentication() ? addUser() + addPassword() + addAt() : "" ) + addHost() + addPort() +
- addPath();
+ if ( FILE.equals( protocol ) )
+ {
+ return orgUrl;
+ }
+ else
+ {
+ return protocol + ( needsAuthentication() ? addUser() + addPassword() + addAt() : "" ) + addHost() +
+ addPort() + addPath();
+ }
}
/**
@@ -72,7 +79,7 @@
String msg = null;
- if ( protocol == UNKNOWN )
+ if ( UNKNOWN.equals( protocol ) )
{
msg = "Unknown protocol (URL should start with something like 'sftp://' or 'file://'";
}
@@ -138,7 +145,7 @@
private String parseUrl( String url )
{
- if ( protocol == UNKNOWN )
+ if ( UNKNOWN.equals( protocol ) )
{
return url;
}
@@ -157,7 +164,7 @@
private String parseHostAndPort( String url )
{
- if ( protocol != FILE )
+ if ( !FILE.equals( protocol ) )
{
String[] split = url.split( ":" );
if ( split.length == 2 )
@@ -216,7 +223,7 @@
private String parsePath( String url )
{
- if ( protocol == FILE )
+ if ( FILE.equals( protocol ) )
{
//Use OS dependent path separator
url = StringUtils.replace( url, "/", File.separator );
@@ -231,6 +238,9 @@
}
url = tmpFile2.exists() ? url2 : url;
+
+ //Use URL path separator
+ url = StringUtils.replace( url, File.separator, "/" );
}
return url;
@@ -268,7 +278,7 @@
private boolean needsAuthentication()
{
- return protocol == SFTP || protocol == FTP || protocol == HTTPS || protocol == AFTP;
+ return SFTP.equals( protocol ) || FTP.equals( protocol ) || HTTPS.equals( protocol ) || AFTP.equals( protocol );
}
public String toString()
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-bazaar/src/test/java/org/apache/maven/scm/provider/bazaar/repository/BazaarScmProviderRepositoryTest.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-bazaar/src/test/java/org/apache/maven/scm/provider/bazaar/repository/BazaarScmProviderRepositoryTest.java?rev=656423&r1=656422&r2=656423&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-bazaar/src/test/java/org/apache/maven/scm/provider/bazaar/repository/BazaarScmProviderRepositoryTest.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-bazaar/src/test/java/org/apache/maven/scm/provider/bazaar/repository/BazaarScmProviderRepositoryTest.java Wed May 14 13:43:35 2008
@@ -38,21 +38,30 @@
//1. Test *nix like paths
String url = "file:///home/username/dev/maven";
BazaarScmProviderRepository repo = new BazaarScmProviderRepository( url );
+ assertEquals( url, repo.getURI() );
assertNull( repo.validateURI() );
//2. Test windows like paths (with slash)
url = "file://C:/Documents and Settings/username/dev/maven";
repo = new BazaarScmProviderRepository( url );
+ assertEquals( url, repo.getURI() );
+ assertNull( repo.validateURI() );
+
+ url = "file:///c:/program files/cygwin/tmp/test";
+ repo = new BazaarScmProviderRepository( url );
+ assertEquals( url, repo.getURI() );
assertNull( repo.validateURI() );
//3. Test windows like paths (with backslash)
url = "file://C:\\Documents and Settings\\username\\dev\\maven";
repo = new BazaarScmProviderRepository( url );
+ assertEquals( url, repo.getURI() );
assertNull( repo.validateURI() );
//4. Test invalid file url
url = "file:/C:\\Documents and Settings\\username\\dev\\maven";
repo = new BazaarScmProviderRepository( url );
+ assertEquals( url, repo.getURI() );
assertNotNull( repo.validateURI() );
}