mstover1    2002/08/28 14:29:27

  Modified:    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/core/org/apache/jmeter/threads JMeterThread.java
               src/functions/org/apache/jmeter/functions
                        IterationCounter.java
  Added:       src/components/org/apache/jmeter/modifiers
                        CounterConfig.java
               src/components/org/apache/jmeter/modifiers/gui
                        CounterConfigGui.java
  Log:
  New counter config element deprecates HTTP Parameter Mask modifier
  
  Revision  Changes    Path
  1.1                  
jakarta-jmeter/src/components/org/apache/jmeter/modifiers/CounterConfig.java
  
  Index: CounterConfig.java
  ===================================================================
  package org.apache.jmeter.modifiers;
  import java.io.Serializable;
  
  import org.apache.jmeter.config.ConfigTestElement;
  import org.apache.jmeter.testelement.ThreadListener;
  import org.apache.jmeter.testelement.VariablesCollection;
  import org.apache.jmeter.threads.JMeterVariables;
  /**
   * @author Administrator
   *
   * To change this generated comment edit the template variable "typecomment":
   * Window>Preferences>Java>Templates.
   */
  public class CounterConfig
        extends ConfigTestElement
        implements Serializable, ThreadListener
  {
        private final static String START = "CounterConfig.start";
        private final static String END = "CounterConfig.end";
        private final static String INCREMENT = "CounterConfig.incr";
        private final static String PER_USER = "CounterConfig.per_user";
        private final static String VAR_NAME = "CounterConfig.name";
        
        private boolean perUser = false;
        private int globalCounter = 0;
        private int increment = 1;
        private int start = 0;
        private int end = Integer.MAX_VALUE;
        private VariablesCollection vars = new VariablesCollection();
        /**
         * @see org.apache.jmeter.testelement.ThreadListener#iterationStarted(int)
         */
        public synchronized void iterationStarted(int iterationCount)
        {
                JMeterVariables variables = vars.getVariables();
                if(perUser)
                {
                        int value = start + (increment * (iterationCount-1));
                        value = value % end;
                        variables.put(getVarName(),Integer.toString(value));
                }
                else
                {
                        globalCounter++;
                        int value = start + (increment * globalCounter);
                        value = value % end;
                        variables.put(getVarName(),Integer.toString(value));
                }                               
        }
        
        /**
         * @see 
org.apache.jmeter.testelement.ThreadListener#setJMeterVariables(JMeterVariables)
         */
        public void setJMeterVariables(JMeterVariables jmVars)
        {
                vars.addJMeterVariables(jmVars);
                start = getStart();
                end = getEnd();
                increment = getIncrement();
                perUser = isPerUser();
        }
        
        public void setStart(int start)
        {
                setProperty(START,new Integer(start));
        }
        
        public void setStart(String start)
        {
                setProperty(START,start);
        }
        
        public int getStart()
        {
                return getPropertyAsInt(START);
        }
        
        public void setEnd(int end)
        {
                setProperty(END,new Integer(end));
        }
        
        public void setEnd(String end)
        {
                setProperty(END,end);
        }
        
        public int getEnd()
        {
                return getPropertyAsInt(END);
        }
        
        public void setIncrement(int inc)
        {
                setProperty(INCREMENT,new Integer(inc));
        }
        
        public void setIncrement(String incr)
        {
                setProperty(INCREMENT,incr);
        }
        
        public int getIncrement()
        {
                return getPropertyAsInt(INCREMENT);
        }
        
        public void setIsPerUser(boolean isPer)
        {
                setProperty(PER_USER,new Boolean(isPer));
        }
        
        public boolean isPerUser()
        {
                return getPropertyAsBoolean(PER_USER);
        }
        
        public void setVarName(String name)
        {
                setProperty(VAR_NAME,name);
        }
        
        public String getVarName()
        {
                return getPropertyAsString(VAR_NAME);
        }
  }
  
  
  
  1.2       +6 -8      
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.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- UserParametersGui.java    18 Aug 2002 03:12:48 -0000      1.1
  +++ UserParametersGui.java    28 Aug 2002 21:29:27 -0000      1.2
  @@ -30,10 +30,8 @@
    * Window>Preferences>Java>Templates.
    */
   public class UserParametersGui extends AbstractConfigGui {
  -     private static final String label =
  -             JMeterUtils.getResString("user_parameters_title");
  -     private static final String NAME_COLUMN = JMeterUtils.getResString("name");
  -     private static final String THREAD_COLUMNS =
  +
  +     private String THREAD_COLUMNS =
                JMeterUtils.getResString("user");
   
        JTable paramTable;
  @@ -53,7 +51,7 @@
         * @see org.apache.jmeter.gui.JMeterGUIComponent#getStaticLabel()
         */
        public String getStaticLabel() {
  -             return label;
  +             return JMeterUtils.getResString("user_parameters_title");
        }
        
        public void configure(TestElement el)
  @@ -84,7 +82,7 @@
         */
        public TestElement createTestElement() {
                UserParameters params = new UserParameters();
  -             params.setNames(tableModel.getColumnData(NAME_COLUMN));
  +             
params.setNames(tableModel.getColumnData(JMeterUtils.getResString("name")));
                List threadLists = new LinkedList();
                for (int x = 1; x < tableModel.getColumnCount(); x++) {
                        threadLists.add(tableModel.getColumnData(THREAD_COLUMNS + "_" 
+ x));
  @@ -101,7 +99,7 @@
        }
   
        private JPanel makeTitlePanel() {
  -             JLabel title = new JLabel(label);
  +             JLabel title = new 
JLabel(JMeterUtils.getResString("user_parameters_title"));
                JPanel titlePanel = new JPanel(new BorderLayout());
                titlePanel.add(title, BorderLayout.NORTH);
                titlePanel.add(getNamePanel(), BorderLayout.SOUTH);
  @@ -115,7 +113,7 @@
                tableModel =
                        new PowerTableModel(
                                new String[] {
  -                                     NAME_COLUMN,
  +                                     JMeterUtils.getResString("name"),
                                        THREAD_COLUMNS + "_" + numUserColumns },
                                new Class[] { String.class, String.class });
                paramTable = new JTable(tableModel);
  
  
  
  1.1                  
jakarta-jmeter/src/components/org/apache/jmeter/modifiers/gui/CounterConfigGui.java
  
  Index: CounterConfigGui.java
  ===================================================================
  package org.apache.jmeter.modifiers.gui;
  import javax.swing.BorderFactory;
  import javax.swing.JCheckBox;
  
  import org.apache.jmeter.config.gui.AbstractConfigGui;
  import org.apache.jmeter.gui.util.JLabeledTextField;
  import org.apache.jmeter.gui.util.VerticalLayout;
  import org.apache.jmeter.modifiers.CounterConfig;
  import org.apache.jmeter.testelement.TestElement;
  import org.apache.jmeter.util.JMeterUtils;
  /**
   * @author Administrator
   *
   * To change this generated comment edit the template variable "typecomment":
   * Window>Preferences>Java>Templates.
   */
  public class CounterConfigGui extends AbstractConfigGui
  {
        private JLabeledTextField startField,incrField,endField,varNameField;
        private JCheckBox perUserField;
        
        public CounterConfigGui()
        {
                super();
                init();
        }
        
        /**
         * @see org.apache.jmeter.gui.JMeterGUIComponent#getStaticLabel()
         */
        public String getStaticLabel()
        {
                return JMeterUtils.getResString("counter_config_title");
        }
        /**
         * @see org.apache.jmeter.gui.JMeterGUIComponent#createTestElement()
         */
        public TestElement createTestElement()
        {
                CounterConfig config = new CounterConfig();
                config.setStart(startField.getText());
                if(endField.getText().length() > 0)
                {
                        config.setEnd(endField.getText());
                }
                config.setIncrement(incrField.getText());
                config.setVarName(varNameField.getText());
                config.setIsPerUser(perUserField.isSelected());
                super.configureTestElement(config);
                return config;
        }
        
        public void configure(TestElement element)
        {
                super.configure(element);
                CounterConfig config = (CounterConfig)element;
                startField.setText(Integer.toString(config.getStart()));
                endField.setText(Integer.toString(config.getEnd()));
                incrField.setText(Integer.toString(config.getIncrement()));
                varNameField.setText(config.getVarName());
                perUserField.setSelected(config.isPerUser());
        }
        
        private void init()
        {
                this.setBorder(BorderFactory.createTitledBorder(
                                BorderFactory.createEmptyBorder(5,10,5,5),
                                JMeterUtils.getResString("counter_config_title")));
                this.setLayout(new VerticalLayout(5,VerticalLayout.LEFT));
                startField = new 
JLabeledTextField(JMeterUtils.getResString("start"),5);
                incrField = new 
JLabeledTextField(JMeterUtils.getResString("increment"),5);
                endField = new JLabeledTextField(JMeterUtils.getResString("max"),5);
                varNameField = new 
JLabeledTextField(JMeterUtils.getResString("var_name"));
                perUserField = new 
JCheckBox(JMeterUtils.getResString("counter_per_user"));
                add(getNamePanel());
                add(startField);
                add(incrField);
                add(endField);
                add(varNameField);
                add(perUserField);
        }
  }
  
  
  
  1.10      +5 -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.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- messages.properties       28 Aug 2002 02:58:53 -0000      1.9
  +++ messages.properties       28 Aug 2002 21:29:27 -0000      1.10
  @@ -294,4 +294,8 @@
   japanese=Japanese
   german=German
   norwegian=Norwegian
  -record_controller_title=Recording Controller
  \ No newline at end of file
  +record_controller_title=Recording Controller
  +counter_config_title=Counter
  +var_name=Reference Name
  +counter_per_user=Track counter independently for each user
  +max=Maximum
  \ No newline at end of file
  
  
  
  1.12      +5 -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.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- messages_de.properties    28 Aug 2002 02:58:53 -0000      1.11
  +++ messages_de.properties    28 Aug 2002 21:29:27 -0000      1.12
  @@ -294,4 +294,8 @@
   japanese=Japanese
   german=Deutsch
   norwegian=Norwegian
  -record_controller_title=Recording Controller
  \ No newline at end of file
  +record_controller_title=Recording Controller
  +counter_config_title=Counter
  +var_name=Reference Name
  +counter_per_user=Track counter independently for each user
  +max=Maximum
  \ No newline at end of file
  
  
  
  1.10      +5 -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.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- messages_ja.properties    28 Aug 2002 02:58:53 -0000      1.9
  +++ messages_ja.properties    28 Aug 2002 21:29:27 -0000      1.10
  @@ -289,4 +289,8 @@
   japanese=Japanese
   german=German
   norwegian=Norwegian
  -record_controller_title=Recording Controller
  \ No newline at end of file
  +record_controller_title=Recording Controller
  +counter_config_title=Counter
  +var_name=Reference Name
  +counter_per_user=Track counter independently for each user
  +max=Maximum
  \ No newline at end of file
  
  
  
  1.10      +5 -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.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- messages_no.properties    28 Aug 2002 02:58:53 -0000      1.9
  +++ messages_no.properties    28 Aug 2002 21:29:27 -0000      1.10
  @@ -281,4 +281,8 @@
   japanese=Japanese
   german=German
   norwegian=Norwegian
  -record_controller_title=Recording Controller
  \ No newline at end of file
  +record_controller_title=Recording Controller
  +counter_config_title=Counter
  +var_name=Reference Name
  +counter_per_user=Track counter independently for each user
  +max=Maximum
  \ No newline at end of file
  
  
  
  1.8       +3 -3      
jakarta-jmeter/src/core/org/apache/jmeter/threads/JMeterThread.java
  
  Index: JMeterThread.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/threads/JMeterThread.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- JMeterThread.java 27 Aug 2002 15:03:36 -0000      1.7
  +++ JMeterThread.java 28 Aug 2002 21:29:27 -0000      1.8
  @@ -130,8 +130,8 @@
                        rampUpDelay();
                        log.info("Thread "+Thread.currentThread().getName()+" 
started");
                        while (running) {
  +                             notifyThreadListeners();
                                while (controller.hasNext() && running) {
  -                                     notifyThreadListeners();
                                        try
                                        {
                                                SamplePackage pack = 
compiler.configureSampler(controller.next());
  
  
  
  1.3       +1 -1      
jakarta-jmeter/src/functions/org/apache/jmeter/functions/IterationCounter.java
  
  Index: IterationCounter.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/functions/org/apache/jmeter/functions/IterationCounter.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- IterationCounter.java     16 Aug 2002 21:10:21 -0000      1.2
  +++ IterationCounter.java     28 Aug 2002 21:29:27 -0000      1.3
  @@ -49,7 +49,7 @@
        /**
         * @see org.apache.jmeter.functions.Function#execute(SampleResult, Sampler)
         */
  -     public String execute(SampleResult previousResult, Sampler currentSampler)
  +     public synchronized String execute(SampleResult previousResult, Sampler 
currentSampler)
                throws InvalidVariableException {
                counter++;
                JMeterVariables vars = getVariables();
  
  
  

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

Reply via email to