Author: evenisse Date: Mon May 19 12:59:33 2008 New Revision: 657950 URL: http://svn.apache.org/viewvc?rev=657950&view=rev Log: [SCM-356] llow id of more than 8 characters
Added: maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/test/resources/clearcase/changelog/clearcase-settings.xml (with props) Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/pom.xml maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/changelog/ClearCaseChangeLogCommand.java maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/util/ClearCaseUtil.java maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/mdo/clearcase-settings.mdo maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/test/java/org/apache/maven/scm/provider/clearcase/command/changelog/ClearCaseChangeLogCommandTest.java Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/pom.xml URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/pom.xml?rev=657950&r1=657949&r2=657950&view=diff ============================================================================== --- maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/pom.xml (original) +++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/pom.xml Mon May 19 12:59:33 2008 @@ -17,7 +17,8 @@ ~ under the License. --> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <parent> <artifactId>maven-scm-providers</artifactId> <groupId>org.apache.maven.scm</groupId> @@ -54,7 +55,7 @@ </execution> </executions> <configuration> - <version>1.0.0</version> + <version>1.1.0</version> <model>src/main/mdo/clearcase-settings.mdo</model> </configuration> </plugin> Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/changelog/ClearCaseChangeLogCommand.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/changelog/ClearCaseChangeLogCommand.java?rev=657950&r1=657949&r2=657950&view=diff ============================================================================== --- maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/changelog/ClearCaseChangeLogCommand.java (original) +++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/command/changelog/ClearCaseChangeLogCommand.java Mon May 19 12:59:33 2008 @@ -107,11 +107,15 @@ command.setWorkingDirectory( workingDirectory.getAbsolutePath() ); + Settings settings = ClearCaseUtil.getSettings(); + String userFormat = + StringUtils.isEmpty( settings.getChangelogUserFormat() ) ? "" : settings.getChangelogUserFormat(); + StringBuffer format = new StringBuffer(); format.append( "NAME:%En\\n" ); format.append( "DATE:%Nd\\n" ); format.append( "COMM:%-12.12o - %o - %c - Activity: %[activity]p\\n" ); - format.append( "USER:%-8.8u\\n" ); + format.append( "USER:%" + userFormat + "u\\n" ); command.createArgument().setValue( "-fmt" ); command.createArgument().setValue( format.toString() ); Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/util/ClearCaseUtil.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/util/ClearCaseUtil.java?rev=657950&r1=657949&r2=657950&view=diff ============================================================================== --- maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/util/ClearCaseUtil.java (original) +++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/java/org/apache/maven/scm/provider/clearcase/util/ClearCaseUtil.java Mon May 19 12:59:33 2008 @@ -34,21 +34,24 @@ */ public class ClearCaseUtil { - protected static final String CLEARCASE_SETTINGS_FILENAME = "clearcase-settings.xml"; - + protected static final String CLEARCASE_SETTINGS_FILENAME = "clearcase-settings.xml"; + + public static final File DEFAULT_SETTINGS_DIRECTORY = new File( System.getProperty( "user.home" ), ".scm" ); + + private static File settingsDirectory = DEFAULT_SETTINGS_DIRECTORY; + private ClearCaseUtil() { } public static Settings getSettings() { - File scmUserDir = new File( System.getProperty( "user.home" ), ".scm" ); - File settingsFile = new File( scmUserDir, CLEARCASE_SETTINGS_FILENAME ); - - if (!settingsFile.exists()) + File settingsFile = new File( settingsDirectory, CLEARCASE_SETTINGS_FILENAME ); + + if ( !settingsFile.exists() ) { - File scmGlobalDir = new File( System.getProperty( "maven.home"), "conf" ); - settingsFile = new File ( scmGlobalDir, CLEARCASE_SETTINGS_FILENAME ); + File scmGlobalDir = new File( System.getProperty( "maven.home" ), "conf" ); + settingsFile = new File( scmGlobalDir, CLEARCASE_SETTINGS_FILENAME ); } if ( settingsFile.exists() ) @@ -74,4 +77,9 @@ return new Settings(); } + + public static void setSettingsDirectory( File directory ) + { + settingsDirectory = directory; + } } Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/mdo/clearcase-settings.mdo URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/mdo/clearcase-settings.mdo?rev=657950&r1=657949&r2=657950&view=diff ============================================================================== --- maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/mdo/clearcase-settings.mdo (original) +++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/main/mdo/clearcase-settings.mdo Mon May 19 12:59:33 2008 @@ -33,6 +33,12 @@ <type>String</type> <description>Are you using ClearCase LT or UCM version ?</description> </field> + <field> + <name>changelogUserFormat</name> + <version>1.1.0+</version> + <type>String</type> + <description>The format of the USER pattern in lhistory command. For example, it can be "-8.8"</description> + </field> </fields> </class> </classes> Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/test/java/org/apache/maven/scm/provider/clearcase/command/changelog/ClearCaseChangeLogCommandTest.java URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/test/java/org/apache/maven/scm/provider/clearcase/command/changelog/ClearCaseChangeLogCommandTest.java?rev=657950&r1=657949&r2=657950&view=diff ============================================================================== --- maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/test/java/org/apache/maven/scm/provider/clearcase/command/changelog/ClearCaseChangeLogCommandTest.java (original) +++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/test/java/org/apache/maven/scm/provider/clearcase/command/changelog/ClearCaseChangeLogCommandTest.java Mon May 19 12:59:33 2008 @@ -21,6 +21,7 @@ import org.apache.maven.scm.ScmBranch; import org.apache.maven.scm.ScmTestCase; +import org.apache.maven.scm.provider.clearcase.util.ClearCaseUtil; import org.codehaus.plexus.util.cli.Commandline; import java.io.File; @@ -43,7 +44,22 @@ Date endDate = null; testCommandLine( null, startDate, endDate, + "cleartool lshistory -fmt \"NAME:%En\\nDATE:%Nd\\nCOMM:%-12.12o - %o - %c - Activity: %[activity]p\\nUSER:%u\\n\" -recurse -nco" ); + } + + public void testGetCommandLineWithUserPattern() + throws Exception + { + ClearCaseUtil.setSettingsDirectory( getTestFile( "src/test/resources/clearcase/changelog" ) ); + + Date startDate = null; + + Date endDate = null; + + testCommandLine( null, startDate, endDate, "cleartool lshistory -fmt \"NAME:%En\\nDATE:%Nd\\nCOMM:%-12.12o - %o - %c - Activity: %[activity]p\\nUSER:%-8.8u\\n\" -recurse -nco" ); + + ClearCaseUtil.setSettingsDirectory( ClearCaseUtil.DEFAULT_SETTINGS_DIRECTORY ); } public void testGetCommandLineWithTag() @@ -54,7 +70,7 @@ Date endDate = null; testCommandLine( new ScmBranch( "myBranch" ), startDate, endDate, - "cleartool lshistory -fmt \"NAME:%En\\nDATE:%Nd\\nCOMM:%-12.12o - %o - %c - Activity: %[activity]p\\nUSER:%-8.8u\\n\" -recurse -nco -branch myBranch" ); + "cleartool lshistory -fmt \"NAME:%En\\nDATE:%Nd\\nCOMM:%-12.12o - %o - %c - Activity: %[activity]p\\nUSER:%u\\n\" -recurse -nco -branch myBranch" ); } public void testGetCommandLineWithStartDate() @@ -65,7 +81,7 @@ Date endDate = null; testCommandLine( null, startDate, endDate, - "cleartool lshistory -fmt \"NAME:%En\\nDATE:%Nd\\nCOMM:%-12.12o - %o - %c - Activity: %[activity]p\\nUSER:%-8.8u\\n\" -recurse -nco -since 10-Sep-2003" ); + "cleartool lshistory -fmt \"NAME:%En\\nDATE:%Nd\\nCOMM:%-12.12o - %o - %c - Activity: %[activity]p\\nUSER:%u\\n\" -recurse -nco -since 10-Sep-2003" ); } public void testGetCommandLineWithTagAndStartDate() @@ -76,7 +92,7 @@ Date endDate = null; testCommandLine( new ScmBranch( "myBranch" ), startDate, endDate, - "cleartool lshistory -fmt \"NAME:%En\\nDATE:%Nd\\nCOMM:%-12.12o - %o - %c - Activity: %[activity]p\\nUSER:%-8.8u\\n\" -recurse -nco -since 10-Sep-2003 -branch myBranch" ); + "cleartool lshistory -fmt \"NAME:%En\\nDATE:%Nd\\nCOMM:%-12.12o - %o - %c - Activity: %[activity]p\\nUSER:%u\\n\" -recurse -nco -since 10-Sep-2003 -branch myBranch" ); } // ---------------------------------------------------------------------- @@ -89,7 +105,8 @@ File workingDirectory = getTestFile( "target/clearcare-changelog-command-test" ); Commandline cl = ClearCaseChangeLogCommand.createCommandLine( workingDirectory, branch, startDate ); - + System.out.println( commandLine ); + System.out.println( cl.toString() ); assertEquals( commandLine, cl.toString() ); } } Added: maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/test/resources/clearcase/changelog/clearcase-settings.xml URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/test/resources/clearcase/changelog/clearcase-settings.xml?rev=657950&view=auto ============================================================================== --- maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/test/resources/clearcase/changelog/clearcase-settings.xml (added) +++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/test/resources/clearcase/changelog/clearcase-settings.xml Mon May 19 12:59:33 2008 @@ -0,0 +1,3 @@ +<clearcase-settings> + <changelogUserFormat>-8.8</changelogUserFormat> +</clearcase-settings> Propchange: maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/test/resources/clearcase/changelog/clearcase-settings.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/scm/trunk/maven-scm-providers/maven-scm-provider-clearcase/src/test/resources/clearcase/changelog/clearcase-settings.xml ------------------------------------------------------------------------------ svn:keywords = Author Date Id Revision