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 ol...@apache.org on 2011/01/03 22:34:47 UTC
svn commit: r1054772 - in /maven/scm/trunk:
maven-scm-api/src/main/java/org/apache/maven/scm/
maven-scm-api/src/main/java/org/apache/maven/scm/command/edit/
maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/cl...
Author: olamy
Date: Mon Jan 3 21:34:47 2011
New Revision: 1054772
URL: http://svn.apache.org/viewvc?rev=1054772&view=rev
Log:
[SCM-591] move to Java 1.5 : edit command
Modified:
maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/ScmFileStatus.java
maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/edit/EditScmResult.java
maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/edit/ClearCaseEditCommand.java
maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/edit/ClearCaseEditConsumer.java
maven/scm/trunk/maven-scm-providers/maven-scm-provider-perforce/src/main/java/org/apache/maven/scm/provider/perforce/command/edit/PerforceEditCommand.java
maven/scm/trunk/maven-scm-providers/maven-scm-provider-perforce/src/main/java/org/apache/maven/scm/provider/perforce/command/edit/PerforceEditConsumer.java
maven/scm/trunk/maven-scm-providers/maven-scm-provider-starteam/src/main/java/org/apache/maven/scm/provider/starteam/command/edit/StarteamEditCommand.java
maven/scm/trunk/maven-scm-providers/maven-scm-provider-starteam/src/main/java/org/apache/maven/scm/provider/starteam/command/edit/StarteamEditConsumer.java
maven/scm/trunk/maven-scm-providers/maven-scm-provider-synergy/src/main/java/org/apache/maven/scm/provider/synergy/command/edit/SynergyEditCommand.java
maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/edit/VssEditCommand.java
maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/edit/VssEditConsumer.java
Modified: maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/ScmFileStatus.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/ScmFileStatus.java?rev=1054772&r1=1054771&r2=1054772&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/ScmFileStatus.java (original)
+++ maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/ScmFileStatus.java Mon Jan 3 21:34:47 2011
@@ -22,6 +22,7 @@ import java.io.Serializable;
*/
/**
+ * @TODO move to a real enum
* <p/>
* Typesafe enum for file status
* </p>
@@ -104,6 +105,12 @@ public final class ScmFileStatus
public static final ScmFileStatus UNKNOWN = new ScmFileStatus( "unknown" );
/**
+ * @since 1.5
+ * The file is being edited
+ */
+ public static final ScmFileStatus EDITED = new ScmFileStatus( "edit" );
+
+ /**
* The status name
*/
private final String name;
Modified: maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/edit/EditScmResult.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/edit/EditScmResult.java?rev=1054772&r1=1054771&r2=1054772&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/edit/EditScmResult.java (original)
+++ maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/edit/EditScmResult.java Mon Jan 3 21:34:47 2011
@@ -19,38 +19,42 @@ package org.apache.maven.scm.command.edi
* under the License.
*/
-import org.apache.maven.scm.ScmResult;
-
import java.util.List;
+import org.apache.maven.scm.ScmFile;
+import org.apache.maven.scm.ScmFileStatus;
+import org.apache.maven.scm.ScmResult;
+
/**
+ * @since 1.5 {@link ScmFile} will have the {@link ScmFileStatus} {@link ScmFileStatus#EDITED}
* @version $Id$
*/
public class EditScmResult
extends ScmResult
{
- private List editFiles;
+ private static final long serialVersionUID = -6274938710679161288L;
+ private List<ScmFile> editFiles;
public EditScmResult( String commandLine, String providerMessage, String commandOutput, boolean success )
{
super( commandLine, providerMessage, commandOutput, success );
}
- public EditScmResult( String commandLine, List editFiles )
+ public EditScmResult( String commandLine, List<ScmFile> editFiles )
{
super( commandLine, null, null, true );
this.editFiles = editFiles;
}
- public EditScmResult( List editFiles, ScmResult result )
+ public EditScmResult( List<ScmFile> editFiles, ScmResult result )
{
super( result );
this.editFiles = editFiles;
}
- public List getEditFiles()
+ public List<ScmFile> getEditFiles()
{
return editFiles;
}
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/edit/ClearCaseEditCommand.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/edit/ClearCaseEditCommand.java?rev=1054772&r1=1054771&r2=1054772&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/edit/ClearCaseEditCommand.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/edit/ClearCaseEditCommand.java Mon Jan 3 21:34:47 2011
@@ -19,6 +19,9 @@ package org.apache.maven.scm.provider.cl
* under the License.
*/
+import java.io.File;
+import java.util.List;
+
import org.apache.maven.scm.ScmException;
import org.apache.maven.scm.ScmFileSet;
import org.apache.maven.scm.ScmResult;
@@ -31,8 +34,6 @@ import org.codehaus.plexus.util.cli.Comm
import org.codehaus.plexus.util.cli.CommandLineUtils;
import org.codehaus.plexus.util.cli.Commandline;
-import java.io.File;
-
/**
* @author <a href="mailto:wim.deblauwe@gmail.com">Wim Deblauwe</a>
* @version $Id$
@@ -98,13 +99,12 @@ public class ClearCaseEditCommand
command.createArg().setValue( "-nc" );
- File[] files = scmFileSet.getFiles();
- for ( int i = 0; i < files.length; i++ )
+ List<File> files = scmFileSet.getFileList();
+ for ( File file : files )
{
- File file = files[i];
if ( logger.isInfoEnabled() )
{
- logger.info( "Checking out file: " + file.getAbsolutePath() );
+ logger.info( "edit file: " + file.getAbsolutePath() );
}
command.createArg().setValue( file.getAbsolutePath() );
}
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/edit/ClearCaseEditConsumer.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/edit/ClearCaseEditConsumer.java?rev=1054772&r1=1054771&r2=1054772&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/edit/ClearCaseEditConsumer.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/edit/ClearCaseEditConsumer.java Mon Jan 3 21:34:47 2011
@@ -36,7 +36,7 @@ public class ClearCaseEditConsumer
{
private ScmLogger logger;
- private List editFiles = new ArrayList();
+ private List<ScmFile> editFiles = new ArrayList<ScmFile>();
// ----------------------------------------------------------------------
//
@@ -62,7 +62,7 @@ public class ClearCaseEditConsumer
if ( beginIndex != -1 )
{
String fileName = line.substring( beginIndex + 1, line.indexOf( '"', beginIndex + 1 ) );
- editFiles.add( new ScmFile( fileName, ScmFileStatus.UNKNOWN ) );
+ editFiles.add( new ScmFile( fileName, ScmFileStatus.EDITED ) );
}
}
@@ -70,7 +70,7 @@ public class ClearCaseEditConsumer
//
// ----------------------------------------------------------------------
- public List getEditFiles()
+ public List<ScmFile> getEditFiles()
{
return editFiles;
}
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-perforce/src/main/java/org/apache/maven/scm/provider/perforce/command/edit/PerforceEditCommand.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-perforce/src/main/java/org/apache/maven/scm/provider/perforce/command/edit/PerforceEditCommand.java?rev=1054772&r1=1054771&r2=1054772&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-perforce/src/main/java/org/apache/maven/scm/provider/perforce/command/edit/PerforceEditCommand.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-perforce/src/main/java/org/apache/maven/scm/provider/perforce/command/edit/PerforceEditCommand.java Mon Jan 3 21:34:47 2011
@@ -97,7 +97,7 @@ public class PerforceEditCommand
try
{
String candir = workingDirectory.getCanonicalPath();
- List fs = files.getFileList();
+ List<File> fs = files.getFileList();
for ( int i = 0; i < fs.size(); i++ )
{
File file = (File) fs.get( i );
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-perforce/src/main/java/org/apache/maven/scm/provider/perforce/command/edit/PerforceEditConsumer.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-perforce/src/main/java/org/apache/maven/scm/provider/perforce/command/edit/PerforceEditConsumer.java?rev=1054772&r1=1054771&r2=1054772&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-perforce/src/main/java/org/apache/maven/scm/provider/perforce/command/edit/PerforceEditConsumer.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-perforce/src/main/java/org/apache/maven/scm/provider/perforce/command/edit/PerforceEditConsumer.java Mon Jan 3 21:34:47 2011
@@ -19,14 +19,16 @@ package org.apache.maven.scm.provider.pe
* under the License.
*/
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.maven.scm.ScmFile;
+import org.apache.maven.scm.ScmFileStatus;
import org.apache.maven.scm.provider.perforce.command.AbstractPerforceConsumer;
import org.apache.regexp.RE;
import org.apache.regexp.RESyntaxException;
import org.codehaus.plexus.util.cli.StreamConsumer;
-import java.util.ArrayList;
-import java.util.List;
-
/**
* @author Mike Perham
* @version $Id$
@@ -40,7 +42,7 @@ public class PerforceEditConsumer
private static final String FILE_BEGIN_TOKEN = "//";
- private List edits = new ArrayList();
+ private List<ScmFile> edits = new ArrayList<ScmFile>();
private RE revisionRegexp;
@@ -59,7 +61,7 @@ public class PerforceEditConsumer
}
}
- public List getEdits()
+ public List<ScmFile> getEdits()
{
return edits;
}
@@ -84,7 +86,7 @@ public class PerforceEditConsumer
error( line );
}
- edits.add( revisionRegexp.getParen( 1 ) );
+ edits.add( new ScmFile( revisionRegexp.getParen( 1 ), ScmFileStatus.EDITED ) );
}
private void error( String line )
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-starteam/src/main/java/org/apache/maven/scm/provider/starteam/command/edit/StarteamEditCommand.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-starteam/src/main/java/org/apache/maven/scm/provider/starteam/command/edit/StarteamEditCommand.java?rev=1054772&r1=1054771&r2=1054772&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-starteam/src/main/java/org/apache/maven/scm/provider/starteam/command/edit/StarteamEditCommand.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-starteam/src/main/java/org/apache/maven/scm/provider/starteam/command/edit/StarteamEditCommand.java Mon Jan 3 21:34:47 2011
@@ -62,7 +62,7 @@ public class StarteamEditCommand
CommandLineUtils.StringStreamConsumer stderr = new CommandLineUtils.StringStreamConsumer();
- List editFiles = fileSet.getFileList();
+ List<File> editFiles = fileSet.getFileList();
if ( editFiles.size() == 0 )
{
@@ -99,7 +99,7 @@ public class StarteamEditCommand
public static Commandline createCommandLine( StarteamScmProviderRepository repo, ScmFileSet dirOrFile )
{
- List args = new ArrayList();
+ List<String> args = new ArrayList<String>();
args.add( "-l" );
return StarteamCommandLineUtils.createStarteamCommandLine( "lck", args, dirOrFile, repo );
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-starteam/src/main/java/org/apache/maven/scm/provider/starteam/command/edit/StarteamEditConsumer.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-starteam/src/main/java/org/apache/maven/scm/provider/starteam/command/edit/StarteamEditConsumer.java?rev=1054772&r1=1054771&r2=1054772&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-starteam/src/main/java/org/apache/maven/scm/provider/starteam/command/edit/StarteamEditConsumer.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-starteam/src/main/java/org/apache/maven/scm/provider/starteam/command/edit/StarteamEditConsumer.java Mon Jan 3 21:34:47 2011
@@ -39,7 +39,7 @@ public class StarteamEditConsumer
private ScmLogger logger;
- private List files = new ArrayList();
+ private List<ScmFile> files = new ArrayList<ScmFile>();
/**
* the current directory entry being processed by the parser
@@ -89,7 +89,7 @@ public class StarteamEditConsumer
}
}
- public List getEditedFiles()
+ public List<ScmFile> getEditedFiles()
{
return files;
}
@@ -116,7 +116,7 @@ public class StarteamEditConsumer
{
String lockedFilePath = this.currentDir + "/" + line.substring( 0, pos );
- this.files.add( new ScmFile( lockedFilePath, ScmFileStatus.UNKNOWN ) );
+ this.files.add( new ScmFile( lockedFilePath, ScmFileStatus.EDITED ) );
if ( logger.isInfoEnabled() )
{
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-synergy/src/main/java/org/apache/maven/scm/provider/synergy/command/edit/SynergyEditCommand.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-synergy/src/main/java/org/apache/maven/scm/provider/synergy/command/edit/SynergyEditCommand.java?rev=1054772&r1=1054771&r2=1054772&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-synergy/src/main/java/org/apache/maven/scm/provider/synergy/command/edit/SynergyEditCommand.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-synergy/src/main/java/org/apache/maven/scm/provider/synergy/command/edit/SynergyEditCommand.java Mon Jan 3 21:34:47 2011
@@ -19,8 +19,17 @@ package org.apache.maven.scm.provider.sy
* under the License.
*/
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+
import org.apache.maven.scm.ScmException;
+import org.apache.maven.scm.ScmFile;
import org.apache.maven.scm.ScmFileSet;
+import org.apache.maven.scm.ScmFileStatus;
import org.apache.maven.scm.ScmResult;
import org.apache.maven.scm.command.edit.AbstractEditCommand;
import org.apache.maven.scm.command.edit.EditScmResult;
@@ -30,12 +39,6 @@ import org.apache.maven.scm.provider.syn
import org.apache.maven.scm.provider.synergy.util.SynergyUtil;
import org.codehaus.plexus.util.FileUtils;
-import java.io.File;
-import java.io.IOException;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-
/**
* @author <a href="mailto:julien.henry@capgemini.com">Julien Henry</a>
* @version $Id$
@@ -78,12 +81,12 @@ public class SynergyEditCommand
{
getLogger().info( "Task " + taskNum + " was created to perform checkout." );
}
- for ( Iterator i = fileSet.getFileList().iterator(); i.hasNext(); )
+ for ( Iterator<File> i = fileSet.getFileList().iterator(); i.hasNext(); )
{
File f = (File) i.next();
File dest = f;
File source = new File( sourcePath, SynergyUtil.removePrefix( fileSet.getBasedir(), f ) );
- List list = new LinkedList();
+ List<File> list = new LinkedList<File>();
list.add( source );
SynergyUtil.checkoutFiles( getLogger(), list, ccmAddr );
if ( !source.equals( dest ) )
@@ -107,8 +110,12 @@ public class SynergyEditCommand
{
SynergyUtil.stop( getLogger(), ccmAddr );
}
-
- return new EditScmResult( "", fileSet.getFileList() );
+ List<ScmFile> scmFiles = new ArrayList<ScmFile>(fileSet.getFileList().size());
+ for (File f : fileSet.getFileList())
+ {
+ scmFiles.add( new ScmFile( f.getPath(), ScmFileStatus.EDITED ) );
+ }
+ return new EditScmResult( "", scmFiles );
}
}
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/edit/VssEditCommand.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/edit/VssEditCommand.java?rev=1054772&r1=1054771&r2=1054772&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/edit/VssEditCommand.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/edit/VssEditCommand.java Mon Jan 3 21:34:47 2011
@@ -22,10 +22,10 @@ package org.apache.maven.scm.provider.vs
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
-import java.util.Iterator;
import java.util.List;
import org.apache.maven.scm.ScmException;
+import org.apache.maven.scm.ScmFile;
import org.apache.maven.scm.ScmFileSet;
import org.apache.maven.scm.ScmResult;
import org.apache.maven.scm.command.changelog.ChangeLogCommand;
@@ -58,7 +58,7 @@ public class VssEditCommand
VssScmProviderRepository repo = (VssScmProviderRepository) repository;
- List commandLines = buildCmdLine( repo, fileSet );
+ List<Commandline> commandLines = buildCmdLine( repo, fileSet );
VssEditConsumer consumer = new VssEditConsumer( repo, getLogger() );
@@ -67,12 +67,11 @@ public class VssEditCommand
int exitCode;
- StringBuffer sb = new StringBuffer();
- List updatedFiles = new ArrayList();
+ StringBuilder sb = new StringBuilder();
+ List<ScmFile> updatedFiles = new ArrayList<ScmFile>();
- for ( Iterator i = commandLines.iterator(); i.hasNext(); )
+ for ( Commandline cl : commandLines )
{
- Commandline cl = (Commandline) i.next();
if ( getLogger().isDebugEnabled() )
{
@@ -109,11 +108,11 @@ public class VssEditCommand
}
- public List buildCmdLine( VssScmProviderRepository repo, ScmFileSet fileSet )
+ public List<Commandline> buildCmdLine( VssScmProviderRepository repo, ScmFileSet fileSet )
throws ScmException
{
- List files = fileSet.getFileList();
- List commands = new ArrayList();
+ List<File> files = fileSet.getFileList();
+ List<Commandline> commands = new ArrayList<Commandline>();
if ( files.size() > 0 )
{
@@ -128,7 +127,7 @@ public class VssEditCommand
throw new ScmException( "Invalid canonical path", e );
}
- for ( Iterator i = files.iterator(); i.hasNext(); )
+ for ( File file : files )
{
Commandline command = new Commandline();
@@ -150,7 +149,6 @@ public class VssEditCommand
command.createArg().setValue( VssConstants.COMMAND_CHECKOUT );
- File file = (File) i.next();
String absolute;
try
{
Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/edit/VssEditConsumer.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/edit/VssEditConsumer.java?rev=1054772&r1=1054771&r2=1054772&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/edit/VssEditConsumer.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/edit/VssEditConsumer.java Mon Jan 3 21:34:47 2011
@@ -77,6 +77,7 @@ public class VssEditConsumer
/**
* Marks getting a new File
*/
+ @SuppressWarnings( "unused" )
private static final String START_GETTING = "Getting";
/**
@@ -96,7 +97,7 @@ public class VssEditConsumer
private String currentPath = "";
- private List updatedFiles = new ArrayList();
+ private List<ScmFile> updatedFiles = new ArrayList<ScmFile>();
private VssScmProviderRepository repo;
@@ -144,7 +145,7 @@ public class VssEditConsumer
private void processGetFile( String line )
{
String[] fileLine = line.split( " " );
- updatedFiles.add( new ScmFile( currentPath + "/" + fileLine[1], ScmFileStatus.UPDATED ) );
+ updatedFiles.add( new ScmFile( currentPath + "/" + fileLine[1], ScmFileStatus.EDITED ) );
if ( getLogger().isInfoEnabled() )
{
getLogger().info( fileLine[0] + ": " + currentPath + "/" + fileLine[1] );
@@ -207,7 +208,7 @@ public class VssEditConsumer
return argument;
}
- public List getUpdatedFiles()
+ public List<ScmFile> getUpdatedFiles()
{
return updatedFiles;
}