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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to