mstover1    2003/02/13 20:17:15

  Modified:    bin      jmeter.properties
               src/components/org/apache/jmeter/assertions/gui
                        AssertionGui.java
               src/components/org/apache/jmeter/modifiers/gui
                        UserParametersGui.java
               src/core/org/apache/jmeter/resources messages.properties
                        messages_de.properties messages_ja.properties
                        messages_no.properties
               src/protocol/http/org/apache/jmeter/protocol/http/proxy
                        ProxyControl.java
  Added:       src/functions/org/apache/jmeter/functions
                        StringFromFile.java
  Log:
  New function that reads values from file (Sebastian Bazley)
  Fixing problems with configure() method in some guis
  
  Revision  Changes    Path
  1.57      +1 -1      jakarta-jmeter/bin/jmeter.properties
  
  Index: jmeter.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/bin/jmeter.properties,v
  retrieving revision 1.56
  retrieving revision 1.57
  diff -u -r1.56 -r1.57
  --- jmeter.properties 6 Feb 2003 14:34:37 -0000       1.56
  +++ jmeter.properties 14 Feb 2003 04:17:15 -0000      1.57
  @@ -92,7 +92,7 @@
   # The commented out values are the defaults.
   
   # legitimate values: xml, csv, db.  Only xml and csv are currently supported.
  -#jmeter.save.saveservice.output_format=xml
  +jmeter.save.saveservice.output_format=csv
   
   # true when field should be saved; false otherwise
   
  
  
  
  1.3       +8 -9      
jakarta-jmeter/src/components/org/apache/jmeter/assertions/gui/AssertionGui.java
  
  Index: AssertionGui.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/components/org/apache/jmeter/assertions/gui/AssertionGui.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- AssertionGui.java 5 Feb 2003 05:12:02 -0000       1.2
  +++ AssertionGui.java 14 Feb 2003 04:17:15 -0000      1.3
  @@ -168,13 +168,11 @@
                        containsBox.setSelected(true);
                        matchesBox.setSelected(false);
                }
  -
                else
                {
                        containsBox.setSelected(false);
                        matchesBox.setSelected(true);
                }
  -
                if(model.isNotType())
                {
                        notBox.setSelected(true);
  @@ -194,6 +192,7 @@
                        responseStringButton.setSelected(false);
                        labelButton.setSelected(true);
                }
  +        tableModel.clearData();
                Iterator tests = model.getTestStrings().iterator();
                while(tests.hasNext())
                {
  
  
  
  1.4       +13 -7     
jakarta-jmeter/src/components/org/apache/jmeter/modifiers/gui/UserParametersGui.java
  
  Index: UserParametersGui.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/components/org/apache/jmeter/modifiers/gui/UserParametersGui.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- UserParametersGui.java    5 Feb 2003 05:12:03 -0000       1.3
  +++ UserParametersGui.java    14 Feb 2003 04:17:15 -0000      1.4
  @@ -56,7 +56,8 @@
        
        public void configure(TestElement el)
        {
  -             tableModel.clearData();
  +        initTableModel();
  +        paramTable.setModel(tableModel);
                UserParameters params = (UserParameters)el;
                List names = params.getNames();
                List threadValues = params.getThreadLists();
  @@ -102,12 +103,7 @@
                JPanel paramPanel = new JPanel(new BorderLayout());
                JLabel tableLabel =
                        new JLabel(JMeterUtils.getResString("user_parameters_table"));
  -             tableModel =
  -                     new PowerTableModel(
  -                             new String[] {
  -                                     JMeterUtils.getResString("name"),
  -                                     THREAD_COLUMNS + "_" + numUserColumns },
  -                             new Class[] { String.class, String.class });
  +             initTableModel();
                paramTable = new JTable(tableModel);
                paramTable.setRowSelectionAllowed(true);
                paramTable.setColumnSelectionAllowed(true);
  @@ -123,6 +119,16 @@
                paramPanel.add(makeButtonPanel(), BorderLayout.SOUTH);
                return paramPanel;
        }
  +
  +    protected void initTableModel()
  +    {
  +        tableModel =
  +             new PowerTableModel(
  +                     new String[] {
  +                             JMeterUtils.getResString("name"),
  +                             THREAD_COLUMNS + "_" + numUserColumns },
  +                     new Class[] { String.class, String.class });
  +    }
   
        private JPanel makeButtonPanel() {
                JPanel buttonPanel = new JPanel();
  
  
  
  1.28      +2 -1      
jakarta-jmeter/src/core/org/apache/jmeter/resources/messages.properties
  
  Index: messages.properties
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/resources/messages.properties,v
  retrieving revision 1.27
  retrieving revision 1.28
  diff -u -r1.27 -r1.28
  --- messages.properties       13 Feb 2003 21:33:18 -0000      1.27
  +++ messages.properties       14 Feb 2003 04:17:15 -0000      1.28
  @@ -335,4 +335,5 @@
   ref_name_field=Reference Name:
   match_num_field=Match No. (0 for Random):
   menu_extractors=Extractors and Post Request Processors
  -simple_data_writer_title=Simple Data Writer
  +string_from_file_file_name=Enter full path to file
  +simple_data_writer_title=Simple Data Writer
  \ No newline at end of file
  
  
  
  1.24      +3 -1      
jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_de.properties
  
  Index: messages_de.properties
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_de.properties,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- messages_de.properties    7 Feb 2003 04:18:53 -0000       1.23
  +++ messages_de.properties    14 Feb 2003 04:17:15 -0000      1.24
  @@ -331,4 +331,6 @@
   ref_name_field=Reference Name:
   match_num_field=Match No. (0 for Random):
   menu_extractors=Extractors and Post Request Processors
  -graph_results_median=Median
  \ No newline at end of file
  +graph_results_median=Median
  +string_from_file_file_name=Enter full path to file
  +simple_data_writer_title=Simple Data Writer
  \ No newline at end of file
  
  
  
  1.21      +3 -1      
jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_ja.properties
  
  Index: messages_ja.properties
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_ja.properties,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- messages_ja.properties    7 Feb 2003 04:18:53 -0000       1.20
  +++ messages_ja.properties    14 Feb 2003 04:17:15 -0000      1.21
  @@ -326,4 +326,6 @@
   ref_name_field=Reference Name:
   match_num_field=Match No. (0 for Random):
   menu_extractors=Extractors and Post Request Processors
  -graph_results_median=Median
  \ No newline at end of file
  +graph_results_median=Median
  +string_from_file_file_name=Enter full path to file
  +simple_data_writer_title=Simple Data Writer
  \ No newline at end of file
  
  
  
  1.21      +3 -1      
jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_no.properties
  
  Index: messages_no.properties
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/resources/messages_no.properties,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- messages_no.properties    7 Feb 2003 04:18:53 -0000       1.20
  +++ messages_no.properties    14 Feb 2003 04:17:15 -0000      1.21
  @@ -318,4 +318,6 @@
   ref_name_field=Reference Name:
   match_num_field=Match No. (0 for Random):
   menu_extractors=Extractors and Post Request Processors
  -graph_results_median=Median
  \ No newline at end of file
  +graph_results_median=Median
  +string_from_file_file_name=Enter full path to file
  +simple_data_writer_title=Simple Data Writer
  \ No newline at end of file
  
  
  
  1.1                  
jakarta-jmeter/src/functions/org/apache/jmeter/functions/StringFromFile.java
  
  Index: StringFromFile.java
  ===================================================================
  package org.apache.jmeter.functions;
  
  import java.io.Serializable;
  import java.util.Collection;
  import java.util.LinkedList;
  import java.util.List;
  import java.io.*;
  import java.util.*;
  
  import org.apache.jmeter.samplers.SampleResult;
  import org.apache.jmeter.samplers.Sampler;
  import org.apache.jmeter.threads.JMeterVariables;
  import org.apache.jmeter.util.JMeterUtils;
  
  import org.apache.log.Hierarchy;
  import org.apache.log.Logger;
  
  
  /**
   * @author default
   *
   * To change this generated comment edit the template variable "typecomment":
   * Window>Preferences>Java>Templates.
   * To enable and disable the creation of type comments go to
   * Window>Preferences>Java>Code Generation.
   */
  /*
   * It appears that JMeter instantiates a new copy of each function for every 
reference in a Sampler
   * or elsewhere.
   */
  
  public class StringFromFile extends AbstractFunction implements Serializable
  {
        transient private static Logger log = 
Hierarchy.getDefaultHierarchy().getLoggerFor(
                        "jmeter.elements");
        private static final List desc = new LinkedList();
        static
        {
                desc.add(JMeterUtils.getResString("string_from_file_file_name"));
                desc.add(JMeterUtils.getResString("function_name_param"));
        }
        
        private static final String KEY = "_StringFromFile"; // Function name (only 1 
_)
        private String myValue = "<please supply a file>"; // Default value
        private String myName  = "StringFromFile_"; // Name to store value in
        private String fileName;
        private BufferedReader myBread; // Buffered reader
        private boolean reopenFile=true; // Set from parameter list one day ...
        
        public StringFromFile()
        {
        }
        
        public Object clone()
        {
                StringFromFile newReader = new StringFromFile();
                return newReader;
        }
  
        private void openFile(){
            try {
                FileReader fis = new FileReader(fileName);
                myBread = new BufferedReader(fis);
            } catch (Exception e) {
                log.error("openFile",e);
            }
        }
  
        /**
         * @see org.apache.jmeter.functions.Function#execute(SampleResult, Sampler)
         */
        public synchronized String execute(SampleResult previousResult, Sampler 
currentSampler)
                throws InvalidVariableException {
                JMeterVariables vars = getVariables();
                myValue="**ERR**";
                if (null != myBread) {// Did we open the file?
                  try {
                    String line = myBread.readLine();
                    if (line == null && reopenFile) { // EOF, re-open file
                        myBread.close();
                        openFile();
                        line = myBread.readLine();
                    }
                    myValue = line;
                  } catch (Exception e) {
                    log.error("Token",e);
                  }
                }
                vars.put(myName,myValue);
                return myValue;
        }
  
        /**
         * @see org.apache.jmeter.functions.Function#setParameters(String)
         */
        public void setParameters(String parameters)
                throws InvalidVariableException {
                        Collection params = this.parseArguments(parameters);
                        String[] values = (String[])params.toArray(new String[0]);
                        fileName = values[0];
                        if(values.length > 1)
                        {
                                myName = values[1];
                        }
                        openFile();
        }
  
        /**
         * @see org.apache.jmeter.functions.Function#getReferenceKey()
         */
        public String getReferenceKey() {
                return KEY;
        }
  
        /**
         * @see org.apache.jmeter.functions.Function#getArgumentDesc()
         */
        public List getArgumentDesc() {
                return desc;
        }
  
  }
  
  
  
  1.13      +14 -9     
jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/proxy/ProxyControl.java
  
  Index: ProxyControl.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/protocol/http/org/apache/jmeter/protocol/http/proxy/ProxyControl.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- ProxyControl.java 7 Feb 2003 00:36:25 -0000       1.12
  +++ ProxyControl.java 14 Feb 2003 04:17:15 -0000      1.13
  @@ -323,10 +323,8 @@
                   if (areMatched(sampler, urlConfig))
                   {
                       removeValuesFromSampler(sampler, urlConfig);
  -                    replacer.reverseReplace(sampler);
  -                    HttpTestSampleGui test = new HttpTestSampleGui();
  -                    test.configure(sampler);
  -                    sampler = (HTTPSampler) test.createTestElement();
  +                    replaceValues(sampler,subConfigs);
  +                    
sampler.setProperty(TestElement.GUI_CLASS,"org.apache.jmeter.protocol.http.control.gui.HttpTestSampleGui");
                       try
                       {
                           JMeterTreeNode newNode = treeModel.addComponent(sampler, 
node);
  @@ -334,10 +332,8 @@
                           {
                               if (subConfigs[i] instanceof HeaderManager)
                               {
  -                                HeaderPanel comp = new HeaderPanel();
  -                                replacer.reverseReplace(subConfigs[i]);
  -                                comp.configure(subConfigs[i]);
  -                                treeModel.addComponent(comp.createTestElement(), 
newNode);
  +                                
subConfigs[i].setProperty(TestElement.GUI_CLASS,"org.apache.jmeter.protocol.http.gui.HeaderPanel");
  +                                treeModel.addComponent(subConfigs[i], newNode);
                               }
                           }
                       }
  @@ -421,6 +417,15 @@
           }
           return ok;
       }
  +
  +    protected void replaceValues(TestElement sampler, TestElement[] configs)
  +        {
  +            GuiPackage.getInstance().getReplacer().reverseReplace(sampler);
  +            for (int i = 0; i < configs.length; i++)
  +            {
  +                GuiPackage.getInstance().getReplacer().reverseReplace(configs[i]);
  +            }
  +        }
       public static class Test extends TestCase
       {
           public Test(String name)
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to