You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by se...@apache.org on 2008/10/25 16:43:15 UTC
svn commit: r707847 - in /jakarta/jmeter/trunk:
src/core/org/apache/jmeter/testelement/AbstractTestElement.java
src/core/org/apache/jmeter/testelement/TestElement.java xdocs/changes.xml
Author: sebb
Date: Sat Oct 25 07:43:15 2008
New Revision: 707847
URL: http://svn.apache.org/viewvc?rev=707847&view=rev
Log:
Add some new convenience property methods:
boolean with default, integer, integer with default
Modified:
jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/AbstractTestElement.java
jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/TestElement.java
jakarta/jmeter/trunk/xdocs/changes.xml
Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/AbstractTestElement.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/AbstractTestElement.java?rev=707847&r1=707846&r2=707847&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/AbstractTestElement.java (original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/AbstractTestElement.java Sat Oct 25 07:43:15 2008
@@ -28,6 +28,7 @@
import org.apache.jmeter.testelement.property.BooleanProperty;
import org.apache.jmeter.testelement.property.CollectionProperty;
+import org.apache.jmeter.testelement.property.IntegerProperty;
import org.apache.jmeter.testelement.property.JMeterProperty;
import org.apache.jmeter.testelement.property.MapProperty;
import org.apache.jmeter.testelement.property.MultiProperty;
@@ -182,6 +183,11 @@
return getProperty(key).getIntValue();
}
+ public int getPropertyAsInt(String key, int defaultValue) {
+ JMeterProperty jmp = getProperty(key);
+ return jmp instanceof NullProperty ? defaultValue : jmp.getIntValue();
+ }
+
public boolean getPropertyAsBoolean(String key) {
return getProperty(key).getBooleanValue();
}
@@ -285,7 +291,7 @@
}
public void setProperty(String name, boolean value) {
- setProperty(new StringProperty(name, Boolean.toString(value)));
+ setProperty(new BooleanProperty(name, value));
}
/**
@@ -307,6 +313,29 @@
}
}
+ public void setProperty(String name, int value) {
+ setProperty(new IntegerProperty(name, value));
+ }
+
+ /**
+ * Create a boolean property - but only if it is not the default.
+ * This is intended for use when adding new properties to JMeter
+ * so that JMX files are not expanded unnecessarily.
+ *
+ * N.B. - must agree with the default applied when reading the property.
+ *
+ * @param name property name
+ * @param value current value
+ * @param dflt default
+ */
+ public void setProperty(String name, int value, int dflt) {
+ if (value == dflt) {
+ removeProperty(name);
+ } else {
+ setProperty(new IntegerProperty(name, value));
+ }
+ }
+
public PropertyIterator propertyIterator() {
return new PropertyIteratorImpl(propMap.values());
}
Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/TestElement.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/TestElement.java?rev=707847&r1=707846&r2=707847&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/TestElement.java (original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/testelement/TestElement.java Sat Oct 25 07:43:15 2008
@@ -46,6 +46,10 @@
public void setProperty(String key, boolean value, boolean dflt);
+ public void setProperty(String key, int value);
+
+ public void setProperty(String key, int value, int dflt);
+
/**
* Check if ENABLED property is present and true ; defaults to true
*
@@ -87,6 +91,8 @@
public int getPropertyAsInt(String key);
+ public int getPropertyAsInt(String key, int defaultValue);
+
public float getPropertyAsFloat(String key);
public double getPropertyAsDouble(String key);
Modified: jakarta/jmeter/trunk/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/xdocs/changes.xml?rev=707847&r1=707846&r2=707847&view=diff
==============================================================================
--- jakarta/jmeter/trunk/xdocs/changes.xml (original)
+++ jakarta/jmeter/trunk/xdocs/changes.xml Sat Oct 25 07:43:15 2008
@@ -94,10 +94,13 @@
</p>
<p>
-The TestElement interface has two new methods:
+The TestElement interface has some new methods:
<ul>
<li>void setProperty(String key, String value, String dflt)</li>
-<li>void setProperty(String key, boolean value, boolean dflt);</li>
+<li>void setProperty(String key, boolean value, boolean dflt)</li>
+<li>void setProperty(String key, int value)</li>
+<li>void setProperty(String key, int value, int dflt)</li>
+<li>int getPropertyAsInt(String key, int defaultValue)</li>
</ul>
These are implemented in the AbstractTestElement class which all elements should extend so this is unlikely to cause a problem.
</p>
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org