You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2011/11/18 01:47:09 UTC
svn commit: r1203448 - in /maven/scm/trunk: ./
maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/
maven-scm-api/src/main/java/org/apache/maven/scm/provider/
maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/
maven-...
Author: olamy
Date: Fri Nov 18 00:47:08 2011
New Revision: 1203448
URL: http://svn.apache.org/viewvc?rev=1203448&view=rev
Log:
[SCM-645] add a command to get various informations (branches, tag) from remote scm server
impl for svn.
Added:
maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/
maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/AbstractRemoteInfoCommand.java (with props)
maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/RemoteInfoScmResult.java (with props)
maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/
maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommand.java (with props)
maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/
maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/RemoteInfoCommandTest.java (with props)
Modified:
maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/provider/AbstractScmProvider.java
maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/provider/ScmProvider.java
maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/pom.xml
maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/SvnExeScmProvider.java
maven/scm/trunk/maven-scm-test/src/main/java/org/apache/maven/scm/provider/ScmProviderStub.java
maven/scm/trunk/pom.xml
Added: maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/AbstractRemoteInfoCommand.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/AbstractRemoteInfoCommand.java?rev=1203448&view=auto
==============================================================================
--- maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/AbstractRemoteInfoCommand.java (added)
+++ maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/AbstractRemoteInfoCommand.java Fri Nov 18 00:47:08 2011
@@ -0,0 +1,47 @@
+package org.apache.maven.scm.command.remoteinfo;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.maven.scm.CommandParameters;
+import org.apache.maven.scm.ScmException;
+import org.apache.maven.scm.ScmFileSet;
+import org.apache.maven.scm.ScmResult;
+import org.apache.maven.scm.command.AbstractCommand;
+import org.apache.maven.scm.provider.ScmProviderRepository;
+
+/**
+ * @author Olivier Lamy
+ * @since 1.6
+ */
+public abstract class AbstractRemoteInfoCommand
+ extends AbstractCommand
+{
+
+ public abstract RemoteInfoScmResult executeRemoteInfoCommand( ScmProviderRepository repository, ScmFileSet fileSet,
+ CommandParameters parameters )
+ throws ScmException;
+
+ @Override
+ protected ScmResult executeCommand( ScmProviderRepository repository, ScmFileSet fileSet,
+ CommandParameters parameters )
+ throws ScmException
+ {
+ return executeRemoteInfoCommand( repository, fileSet, parameters );
+ }
+}
Propchange: maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/AbstractRemoteInfoCommand.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/AbstractRemoteInfoCommand.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/RemoteInfoScmResult.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/RemoteInfoScmResult.java?rev=1203448&view=auto
==============================================================================
--- maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/RemoteInfoScmResult.java (added)
+++ maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/RemoteInfoScmResult.java Fri Nov 18 00:47:08 2011
@@ -0,0 +1,77 @@
+package org.apache.maven.scm.command.remoteinfo;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.maven.scm.ScmResult;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @author Olivier Lamy
+ * @since 1.6
+ */
+public class RemoteInfoScmResult
+ extends ScmResult
+{
+
+ /**
+ * depending on scm informations can be different
+ * svn: branch name / remote url
+ */
+ private Map<String, String> branches = new HashMap<String, String>();
+
+ /**
+ * depending on scm informations can be different
+ * svn: branch name / remote url
+ */
+ private Map<String, String> tags = new HashMap<String, String>();
+
+ public RemoteInfoScmResult( String commandLine, String providerMessage, String commandOutput, boolean success )
+ {
+ super( commandLine, providerMessage, commandOutput, success );
+ }
+
+ public RemoteInfoScmResult( String commandLine, Map<String, String> branches, Map<String, String> tags )
+ {
+ super( commandLine, null, null, true );
+ this.branches = branches;
+ this.tags = tags;
+ }
+
+ public Map<String, String> getBranches()
+ {
+ return branches;
+ }
+
+ public void setBranches( Map<String, String> branches )
+ {
+ this.branches = branches;
+ }
+
+ public Map<String, String> getTags()
+ {
+ return tags;
+ }
+
+ public void setTags( Map<String, String> tags )
+ {
+ this.tags = tags;
+ }
+}
Propchange: maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/RemoteInfoScmResult.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/remoteinfo/RemoteInfoScmResult.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified: maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/provider/AbstractScmProvider.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/provider/AbstractScmProvider.java?rev=1203448&r1=1203447&r2=1203448&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/provider/AbstractScmProvider.java (original)
+++ maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/provider/AbstractScmProvider.java Fri Nov 18 00:47:08 2011
@@ -42,6 +42,7 @@ import org.apache.maven.scm.command.info
import org.apache.maven.scm.command.list.ListScmResult;
import org.apache.maven.scm.command.login.LoginScmResult;
import org.apache.maven.scm.command.mkdir.MkdirScmResult;
+import org.apache.maven.scm.command.remoteinfo.RemoteInfoScmResult;
import org.apache.maven.scm.command.remove.RemoveScmResult;
import org.apache.maven.scm.command.status.StatusScmResult;
import org.apache.maven.scm.command.tag.TagScmResult;
@@ -74,27 +75,35 @@ public abstract class AbstractScmProvide
//
// ----------------------------------------------------------------------
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public String getScmSpecificFilename()
{
return null;
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public String sanitizeTagName( String tag )
{
/* by default, we assume all tags are valid. */
return tag;
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public boolean validateTagName( String tag )
{
/* by default, we assume all tags are valid. */
return true;
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public List<String> validateScmUrl( String scmSpecificUrl, char delimiter )
{
List<String> messages = new ArrayList<String>();
@@ -111,7 +120,9 @@ public abstract class AbstractScmProvide
return messages;
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public boolean requiresEditMode()
{
return false;
@@ -121,14 +132,18 @@ public abstract class AbstractScmProvide
// Scm Implementation
// ----------------------------------------------------------------------
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public AddScmResult add( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
return add( repository, fileSet, (String) null );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public AddScmResult add( ScmRepository repository, ScmFileSet fileSet, String message )
throws ScmException
{
@@ -151,19 +166,23 @@ public abstract class AbstractScmProvide
throw new NoSuchCommandScmException( "add" );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public BranchScmResult branch( ScmRepository repository, ScmFileSet fileSet, String branchName )
throws ScmException
{
return branch( repository, fileSet, branchName, new ScmBranchParameters() );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public BranchScmResult branch( ScmRepository repository, ScmFileSet fileSet, String branchName, String message )
throws ScmException
{
ScmBranchParameters scmBranchParameters = new ScmBranchParameters();
-
+
if ( StringUtils.isNotEmpty( message ) )
{
scmBranchParameters.setMessage( message );
@@ -171,7 +190,7 @@ public abstract class AbstractScmProvide
return branch( repository, fileSet, branchName, scmBranchParameters );
}
-
+
public BranchScmResult branch( ScmRepository repository, ScmFileSet fileSet, String branchName,
ScmBranchParameters scmBranchParameters )
throws ScmException
@@ -179,13 +198,13 @@ public abstract class AbstractScmProvide
login( repository, fileSet );
CommandParameters parameters = new CommandParameters();
-
+
parameters.setString( CommandParameter.BRANCH_NAME, branchName );
parameters.setScmBranchParameters( CommandParameter.SCM_BRANCH_PARAMETERS, scmBranchParameters );
return branch( repository.getProviderRepository(), fileSet, parameters );
- }
+ }
protected BranchScmResult branch( ScmProviderRepository repository, ScmFileSet fileSet,
CommandParameters parameters )
@@ -194,7 +213,9 @@ public abstract class AbstractScmProvide
throw new NoSuchCommandScmException( "branch" );
}
- /** {@inheritDoc}
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate,
@@ -206,6 +227,7 @@ public abstract class AbstractScmProvide
/**
* {@inheritDoc}
+ *
* @deprecated
*/
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate,
@@ -222,7 +244,9 @@ public abstract class AbstractScmProvide
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate,
int numDays, ScmBranch branch )
throws ScmException
@@ -230,7 +254,9 @@ public abstract class AbstractScmProvide
return changeLog( repository, fileSet, startDate, endDate, numDays, branch, null );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate,
int numDays, ScmBranch branch, String datePattern )
throws ScmException
@@ -253,7 +279,9 @@ public abstract class AbstractScmProvide
}
- /** {@inheritDoc}
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, String startTag, String endTag )
@@ -262,7 +290,9 @@ public abstract class AbstractScmProvide
return changeLog( repository, fileSet, startTag, endTag, null );
}
- /** {@inheritDoc}
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, String startTag, String endTag,
@@ -285,7 +315,9 @@ public abstract class AbstractScmProvide
return changeLog( repository, fileSet, startRevision, endRevision, null );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion,
ScmVersion endVersion )
throws ScmException
@@ -293,7 +325,9 @@ public abstract class AbstractScmProvide
return changeLog( repository, fileSet, startVersion, endVersion, null );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion,
ScmVersion endVersion, String datePattern )
throws ScmException
@@ -319,7 +353,9 @@ public abstract class AbstractScmProvide
}
- /** {@inheritDoc}
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public CheckInScmResult checkIn( ScmRepository repository, ScmFileSet fileSet, String tag, String message )
@@ -335,14 +371,18 @@ public abstract class AbstractScmProvide
return checkIn( repository, fileSet, scmVersion, message );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckInScmResult checkIn( ScmRepository repository, ScmFileSet fileSet, String message )
throws ScmException
{
return checkIn( repository, fileSet, (ScmVersion) null, message );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckInScmResult checkIn( ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion,
String message )
throws ScmException
@@ -366,7 +406,9 @@ public abstract class AbstractScmProvide
}
- /** {@inheritDoc}
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public CheckOutScmResult checkOut( ScmRepository repository, ScmFileSet fileSet, String tag )
@@ -375,7 +417,9 @@ public abstract class AbstractScmProvide
return checkOut( repository, fileSet, tag, true );
}
- /** {@inheritDoc}
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public CheckOutScmResult checkOut( ScmRepository repository, ScmFileSet fileSet, String tag, boolean recursive )
@@ -391,28 +435,36 @@ public abstract class AbstractScmProvide
return checkOut( repository, fileSet, scmVersion, recursive );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckOutScmResult checkOut( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
return checkOut( repository, fileSet, (ScmVersion) null, true );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckOutScmResult checkOut( ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion )
throws ScmException
{
return checkOut( repository, fileSet, scmVersion, true );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckOutScmResult checkOut( ScmRepository repository, ScmFileSet fileSet, boolean recursive )
throws ScmException
{
return checkOut( repository, fileSet, (ScmVersion) null, recursive );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckOutScmResult checkOut( ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion,
boolean recursive )
throws ScmException
@@ -435,7 +487,9 @@ public abstract class AbstractScmProvide
throw new NoSuchCommandScmException( "checkout" );
}
- /** {@inheritDoc}
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public DiffScmResult diff( ScmRepository repository, ScmFileSet fileSet, String startRevision, String endRevision )
@@ -457,7 +511,9 @@ public abstract class AbstractScmProvide
return diff( repository, fileSet, startVersion, endVersion );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public DiffScmResult diff( ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion,
ScmVersion endVersion )
throws ScmException
@@ -479,7 +535,9 @@ public abstract class AbstractScmProvide
throw new NoSuchCommandScmException( "diff" );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public EditScmResult edit( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
@@ -501,7 +559,9 @@ public abstract class AbstractScmProvide
return new EditScmResult( "", null, null, true );
}
- /** {@inheritDoc}
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public ExportScmResult export( ScmRepository repository, ScmFileSet fileSet, String tag )
@@ -510,7 +570,9 @@ public abstract class AbstractScmProvide
return export( repository, fileSet, tag, null );
}
- /** {@inheritDoc}
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public ExportScmResult export( ScmRepository repository, ScmFileSet fileSet, String tag, String outputDirectory )
@@ -526,21 +588,27 @@ public abstract class AbstractScmProvide
return export( repository, fileSet, scmVersion, outputDirectory );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ExportScmResult export( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
return export( repository, fileSet, (ScmVersion) null, null );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ExportScmResult export( ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion )
throws ScmException
{
return export( repository, fileSet, scmVersion, null );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ExportScmResult export( ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion,
String outputDirectory )
throws ScmException
@@ -563,7 +631,9 @@ public abstract class AbstractScmProvide
throw new NoSuchCommandScmException( "export" );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ListScmResult list( ScmRepository repository, ScmFileSet fileSet, boolean recursive, String tag )
throws ScmException
{
@@ -577,7 +647,9 @@ public abstract class AbstractScmProvide
return list( repository, fileSet, recursive, scmVersion );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ListScmResult list( ScmRepository repository, ScmFileSet fileSet, boolean recursive, ScmVersion scmVersion )
throws ScmException
{
@@ -603,7 +675,7 @@ public abstract class AbstractScmProvide
* @param parameters
* @return The list of files in the repository
* @throws NoSuchCommandScmException unless overriden by subclass
- * @throws ScmException if any
+ * @throws ScmException if any
*/
protected ListScmResult list( ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters )
throws ScmException
@@ -611,25 +683,27 @@ public abstract class AbstractScmProvide
throw new NoSuchCommandScmException( "list" );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public MkdirScmResult mkdir( ScmRepository repository, ScmFileSet fileSet, String message, boolean createInLocal )
throws ScmException
{
login( repository, fileSet );
CommandParameters parameters = new CommandParameters();
-
- if( message == null )
+
+ if ( message == null )
{
message = "";
- if( !createInLocal )
+ if ( !createInLocal )
{
getLogger().warn( "Commit message is empty!" );
}
}
-
+
parameters.setString( CommandParameter.MESSAGE, message );
-
+
parameters.setString( CommandParameter.SCM_MKDIR_CREATE_IN_LOCAL, Boolean.toString( createInLocal ) );
return mkdir( repository.getProviderRepository(), fileSet, parameters );
@@ -637,7 +711,7 @@ public abstract class AbstractScmProvide
/**
* Create directory/directories in the repository.
- *
+ *
* @param repository
* @param fileSet
* @param parameters
@@ -649,7 +723,7 @@ public abstract class AbstractScmProvide
{
throw new NoSuchCommandScmException( "mkdir" );
}
-
+
private void login( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
@@ -667,7 +741,9 @@ public abstract class AbstractScmProvide
return new LoginScmResult( null, null, null, true );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public RemoveScmResult remove( ScmRepository repository, ScmFileSet fileSet, String message )
throws ScmException
{
@@ -687,7 +763,9 @@ public abstract class AbstractScmProvide
throw new NoSuchCommandScmException( "remove" );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public StatusScmResult status( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
@@ -705,14 +783,18 @@ public abstract class AbstractScmProvide
throw new NoSuchCommandScmException( "status" );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public TagScmResult tag( ScmRepository repository, ScmFileSet fileSet, String tagName )
throws ScmException
{
return tag( repository, fileSet, tagName, new ScmTagParameters() );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public TagScmResult tag( ScmRepository repository, ScmFileSet fileSet, String tagName, String message )
throws ScmException
{
@@ -727,15 +809,18 @@ public abstract class AbstractScmProvide
parameters.setString( CommandParameter.MESSAGE, message );
}
- ScmTagParameters scmTagParameters = new ScmTagParameters(message);
-
+ ScmTagParameters scmTagParameters = new ScmTagParameters( message );
+
parameters.setScmTagParameters( CommandParameter.SCM_TAG_PARAMETERS, scmTagParameters );
-
- return tag( repository.getProviderRepository(), fileSet, parameters);
+
+ return tag( repository.getProviderRepository(), fileSet, parameters );
}
-
- /** {@inheritDoc} */
- public TagScmResult tag( ScmRepository repository, ScmFileSet fileSet, String tagName, ScmTagParameters scmTagParameters )
+
+ /**
+ * {@inheritDoc}
+ */
+ public TagScmResult tag( ScmRepository repository, ScmFileSet fileSet, String tagName,
+ ScmTagParameters scmTagParameters )
throws ScmException
{
login( repository, fileSet );
@@ -747,7 +832,7 @@ public abstract class AbstractScmProvide
parameters.setScmTagParameters( CommandParameter.SCM_TAG_PARAMETERS, scmTagParameters );
return tag( repository.getProviderRepository(), fileSet, parameters );
- }
+ }
protected TagScmResult tag( ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters )
throws ScmException
@@ -755,7 +840,9 @@ public abstract class AbstractScmProvide
throw new NoSuchCommandScmException( "tag" );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UnEditScmResult unedit( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
@@ -778,7 +865,9 @@ public abstract class AbstractScmProvide
return new UnEditScmResult( "", null, null, true );
}
- /** {@inheritDoc}
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag )
@@ -787,7 +876,9 @@ public abstract class AbstractScmProvide
return update( repository, fileSet, tag, true );
}
- /** {@inheritDoc}
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag, boolean runChangelog )
@@ -796,28 +887,36 @@ public abstract class AbstractScmProvide
return update( repository, fileSet, tag, "", runChangelog );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
return update( repository, fileSet, (ScmVersion) null, true );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion )
throws ScmException
{
return update( repository, fileSet, scmVersion, true );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, boolean runChangelog )
throws ScmException
{
return update( repository, fileSet, (ScmVersion) null, "", runChangelog );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion,
boolean runChangelog )
throws ScmException
@@ -825,7 +924,9 @@ public abstract class AbstractScmProvide
return update( repository, fileSet, scmVersion, "", runChangelog );
}
- /** {@inheritDoc}
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag, String datePattern )
@@ -834,7 +935,9 @@ public abstract class AbstractScmProvide
return update( repository, fileSet, tag, datePattern, true );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion,
String datePattern )
throws ScmException
@@ -876,7 +979,9 @@ public abstract class AbstractScmProvide
return update( repository.getProviderRepository(), fileSet, parameters );
}
- /** {@inheritDoc}
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag, Date lastUpdate )
@@ -885,14 +990,19 @@ public abstract class AbstractScmProvide
return update( repository, fileSet, tag, lastUpdate, null );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion,
Date lastUpdate )
throws ScmException
{
return update( repository, fileSet, scmVersion, lastUpdate, null );
}
- /** {@inheritDoc}
+
+ /**
+ * {@inheritDoc}
+ *
* @deprecated
*/
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag, Date lastUpdate,
@@ -909,7 +1019,9 @@ public abstract class AbstractScmProvide
return update( repository, fileSet, scmBranch, lastUpdate, datePattern );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, ScmVersion scmVersion, Date lastUpdate,
String datePattern )
throws ScmException
@@ -939,7 +1051,9 @@ public abstract class AbstractScmProvide
throw new NoSuchCommandScmException( "update" );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public BlameScmResult blame( ScmRepository repository, ScmFileSet fileSet, String filename )
throws ScmException
{
@@ -947,29 +1061,37 @@ public abstract class AbstractScmProvide
CommandParameters parameters = new CommandParameters();
- parameters.setString( CommandParameter.FILE, filename);
-
+ parameters.setString( CommandParameter.FILE, filename );
+
return blame( repository.getProviderRepository(), fileSet, parameters );
}
- protected BlameScmResult blame( ScmProviderRepository repository, ScmFileSet fileSet,
- CommandParameters parameters )
+ protected BlameScmResult blame( ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters )
throws ScmException
{
throw new NoSuchCommandScmException( "blame" );
}
-
+
public InfoScmResult info( ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters )
throws ScmException
{
return null;
}
+ public RemoteInfoScmResult remoteInfo( ScmProviderRepository repository, ScmFileSet fileSet,
+ CommandParameters parameters )
+ throws ScmException
+ {
+ return null;
+ }
+
// ----------------------------------------------------------------------
//
// ----------------------------------------------------------------------
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public void addListener( ScmLogger logger )
{
logDispatcher.addListener( logger );
@@ -980,7 +1102,9 @@ public abstract class AbstractScmProvide
return logDispatcher;
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ScmProviderRepository makeProviderScmRepository( File path )
throws ScmRepositoryException, UnknownRepositoryStructure
{
Modified: maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/provider/ScmProvider.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/provider/ScmProvider.java?rev=1203448&r1=1203447&r2=1203448&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/provider/ScmProvider.java (original)
+++ maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/provider/ScmProvider.java Fri Nov 18 00:47:08 2011
@@ -38,6 +38,7 @@ import org.apache.maven.scm.command.expo
import org.apache.maven.scm.command.info.InfoScmResult;
import org.apache.maven.scm.command.list.ListScmResult;
import org.apache.maven.scm.command.mkdir.MkdirScmResult;
+import org.apache.maven.scm.command.remoteinfo.RemoteInfoScmResult;
import org.apache.maven.scm.command.remove.RemoveScmResult;
import org.apache.maven.scm.command.status.StatusScmResult;
import org.apache.maven.scm.command.tag.TagScmResult;
@@ -139,9 +140,9 @@ public interface ScmProvider
* @param fileSet the files to branch. Implementations can also give the changes
* from the {@link org.apache.maven.scm.ScmFileSet#getBasedir()} downwards.
* @param branchName the branch name to apply to the files
- * @deprecated use {@link #branch(ScmRepository, ScmFileSet, String, String, ScmBranchParameters)}
* @return
* @throws ScmException if any
+ * @deprecated use {@link #branch(ScmRepository, ScmFileSet, String, String, ScmBranchParameters)}
*/
BranchScmResult branch( ScmRepository repository, ScmFileSet fileSet, String branchName )
throws ScmException;
@@ -154,9 +155,9 @@ public interface ScmProvider
* from the {@link org.apache.maven.scm.ScmFileSet#getBasedir()} downwards.
* @param branchName the branch name to apply to the files
* @param message the commit message used for the tag creation
- * @deprecated use {@link #branch(ScmRepository, ScmFileSet, String, String, ScmBranchParameters)}
* @return
* @throws ScmException if any
+ * @deprecated use {@link #branch(ScmRepository, ScmFileSet, String, String, ScmBranchParameters)}
*/
BranchScmResult branch( ScmRepository repository, ScmFileSet fileSet, String branchName, String message )
throws ScmException;
@@ -166,15 +167,16 @@ public interface ScmProvider
* branch name
*
* @param repository the source control system
- * @param fileSet the files to branch. Implementations can also give the changes from the
- * {@link org.apache.maven.scm.ScmFileSet#getBasedir()} downwards.
+ * @param fileSet the files to branch. Implementations can also give the changes from the
+ * {@link org.apache.maven.scm.ScmFileSet#getBasedir()} downwards.
* @param branchName the branch name to apply to the files
- * @param message the commit message used for the tag creation
- * @since 1.3
+ * @param message the commit message used for the tag creation
* @return
* @throws ScmException if any
+ * @since 1.3
*/
- BranchScmResult branch( ScmRepository repository, ScmFileSet fileSet, String branchName, ScmBranchParameters scmBranchParameters )
+ BranchScmResult branch( ScmRepository repository, ScmFileSet fileSet, String branchName,
+ ScmBranchParameters scmBranchParameters )
throws ScmException;
/**
@@ -191,7 +193,7 @@ public interface ScmProvider
* @return The SCM result of the changelog command
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#changeLog(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,java.util.Date,java.util.Date,int,org.apache.maven.scm.ScmBranch)}
+ * org.apache.maven.scm.ScmFileSet, java.util.Date, java.util.Date, int, org.apache.maven.scm.ScmBranch)}
*/
ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate,
int numDays, String branch )
@@ -230,7 +232,7 @@ public interface ScmProvider
* @return The SCM result of the changelog command
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#changeLog(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,java.util.Date,java.util.Date,int,org.apache.maven.scm.ScmBranch,String)}
+ * org.apache.maven.scm.ScmFileSet, java.util.Date, java.util.Date, int, org.apache.maven.scm.ScmBranch, String)}
*/
ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate,
int numDays, String branch, String datePattern )
@@ -267,7 +269,7 @@ public interface ScmProvider
* @return The SCM result of the changelog command
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#changeLog(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,org.apache.maven.scm.ScmVersion,org.apache.maven.scm.ScmVersion)}
+ * org.apache.maven.scm.ScmFileSet, org.apache.maven.scm.ScmVersion, org.apache.maven.scm.ScmVersion)}
*/
ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, String startTag, String endTag )
throws ScmException;
@@ -301,7 +303,7 @@ public interface ScmProvider
* @return
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#changeLog(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,org.apache.maven.scm.ScmVersion,org.apache.maven.scm.ScmVersion,String)}
+ * org.apache.maven.scm.ScmFileSet, org.apache.maven.scm.ScmVersion, org.apache.maven.scm.ScmVersion, String)}
*/
ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, String startTag, String endTag,
String datePattern )
@@ -339,7 +341,7 @@ public interface ScmProvider
* @return
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#checkIn(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,org.apache.maven.scm.ScmVersion,String)}
+ * org.apache.maven.scm.ScmFileSet, org.apache.maven.scm.ScmVersion, String)}
*/
CheckInScmResult checkIn( ScmRepository repository, ScmFileSet fileSet, String tag, String message )
throws ScmException;
@@ -388,7 +390,7 @@ public interface ScmProvider
* @return
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#checkOut(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,org.apache.maven.scm.ScmVersion)}
+ * org.apache.maven.scm.ScmFileSet, org.apache.maven.scm.ScmVersion)}
*/
CheckOutScmResult checkOut( ScmRepository repository, ScmFileSet fileSet, String tag )
throws ScmException;
@@ -426,7 +428,7 @@ public interface ScmProvider
* @return
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#checkOut(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,org.apache.maven.scm.ScmVersion,boolean)}
+ * org.apache.maven.scm.ScmFileSet, org.apache.maven.scm.ScmVersion, boolean)}
*/
CheckOutScmResult checkOut( ScmRepository scmRepository, ScmFileSet scmFileSet, String tag, boolean recursive )
throws ScmException;
@@ -467,7 +469,7 @@ public interface ScmProvider
* @return
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#diff(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,org.apache.maven.scm.ScmVersion,org.apache.maven.scm.ScmVersion)}
+ * org.apache.maven.scm.ScmFileSet, org.apache.maven.scm.ScmVersion, org.apache.maven.scm.ScmVersion)}
*/
DiffScmResult diff( ScmRepository scmRepository, ScmFileSet scmFileSet, String startRevision, String endRevision )
throws ScmException;
@@ -495,7 +497,7 @@ public interface ScmProvider
* @return
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#export(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,org.apache.maven.scm.ScmVersion)}
+ * org.apache.maven.scm.ScmFileSet, org.apache.maven.scm.ScmVersion)}
*/
ExportScmResult export( ScmRepository repository, ScmFileSet fileSet, String tag )
throws ScmException;
@@ -533,7 +535,7 @@ public interface ScmProvider
* @return
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#export(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,org.apache.maven.scm.ScmVersion,String)}
+ * org.apache.maven.scm.ScmFileSet, org.apache.maven.scm.ScmVersion, String)}
*/
ExportScmResult export( ScmRepository repository, ScmFileSet fileSet, String tag, String outputDirectory )
throws ScmException;
@@ -583,9 +585,9 @@ public interface ScmProvider
* @param fileSet the files to tag. Implementations can also give the changes
* from the {@link org.apache.maven.scm.ScmFileSet#getBasedir()} downwards.
* @param tagName the tag name to apply to the files
- * @deprecated use {@link #tag(ScmRepository, ScmFileSet, String, ScmTagParameters)}
* @return
* @throws ScmException if any
+ * @deprecated use {@link #tag(ScmRepository, ScmFileSet, String, ScmTagParameters)}
*/
TagScmResult tag( ScmRepository repository, ScmFileSet fileSet, String tagName )
throws ScmException;
@@ -598,9 +600,9 @@ public interface ScmProvider
* from the {@link org.apache.maven.scm.ScmFileSet#getBasedir()} downwards.
* @param tagName the tag name to apply to the files
* @param message the commit message used for the tag creation
- * @deprecated use {@link #tag(ScmRepository, ScmFileSet, String, ScmTagParameters)}
* @return
* @throws ScmException if any
+ * @deprecated use {@link #tag(ScmRepository, ScmFileSet, String, ScmTagParameters)}
*/
TagScmResult tag( ScmRepository repository, ScmFileSet fileSet, String tagName, String message )
throws ScmException;
@@ -608,14 +610,14 @@ public interface ScmProvider
/**
* Tag (or label in some systems) will tag the source file with a certain tag
*
- * @param repository the source control system
- * @param fileSet the files to tag. Implementations can also give the changes
- * from the {@link org.apache.maven.scm.ScmFileSet#getBasedir()} downwards.
- * @param tagName the tag name to apply to the files
- * @param scmTagParameters bean to pass some paramters for tagging {@link ScmTagParameters}
+ * @param repository the source control system
+ * @param fileSet the files to tag. Implementations can also give the changes
+ * from the {@link org.apache.maven.scm.ScmFileSet#getBasedir()} downwards.
+ * @param tagName the tag name to apply to the files
+ * @param scmTagParameters bean to pass some paramters for tagging {@link ScmTagParameters}
* @return
- * @since 1.2
* @throws ScmException if any
+ * @since 1.2
*/
TagScmResult tag( ScmRepository repository, ScmFileSet fileSet, String tagName, ScmTagParameters scmTagParameters )
throws ScmException;
@@ -640,7 +642,7 @@ public interface ScmProvider
* @return
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#update(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,org.apache.maven.scm.ScmVersion)}
+ * org.apache.maven.scm.ScmFileSet, org.apache.maven.scm.ScmVersion)}
*/
UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag )
throws ScmException;
@@ -667,7 +669,7 @@ public interface ScmProvider
* @return
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#update(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,org.apache.maven.scm.ScmVersion,boolean)}
+ * org.apache.maven.scm.ScmFileSet, org.apache.maven.scm.ScmVersion, boolean)}
*/
UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag, boolean runChangelog )
throws ScmException;
@@ -707,7 +709,7 @@ public interface ScmProvider
* @return
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#update(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,org.apache.maven.scm.ScmVersion,String)}
+ * org.apache.maven.scm.ScmFileSet, org.apache.maven.scm.ScmVersion, String)}
*/
UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag, String datePattern )
throws ScmException;
@@ -735,7 +737,7 @@ public interface ScmProvider
* @return
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#update(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,org.apache.maven.scm.ScmVersion,java.util.Date)}
+ * org.apache.maven.scm.ScmFileSet, org.apache.maven.scm.ScmVersion, java.util.Date)}
*/
UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag, Date lastUpdate )
throws ScmException;
@@ -764,7 +766,7 @@ public interface ScmProvider
* @return
* @throws ScmException if any
* @deprecated you must use {@link ScmProvider#update(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,org.apache.maven.scm.ScmVersion,java.util.Date,String)}
+ * org.apache.maven.scm.ScmFileSet, org.apache.maven.scm.ScmVersion, java.util.Date, String)}
*/
UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag, Date lastUpdate,
String datePattern )
@@ -800,7 +802,7 @@ public interface ScmProvider
/**
* Make a file no longer editable. This is the conterpart of {@link #edit(
- * org.apache.maven.scm.repository.ScmRepository,org.apache.maven.scm.ScmFileSet)}.
+ *org.apache.maven.scm.repository.ScmRepository, org.apache.maven.scm.ScmFileSet)}.
* It makes the file read-only again.
*
* @param repository the source control system
@@ -820,7 +822,7 @@ public interface ScmProvider
* @param tag use the version defined by the tag
* @return the list of files in the repository
* @deprecated you must use {@link ScmProvider#list(org.apache.maven.scm.repository.ScmRepository,
- * org.apache.maven.scm.ScmFileSet,boolean,org.apache.maven.scm.ScmVersion)}
+ * org.apache.maven.scm.ScmFileSet, boolean, org.apache.maven.scm.ScmVersion)}
*/
ListScmResult list( ScmRepository repository, ScmFileSet fileSet, boolean recursive, String tag )
throws ScmException;
@@ -844,16 +846,16 @@ public interface ScmProvider
* @param repository the source control system
* @param fileSet location of your local copy
* @param filename file
- * @since 1.4
* @return blame for specified file
* @throws ScmException
+ * @since 1.4
*/
BlameScmResult blame( ScmRepository repository, ScmFileSet fileSet, String filename )
throws ScmException;
-
+
/**
* Create directory/directories in the repository.
- *
+ *
* @param repository
* @param fileSet
* @param createInLocal
@@ -863,15 +865,27 @@ public interface ScmProvider
*/
MkdirScmResult mkdir( ScmRepository repository, ScmFileSet fileSet, String message, boolean createInLocal )
throws ScmException;
-
+
/**
- * @param repository the source control system
+ * @param repository the source control system
* @param fileSet location of your local copy
* @param parameters some parameters (not use currently but for future use)
- * @since 1.5
- * @return if the scm implementation doesn't support "info" result will <code>null</code>
+ * @return if the scm implementation doesn't support "info" result will <code>null</code>
* @throws ScmException
+ * @since 1.5
*/
InfoScmResult info( ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters )
throws ScmException;
+
+ /**
+ *
+ * @param repository the source control system
+ * @param fileSet not use currently but for future use
+ * @param parameters some parameters (not use currently but for future use)
+ * @return if the scm implementation doesn't support "info" result will <code>null</code>
+ * @throws ScmException
+ * @since 1.6
+ */
+ RemoteInfoScmResult remoteInfo( ScmProviderRepository repository, ScmFileSet fileSet, CommandParameters parameters )
+ throws ScmException;
}
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/pom.xml
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/pom.xml?rev=1203448&r1=1203447&r2=1203448&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/pom.xml (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/pom.xml Fri Nov 18 00:47:08 2011
@@ -42,6 +42,10 @@
<groupId>regexp</groupId>
<artifactId>regexp</artifactId>
</dependency>
+ <dependency>
+ <groupId>commons-lang</groupId>
+ <artifactId>commons-lang</artifactId>
+ </dependency>
<!-- Test -->
<dependency>
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/SvnExeScmProvider.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/SvnExeScmProvider.java?rev=1203448&r1=1203447&r2=1203448&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/SvnExeScmProvider.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/SvnExeScmProvider.java Fri Nov 18 00:47:08 2011
@@ -19,11 +19,12 @@ package org.apache.maven.scm.provider.sv
* under the License.
*/
-import java.io.File;
-
+import org.apache.maven.scm.CommandParameters;
import org.apache.maven.scm.ScmException;
import org.apache.maven.scm.ScmFileSet;
import org.apache.maven.scm.command.info.InfoScmResult;
+import org.apache.maven.scm.command.remoteinfo.RemoteInfoScmResult;
+import org.apache.maven.scm.provider.ScmProviderRepository;
import org.apache.maven.scm.provider.svn.AbstractSvnScmProvider;
import org.apache.maven.scm.provider.svn.command.SvnCommand;
import org.apache.maven.scm.provider.svn.svnexe.command.add.SvnAddCommand;
@@ -37,12 +38,15 @@ import org.apache.maven.scm.provider.svn
import org.apache.maven.scm.provider.svn.svnexe.command.info.SvnInfoCommand;
import org.apache.maven.scm.provider.svn.svnexe.command.list.SvnListCommand;
import org.apache.maven.scm.provider.svn.svnexe.command.mkdir.SvnMkdirCommand;
+import org.apache.maven.scm.provider.svn.svnexe.command.remoteinfo.SvnRemoteInfoCommand;
import org.apache.maven.scm.provider.svn.svnexe.command.remove.SvnRemoveCommand;
import org.apache.maven.scm.provider.svn.svnexe.command.status.SvnStatusCommand;
import org.apache.maven.scm.provider.svn.svnexe.command.tag.SvnTagCommand;
import org.apache.maven.scm.provider.svn.svnexe.command.update.SvnUpdateCommand;
import org.apache.maven.scm.repository.ScmRepositoryException;
+import java.io.File;
+
/**
* @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
* @version $Id$
@@ -51,73 +55,97 @@ import org.apache.maven.scm.repository.S
public class SvnExeScmProvider
extends AbstractSvnScmProvider
{
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getAddCommand()
{
return new SvnAddCommand();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getBranchCommand()
{
return new SvnBranchCommand();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getChangeLogCommand()
{
return new SvnChangeLogCommand();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getCheckInCommand()
{
return new SvnCheckInCommand();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getCheckOutCommand()
{
return new SvnCheckOutCommand();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getDiffCommand()
{
return new SvnDiffCommand();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getExportCommand()
{
return new SvnExeExportCommand();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getRemoveCommand()
{
return new SvnRemoveCommand();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getStatusCommand()
{
return new SvnStatusCommand();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getTagCommand()
{
return new SvnTagCommand();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getUpdateCommand()
{
return new SvnUpdateCommand();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getListCommand()
{
return new SvnListCommand();
@@ -128,19 +156,25 @@ public class SvnExeScmProvider
return new SvnInfoCommand();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getBlameCommand()
{
return new SvnBlameCommand();
}
-
- /** {@inheritDoc} */
+
+ /**
+ * {@inheritDoc}
+ */
protected SvnCommand getMkdirCommand()
- {
+ {
return new SvnMkdirCommand();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
protected String getRepositoryURL( File path )
throws ScmException
{
@@ -150,10 +184,20 @@ public class SvnExeScmProvider
if ( result.getInfoItems().size() != 1 )
{
- throw new ScmRepositoryException( "Cannot find URL: "
- + ( result.getInfoItems().size() == 0 ? "no" : "multiple" ) + " items returned by the info command" );
+ throw new ScmRepositoryException(
+ "Cannot find URL: " + ( result.getInfoItems().size() == 0 ? "no" : "multiple" )
+ + " items returned by the info command" );
}
return result.getInfoItems().get( 0 ).getURL();
- }
+ }
+
+ @Override
+ public RemoteInfoScmResult remoteInfo( ScmProviderRepository repository, ScmFileSet fileSet,
+ CommandParameters parameters )
+ throws ScmException
+ {
+ SvnRemoteInfoCommand svnRemoteInfoCommand = new SvnRemoteInfoCommand();
+ return svnRemoteInfoCommand.executeRemoteInfoCommand( repository, fileSet, parameters );
+ }
}
Added: maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommand.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommand.java?rev=1203448&view=auto
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommand.java (added)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommand.java Fri Nov 18 00:47:08 2011
@@ -0,0 +1,148 @@
+package org.apache.maven.scm.provider.svn.svnexe.command.remoteinfo;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.commons.lang.StringUtils;
+import org.apache.maven.scm.CommandParameters;
+import org.apache.maven.scm.ScmException;
+import org.apache.maven.scm.ScmFileSet;
+import org.apache.maven.scm.command.remoteinfo.AbstractRemoteInfoCommand;
+import org.apache.maven.scm.command.remoteinfo.RemoteInfoScmResult;
+import org.apache.maven.scm.log.ScmLogger;
+import org.apache.maven.scm.provider.ScmProviderRepository;
+import org.apache.maven.scm.provider.svn.command.SvnCommand;
+import org.apache.maven.scm.provider.svn.repository.SvnScmProviderRepository;
+import org.apache.maven.scm.provider.svn.svnexe.command.SvnCommandLineUtils;
+import org.apache.maven.scm.util.AbstractConsumer;
+import org.codehaus.plexus.util.cli.CommandLineException;
+import org.codehaus.plexus.util.cli.CommandLineUtils;
+import org.codehaus.plexus.util.cli.Commandline;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @author Olivier Lamy
+ * @since 1.6
+ */
+public class SvnRemoteInfoCommand
+ extends AbstractRemoteInfoCommand
+ implements SvnCommand
+{
+ @Override
+ public RemoteInfoScmResult executeRemoteInfoCommand( ScmProviderRepository repository, ScmFileSet fileSet,
+ CommandParameters parameters )
+ throws ScmException
+ {
+
+ String url = ( (SvnScmProviderRepository) repository ).getUrl();
+ // use a default svn layout, url is here http://svn.apache.org/repos/asf/maven/maven-3/trunk
+ // so as we presume we have good users using standard svn layout, we calculate tags and branches url
+ String baseUrl = StringUtils.endsWith( url, "/" )
+ ? StringUtils.substringAfter( StringUtils.removeEnd( url, "/" ), "/" )
+ : StringUtils.substringBeforeLast( url, "/" );
+
+ Commandline cl = SvnCommandLineUtils.getBaseSvnCommandLine( fileSet == null ? null : fileSet.getBasedir(),
+ (SvnScmProviderRepository) repository );
+
+ cl.createArg().setValue( "ls" );
+
+ cl.createArg().setValue( baseUrl + "/tags" );
+
+ CommandLineUtils.StringStreamConsumer stderr = new CommandLineUtils.StringStreamConsumer();
+
+ LsConsumer consumer = new LsConsumer( getLogger(), baseUrl );
+
+ int exitCode = 0;
+
+ Map<String, String> tagsInfos = null;
+
+ try
+ {
+ exitCode = SvnCommandLineUtils.execute( cl, consumer, stderr, getLogger() );
+ tagsInfos = consumer.infos;
+
+ }
+ catch ( CommandLineException ex )
+ {
+ throw new ScmException( "Error while executing svn command.", ex );
+ }
+
+ if ( exitCode != 0 )
+ {
+ return new RemoteInfoScmResult( cl.toString(), "The svn command failed.", stderr.getOutput(), false );
+ }
+
+ cl = SvnCommandLineUtils.getBaseSvnCommandLine( fileSet == null ? null : fileSet.getBasedir(),
+ (SvnScmProviderRepository) repository );
+
+ cl.createArg().setValue( "ls" );
+
+ cl.createArg().setValue( baseUrl + "/tags" );
+
+ stderr = new CommandLineUtils.StringStreamConsumer();
+
+ consumer = new LsConsumer( getLogger(), baseUrl );
+
+ Map<String, String> branchesInfos = null;
+
+ try
+ {
+ exitCode = SvnCommandLineUtils.execute( cl, consumer, stderr, getLogger() );
+ branchesInfos = consumer.infos;
+
+ }
+ catch ( CommandLineException ex )
+ {
+ throw new ScmException( "Error while executing svn command.", ex );
+ }
+
+ if ( exitCode != 0 )
+ {
+ return new RemoteInfoScmResult( cl.toString(), "The svn command failed.", stderr.getOutput(), false );
+ }
+
+ return new RemoteInfoScmResult( cl.toString(), branchesInfos, tagsInfos );
+ }
+
+
+ private static class LsConsumer
+ extends AbstractConsumer
+ {
+ Map<String, String> infos = new HashMap<String, String>();
+
+ String url;
+
+ LsConsumer( ScmLogger logger, String url )
+ {
+ super( logger );
+ this.url = url;
+ }
+
+ public void consumeLine( String s )
+ {
+ infos.put( StringUtils.removeEnd( s, "/" ), url + "/" + s );
+ }
+
+ Map<String, String> getInfos()
+ {
+ return infos;
+ }
+ }
+}
Propchange: maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommand.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommand.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/RemoteInfoCommandTest.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/RemoteInfoCommandTest.java?rev=1203448&view=auto
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/RemoteInfoCommandTest.java (added)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/RemoteInfoCommandTest.java Fri Nov 18 00:47:08 2011
@@ -0,0 +1,43 @@
+package org.apache.maven.scm.provider.svn.svnexe.command.remoteinfo;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.maven.scm.command.remoteinfo.RemoteInfoScmResult;
+import org.apache.maven.scm.provider.ScmProvider;
+import org.apache.maven.scm.provider.svn.repository.SvnScmProviderRepository;
+import org.codehaus.plexus.PlexusTestCase;
+
+/**
+ * @author Olivier Lamy
+ */
+public class RemoteInfoCommandTest
+ extends PlexusTestCase
+{
+
+ public void testRemoteInfoCommand()
+ throws Exception
+ {
+ ScmProvider svnProvider = (ScmProvider) lookup( ScmProvider.ROLE, "svn" );
+ SvnScmProviderRepository repository =
+ new SvnScmProviderRepository( "http://svn.apache.org/repos/asf/maven/maven-3/trunk" );
+ RemoteInfoScmResult remoteInfoScmResult = svnProvider.remoteInfo( repository, null, null );
+ assertTrue( remoteInfoScmResult.getTags().keySet().contains( "maven-3.0" ) );
+ // no test on branches as can be removed
+ }
+}
Propchange: maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/RemoteInfoCommandTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/scm/trunk/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/RemoteInfoCommandTest.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified: maven/scm/trunk/maven-scm-test/src/main/java/org/apache/maven/scm/provider/ScmProviderStub.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-test/src/main/java/org/apache/maven/scm/provider/ScmProviderStub.java?rev=1203448&r1=1203447&r2=1203448&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-test/src/main/java/org/apache/maven/scm/provider/ScmProviderStub.java (original)
+++ maven/scm/trunk/maven-scm-test/src/main/java/org/apache/maven/scm/provider/ScmProviderStub.java Fri Nov 18 00:47:08 2011
@@ -19,12 +19,6 @@ package org.apache.maven.scm.provider;
* under the License.
*/
-import java.io.File;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Date;
-import java.util.List;
-
import org.apache.maven.scm.CommandParameters;
import org.apache.maven.scm.ScmBranch;
import org.apache.maven.scm.ScmBranchParameters;
@@ -45,6 +39,7 @@ import org.apache.maven.scm.command.expo
import org.apache.maven.scm.command.info.InfoScmResult;
import org.apache.maven.scm.command.list.ListScmResult;
import org.apache.maven.scm.command.mkdir.MkdirScmResult;
+import org.apache.maven.scm.command.remoteinfo.RemoteInfoScmResult;
import org.apache.maven.scm.command.remove.RemoveScmResult;
import org.apache.maven.scm.command.status.StatusScmResult;
import org.apache.maven.scm.command.tag.TagScmResult;
@@ -55,8 +50,14 @@ import org.apache.maven.scm.repository.S
import org.apache.maven.scm.repository.ScmRepositoryException;
import org.apache.maven.scm.repository.UnknownRepositoryStructure;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Date;
+import java.util.List;
+
/**
- * Stub implementation of ScmProvider for unit testing purposes.
+ * Stub implementation of ScmProvider for unit testing purposes.
* It allows setting the expected results that the different methods will return.
* More information about Stubs on <a href="http://martinfowler.com/bliki/TestDouble.html">Martin Fowler's TestDouble</a>
*
@@ -106,7 +107,7 @@ public class ScmProviderStub
private ExportScmResult exportScmResult;
private BlameScmResult blameScmResult;
-
+
private MkdirScmResult mkdirScmResult;
/**
@@ -116,7 +117,7 @@ public class ScmProviderStub
{
setScmSpecificFilename( "" );
setAddScmResult( new AddScmResult( "", Collections.<ScmFile>emptyList() ) );
- setBranchScmResult( new BranchScmResult( "", Collections.<ScmFile>emptyList() ) );
+ setBranchScmResult( new BranchScmResult( "", Collections.<ScmFile>emptyList() ) );
setChangeLogScmResult( new ChangeLogScmResult( "", "", "", true ) );
setCheckInScmResult( new CheckInScmResult( "", "", "", true ) );
setCheckOutScmResult( new CheckOutScmResult( "", "", "", true ) );
@@ -132,19 +133,25 @@ public class ScmProviderStub
setMkdirScmResult( new MkdirScmResult( "", "", "", true ) );
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public String sanitizeTagName( String tag )
{
return tag;
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public boolean validateTagName( String tag )
{
return true;
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public String getScmType()
{
return scmType;
@@ -155,7 +162,9 @@ public class ScmProviderStub
this.scmSpecificFilename = scmSpecificFilename;
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public void addListener( ScmLogger logger )
{
loggers.add( logger );
@@ -306,7 +315,8 @@ public class ScmProviderStub
return listScmResult;
}
- public void setBlameScmResult( BlameScmResult blameScmResult ) {
+ public void setBlameScmResult( BlameScmResult blameScmResult )
+ {
this.blameScmResult = blameScmResult;
}
@@ -314,7 +324,7 @@ public class ScmProviderStub
{
return blameScmResult;
}
-
+
public MkdirScmResult getMkdirScmResult()
{
return mkdirScmResult;
@@ -325,68 +335,89 @@ public class ScmProviderStub
this.mkdirScmResult = mkdirScmResult;
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ScmProviderRepository makeProviderScmRepository( String scmSpecificUrl, char delimiter )
throws ScmRepositoryException
{
return scmProviderRepository;
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ScmProviderRepository makeProviderScmRepository( File path )
throws ScmRepositoryException, UnknownRepositoryStructure
{
return scmProviderRepository;
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public List<String> validateScmUrl( String scmSpecificUrl, char delimiter )
{
return errors;
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public String getScmSpecificFilename()
{
return scmSpecificFilename;
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public AddScmResult add( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
return getAddScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public AddScmResult add( ScmRepository repository, ScmFileSet fileSet, String message )
throws ScmException
{
return getAddScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public BranchScmResult branch( ScmRepository repository, ScmFileSet fileSet, String branchName )
throws ScmException
{
return getBranchScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public BranchScmResult branch( ScmRepository repository, ScmFileSet fileSet, String branchName, String message )
throws ScmException
{
return getBranchScmResult();
}
- /** {@inheritDoc} */
- public BranchScmResult branch( ScmRepository repository, ScmFileSet fileSet, String branchName, ScmBranchParameters scmBranchParameters )
+ /**
+ * {@inheritDoc}
+ */
+ public BranchScmResult branch( ScmRepository repository, ScmFileSet fileSet, String branchName,
+ ScmBranchParameters scmBranchParameters )
throws ScmException
{
return getBranchScmResult();
- }
-
- /** {@inheritDoc} */
+ }
+
+ /**
+ * {@inheritDoc}
+ */
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate,
int numDays, String branch )
throws ScmException
@@ -394,7 +425,9 @@ public class ScmProviderStub
return getChangeLogScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate,
int numDays, String branch, String datePattern )
throws ScmException
@@ -402,14 +435,18 @@ public class ScmProviderStub
return getChangeLogScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, String startTag, String endTag )
throws ScmException
{
return getChangeLogScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, String startTag, String endTag,
String datePattern )
throws ScmException
@@ -417,7 +454,9 @@ public class ScmProviderStub
return getChangeLogScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate,
int numDays, ScmBranch branch )
throws ScmException
@@ -425,7 +464,9 @@ public class ScmProviderStub
return getChangeLogScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, Date startDate, Date endDate,
int numDays, ScmBranch branch, String datePattern )
throws ScmException
@@ -433,7 +474,9 @@ public class ScmProviderStub
return getChangeLogScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, ScmVersion startVersion,
ScmVersion endVersion )
throws ScmException
@@ -441,7 +484,9 @@ public class ScmProviderStub
return getChangeLogScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ChangeLogScmResult changeLog( ScmRepository repository, ScmFileSet fileSet, ScmVersion startRevision,
ScmVersion endRevision, String datePattern )
throws ScmException
@@ -449,28 +494,36 @@ public class ScmProviderStub
return getChangeLogScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckInScmResult checkIn( ScmRepository repository, ScmFileSet fileSet, String tag, String message )
throws ScmException
{
return getCheckInScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckInScmResult checkIn( ScmRepository repository, ScmFileSet fileSet, String message )
throws ScmException
{
return getCheckInScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckInScmResult checkIn( ScmRepository repository, ScmFileSet fileSet, ScmVersion revision, String message )
throws ScmException
{
return getCheckInScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckOutScmResult checkOut( ScmRepository scmRepository, ScmFileSet scmFileSet, String tag,
boolean recursive )
throws ScmException
@@ -478,35 +531,45 @@ public class ScmProviderStub
return getCheckOutScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckOutScmResult checkOut( ScmRepository repository, ScmFileSet fileSet, String tag )
throws ScmException
{
return getCheckOutScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckOutScmResult checkOut( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
return getCheckOutScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckOutScmResult checkOut( ScmRepository repository, ScmFileSet fileSet, ScmVersion version )
throws ScmException
{
return getCheckOutScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckOutScmResult checkOut( ScmRepository scmRepository, ScmFileSet scmFileSet, boolean recursive )
throws ScmException
{
return getCheckOutScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public CheckOutScmResult checkOut( ScmRepository scmRepository, ScmFileSet scmFileSet, ScmVersion version,
boolean recursive )
throws ScmException
@@ -514,14 +577,18 @@ public class ScmProviderStub
return getCheckOutScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public DiffScmResult diff( ScmRepository repository, ScmFileSet fileSet, String startRevision, String endRevision )
throws ScmException
{
return getDiffScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public DiffScmResult diff( ScmRepository scmRepository, ScmFileSet scmFileSet, ScmVersion startVersion,
ScmVersion endVersion )
throws ScmException
@@ -539,42 +606,54 @@ public class ScmProviderStub
return getUpdateScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public EditScmResult edit( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
return getEditScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ExportScmResult export( ScmRepository repository, ScmFileSet fileSet, String tag )
throws ScmException
{
return getExportScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ExportScmResult export( ScmRepository repository, ScmFileSet fileSet, String tag, String outputDirectory )
throws ScmException
{
return getExportScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ExportScmResult export( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
return getExportScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ExportScmResult export( ScmRepository repository, ScmFileSet fileSet, ScmVersion version )
throws ScmException
{
return getExportScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ExportScmResult export( ScmRepository repository, ScmFileSet fileSet, ScmVersion version,
String outputDirectory )
throws ScmException
@@ -582,42 +661,54 @@ public class ScmProviderStub
return getExportScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ListScmResult list( ScmRepository repository, ScmFileSet fileSet, boolean recursive, String tag )
throws ScmException
{
return getListScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public ListScmResult list( ScmRepository repository, ScmFileSet fileSet, boolean recursive, ScmVersion version )
throws ScmException
{
return getListScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public RemoveScmResult remove( ScmRepository repository, ScmFileSet fileSet, String message )
throws ScmException
{
return getRemoveScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public StatusScmResult status( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
return getStatusScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public TagScmResult tag( ScmRepository repository, ScmFileSet fileSet, String tag )
throws ScmException
{
return getTagScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public TagScmResult tag( ScmRepository repository, ScmFileSet fileSet, String tag, String message )
throws ScmException
{
@@ -631,35 +722,45 @@ public class ScmProviderStub
return getTagScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag )
throws ScmException
{
return getUpdateScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag, boolean runChangelog )
throws ScmException
{
return getUpdateScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag, String datePattern )
throws ScmException
{
return getUpdateScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag, Date lastUpdate )
throws ScmException
{
return getUpdateScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, String tag, Date lastUpdate,
String datePattern )
throws ScmException
@@ -667,28 +768,36 @@ public class ScmProviderStub
return getUpdateScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
return getUpdateScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, ScmVersion version )
throws ScmException
{
return getUpdateScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, boolean runChangelog )
throws ScmException
{
return getUpdateScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, ScmVersion version,
boolean runChangelog )
throws ScmException
@@ -696,7 +805,9 @@ public class ScmProviderStub
return getUpdateScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, ScmVersion version,
String datePattern )
throws ScmException
@@ -704,14 +815,18 @@ public class ScmProviderStub
return getUpdateScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, ScmVersion version, Date lastUpdate )
throws ScmException
{
return getUpdateScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UpdateScmResult update( ScmRepository repository, ScmFileSet fileSet, ScmVersion version, Date lastUpdate,
String datePattern )
throws ScmException
@@ -719,24 +834,30 @@ public class ScmProviderStub
return getUpdateScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public UnEditScmResult unedit( ScmRepository repository, ScmFileSet fileSet )
throws ScmException
{
return getUnEditScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public BlameScmResult blame( ScmRepository repository, ScmFileSet fileSet, String filename )
throws ScmException
{
return getBlameScmResult();
}
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ */
public MkdirScmResult mkdir( ScmRepository repository, ScmFileSet fileSet, String message, boolean createInLocal )
throws ScmException
- {
+ {
return getMkdirScmResult();
}
@@ -745,6 +866,11 @@ public class ScmProviderStub
{
return new InfoScmResult( "", "", "", true );
}
-
-
+
+ public RemoteInfoScmResult remoteInfo( ScmProviderRepository repository, ScmFileSet fileSet,
+ CommandParameters parameters )
+ throws ScmException
+ {
+ return new RemoteInfoScmResult( "", null, null );
+ }
}
Modified: maven/scm/trunk/pom.xml
URL: http://svn.apache.org/viewvc/maven/scm/trunk/pom.xml?rev=1203448&r1=1203447&r2=1203448&view=diff
==============================================================================
--- maven/scm/trunk/pom.xml (original)
+++ maven/scm/trunk/pom.xml Fri Nov 18 00:47:08 2011
@@ -251,6 +251,12 @@
<version>2.0.5</version>
</dependency>
+ <dependency>
+ <groupId>commons-lang</groupId>
+ <artifactId>commons-lang</artifactId>
+ <version>2.6</version>
+ </dependency>
+
<!-- Test -->
<dependency>
<groupId>junit</groupId>