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 ms...@apache.org on 2005/08/24 20:18:26 UTC
cvs commit: jakarta-jmeter/src/core/org/apache/jmeter/control ReplaceableController.java
mstover1 2005/08/24 11:18:26
Modified: src/components/org/apache/jmeter/control
ModuleController.java IncludeController.java
src/core/org/apache/jmeter/gui/action AbstractAction.java
src/core/org/apache/jmeter/util JMeterVersion.java
src/core/org/apache/jmeter/control
ReplaceableController.java
Log:
Making fixes for sake of include controller
Revision Changes Path
1.11 +7 -18 jakarta-jmeter/src/components/org/apache/jmeter/control/ModuleController.java
Index: ModuleController.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/components/org/apache/jmeter/control/ModuleController.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- ModuleController.java 12 Jul 2005 20:51:02 -0000 1.10
+++ ModuleController.java 24 Aug 2005 18:18:22 -0000 1.11
@@ -31,6 +31,7 @@
import org.apache.jmeter.testelement.property.JMeterProperty;
import org.apache.jmeter.testelement.property.NullProperty;
import org.apache.jorphan.collections.HashTree;
+import org.apache.jorphan.collections.ListedHashTree;
import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
@@ -75,21 +76,6 @@
}
/**
- * Get the controller which this object is "pointing" to.
- *
- * @return the controller which this node points to
- * @see org.apache.jmeter.testelement.TestElement
- * @see org.apache.jmeter.control.ReplaceableController#getReplacement()
- */
- public TestElement getReplacement() {
- if (selectedNode != null) {
- return selectedNode.getTestElement();
- } else {
- return this;
- }
- }
-
- /**
* Sets the (@link JMeterTreeNode) which represents the controller which
* this object is pointing to. Used for building the test case upon
* execution.
@@ -167,12 +153,15 @@
* @param tree -
* The current tree under which the nodes will be added
*/
- public void replace(HashTree tree) {
+ public HashTree getReplacementSubTree() {
if (!selectedNode.isEnabled()) {
selectedNode = cloneTreeNode(selectedNode);
selectedNode.setEnabled(true);
}
+ HashTree tree = new ListedHashTree();
+ tree.add(selectedNode);
createSubTree(tree, selectedNode);
+ return tree;
}
private void createSubTree(HashTree tree, JMeterTreeNode node) {
1.3 +4 -7 jakarta-jmeter/src/components/org/apache/jmeter/control/IncludeController.java
Index: IncludeController.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/components/org/apache/jmeter/control/IncludeController.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- IncludeController.java 24 Aug 2005 17:33:09 -0000 1.2
+++ IncludeController.java 24 Aug 2005 18:18:22 -0000 1.3
@@ -94,12 +94,9 @@
* The way ReplaceableController works is clone is called first,
* followed by replace(HashTree) and finally getReplacement().
*/
- public void replace(HashTree tree) {
+ public HashTree getReplacementSubTree() {
log.info("----- replace(HashTree) ------");
- ListedHashTree col = (ListedHashTree)this.SUBTREE.get(this.SUB);
- JMeterTreeNode newnode = new JMeterTreeNode(this.SUB,
- GuiPackage.getInstance().getTreeModel());
- tree.add(newnode,new HashTree(col));
+ return SUBTREE;
}
public TestElement getReplacement() {
1.17 +10 -6 jakarta-jmeter/src/core/org/apache/jmeter/gui/action/AbstractAction.java
Index: AbstractAction.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/gui/action/AbstractAction.java,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- AbstractAction.java 12 Jul 2005 20:50:26 -0000 1.16
+++ AbstractAction.java 24 Aug 2005 18:18:25 -0000 1.17
@@ -55,16 +55,20 @@
protected void convertSubTree(HashTree tree) {
Iterator iter = new LinkedList(tree.list()).iterator();
while (iter.hasNext()) {
- JMeterTreeNode item = (JMeterTreeNode) iter.next();
+ Object o = iter.next();
+ if(o instanceof TestElement)
+ continue; //hey, no need to convert
+ JMeterTreeNode item = (JMeterTreeNode) o;
if (item.isEnabled()) {
if (item.getUserObject() instanceof ReplaceableController) {
ReplaceableController rc = (ReplaceableController) item.getTestElement();
HashTree subTree = tree.getTree(item);
if (subTree != null) {
- rc.replace(subTree);
- convertSubTree(subTree);
- tree.replace(item, rc.getReplacement());
+ HashTree replacementTree = rc.getReplacementSubTree();
+ convertSubTree(replacementTree);
+ tree.replace(item,rc);
+ tree.set(rc,replacementTree);
}
} else {
convertSubTree(tree.getTree(item));
1.39 +1 -1 jakarta-jmeter/src/core/org/apache/jmeter/util/JMeterVersion.java
Index: JMeterVersion.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/util/JMeterVersion.java,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- JMeterVersion.java 15 Aug 2005 20:33:08 -0000 1.38
+++ JMeterVersion.java 24 Aug 2005 18:18:25 -0000 1.39
@@ -41,7 +41,7 @@
* JMeterUtils This ensures that JMeterUtils always gets the correct
* version, even if it is not re-compiled during the build.
*/
- private static final String VERSION = "2.1.20050815";
+ private static final String VERSION = "2.1.20050824";
static final String COPYRIGHT = "Copyright (c) 1998-2005 The Apache Software Foundation";
1.6 +3 -11 jakarta-jmeter/src/core/org/apache/jmeter/control/ReplaceableController.java
Index: ReplaceableController.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/control/ReplaceableController.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- ReplaceableController.java 12 Jul 2005 20:51:00 -0000 1.5
+++ ReplaceableController.java 24 Aug 2005 18:18:25 -0000 1.6
@@ -31,14 +31,6 @@
* @version $Revision$
*/
public interface ReplaceableController {
- /**
- * Returns the TestElement that should replace the current
- * ReplaceableCoroller.
- *
- * @return TestElement
- * @see org.apache.jmeter.testelement.TestElement
- */
- public TestElement getReplacement();
/**
* Used to replace the test execution tree (usually by adding the
@@ -50,5 +42,5 @@
* @see org.apache.jorphan.collections.HashTree
* @see org.apache.jmeter.gui.action.AbstractAction#convertSubTree
*/
- public void replace(HashTree tree);
+ public HashTree getReplacementSubTree();
}
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org