sebb 2005/03/10 17:28:59
Modified: src/core/org/apache/jmeter Tag: rel-2_0 JMeter.java
Log:
Bug 33920 - additional prop files
Bug 33845 - allow direct override of Home dir
Revision Changes Path
No revision
No revision
1.27.2.4 +36 -4 jakarta-jmeter/src/core/org/apache/jmeter/JMeter.java
Index: JMeter.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/JMeter.java,v
retrieving revision 1.27.2.3
retrieving revision 1.27.2.4
diff -u -r1.27.2.3 -r1.27.2.4
--- JMeter.java 22 Feb 2005 02:09:41 -0000 1.27.2.3
+++ JMeter.java 11 Mar 2005 01:28:59 -0000 1.27.2.4
@@ -21,6 +21,8 @@
import java.awt.event.ActionEvent;
import java.io.File;
import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
import java.net.Authenticator;
import java.util.Iterator;
import java.util.LinkedList;
@@ -78,6 +80,7 @@
transient private static Logger log = LoggingManager.getLoggerForClass();
private static final int PROPFILE_OPT = 'p';
+ private static final int PROPFILE2_OPT = 'q'; // Bug 33920 - additional
prop files
private static final int TESTFILE_OPT = 't';
private static final int LOGFILE_OPT = 'l';
private static final int NONGUI_OPT = 'n';
@@ -92,6 +95,7 @@
private static final int SYSTEM_PROPERTY = 'D';
private static final int LOGLEVEL = 'L';
private static final int REMOTE_OPT = 'r';
+ private static final int JMETER_HOME_OPT = 'd';
/**
* Define the understood options. Each CLOptionDescriptor contains:
@@ -122,6 +126,12 @@
PROPFILE_OPT,
"the jmeter property file to use"),
new CLOptionDescriptor(
+ "addprop",
+ CLOptionDescriptor.ARGUMENT_REQUIRED
+ | CLOptionDescriptor.DUPLICATES_ALLOWED, // Bug 33920 -
allow multiple props
+ PROPFILE2_OPT,
+ "additional property file(s)"),
+ new CLOptionDescriptor(
"testfile",
CLOptionDescriptor.ARGUMENT_REQUIRED,
TESTFILE_OPT,
@@ -184,7 +194,13 @@
"runremote",
CLOptionDescriptor.ARGUMENT_DISALLOWED,
REMOTE_OPT,
- "Start remote servers from non-gui mode")};
+ "Start remote servers from non-gui mode"),
+ new CLOptionDescriptor(
+ "homedir",
+ CLOptionDescriptor.ARGUMENT_REQUIRED,
+ JMETER_HOME_OPT,
+ "the jmeter home directory to use"),
+ };
public JMeter()
{
@@ -385,7 +401,13 @@
+ File.separator
+ "jmeter.properties");
}
- JMeterUtils.setJMeterHome(NewDriver.getJMeterDir());
+
+ // Bug 33845 - allow direct override of Home dir
+ if (parser.getArgumentById(JMETER_HOME_OPT) == null) {
+ JMeterUtils.setJMeterHome(NewDriver.getJMeterDir());
+ } else {
+
JMeterUtils.setJMeterHome(parser.getArgumentById(JMETER_HOME_OPT).getArgument());
+ }
// Process command line property definitions (can occur multiple
times)
@@ -401,6 +423,16 @@
switch (option.getDescriptor().getId())
{
+ case PROPFILE2_OPT : // Bug 33920 - allow multiple
props
+ File f = new File(name);
+ try {
+ jmeterProps.load(new
FileInputStream(f));
+ } catch (FileNotFoundException e) {
+ log.warn("Can't find additional
property file: "+name,e);
+ } catch (IOException e) {
+ log.warn("Error loading
additional property file: "+name,e);
+ }
+ break;
case SYSTEM_PROPERTY :
if (value.length() > 0)
{ // Set it
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]