Author: olamy Date: Sat Nov 13 13:58:30 2010 New Revision: 1034761 URL: http://svn.apache.org/viewvc?rev=1034761&view=rev Log: [SCM-559] support readSettings for clearcase, starteam and vss. Submitted by Robert Scholte
Modified: 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-starteam/src/main/java/org/apache/maven/scm/provider/starteam/util/StarteamUtil.java maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/VssCommandLineUtils.java 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=1034761&r1=1034760&r2=1034761&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 Sat Nov 13 13:58:30 2010 @@ -45,6 +45,8 @@ public class ClearCaseUtil private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( RESOURCE_FILENAME ); + private static Settings settings; + private ClearCaseUtil() { } @@ -54,7 +56,16 @@ public class ClearCaseUtil return RESOURCE_BUNDLE.getString( key ); } - public static Settings getSettings() + public static Settings getSettings() + { + if ( settings == null ) + { + settings = readSettings(); + } + return settings; + } + + public static Settings readSettings() { File settingsFile = new File( settingsDirectory, CLEARCASE_SETTINGS_FILENAME ); Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-starteam/src/main/java/org/apache/maven/scm/provider/starteam/util/StarteamUtil.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/util/StarteamUtil.java?rev=1034761&r1=1034760&r2=1034761&view=diff ============================================================================== --- maven/scm/trunk/maven-scm-providers/maven-scm-provider-starteam/src/main/java/org/apache/maven/scm/provider/starteam/util/StarteamUtil.java (original) +++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-starteam/src/main/java/org/apache/maven/scm/provider/starteam/util/StarteamUtil.java Sat Nov 13 13:58:30 2010 @@ -40,13 +40,23 @@ public class StarteamUtil private static File settingsDirectory = DEFAULT_SETTINGS_DIRECTORY; + private static Settings settings; + private StarteamUtil() { } public static Settings getSettings() { - File scmUserDir = settingsDirectory; + if ( settings == null ) + { + settings = readSettings(); + } + return settings; + } + + public static Settings readSettings() + { File settingsFile = getSettingsFile(); if ( settingsFile.exists() ) Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/VssCommandLineUtils.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/VssCommandLineUtils.java?rev=1034761&r1=1034760&r2=1034761&view=diff ============================================================================== --- maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/VssCommandLineUtils.java (original) +++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-vss/src/main/java/org/apache/maven/scm/provider/vss/commands/VssCommandLineUtils.java Sat Nov 13 13:58:30 2010 @@ -46,6 +46,8 @@ public class VssCommandLineUtils // FIXME extend CommandLineUtils { private static File scmConfDir = new File( System.getProperty( "user.home" ), ".scm" ); + + private static Settings settings; public static void addFiles( Commandline cl, ScmFileSet fileSet ) { @@ -114,6 +116,15 @@ public class VssCommandLineUtils public static final Settings getSettings() { + if ( settings == null ) + { + settings = readSettings(); + } + return settings; + } + + public static Settings readSettings() + { Settings settings = null; File settingsFile = getScmConfFile(); if ( settingsFile.exists() )