You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by se...@apache.org on 2014/11/30 20:35:08 UTC

svn commit: r1642600 - in /jmeter/trunk/src/components/org/apache/jmeter/visualizers/backend: BackendListener.java BackendListenerGui.java

Author: sebb
Date: Sun Nov 30 19:35:07 2014
New Revision: 1642600

URL: http://svn.apache.org/r1642600
Log:
Store queue size as a String (allows use of variables etc)

Modified:
    jmeter/trunk/src/components/org/apache/jmeter/visualizers/backend/BackendListener.java
    jmeter/trunk/src/components/org/apache/jmeter/visualizers/backend/BackendListenerGui.java

Modified: jmeter/trunk/src/components/org/apache/jmeter/visualizers/backend/BackendListener.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/components/org/apache/jmeter/visualizers/backend/BackendListener.java?rev=1642600&r1=1642599&r2=1642600&view=diff
==============================================================================
--- jmeter/trunk/src/components/org/apache/jmeter/visualizers/backend/BackendListener.java (original)
+++ jmeter/trunk/src/components/org/apache/jmeter/visualizers/backend/BackendListener.java Sun Nov 30 19:35:07 2014
@@ -87,7 +87,7 @@ public class BackendListener extends Abs
     private transient BackendListenerClient backendListenerClient = null;
 
 
-    private static final int DEFAULT_QUEUE_SIZE = 5000;
+    public static final String DEFAULT_QUEUE_SIZE = "5000";
     
     private transient BlockingQueue<SampleResult> queue; // created by server in readResolve method
     
@@ -160,7 +160,15 @@ public class BackendListener extends Abs
         if(LOGGER.isDebugEnabled()){
             LOGGER.debug(whoAmI() + "\ttestStarted(" + host + ")");
         }
-        queue = new ArrayBlockingQueue<SampleResult>(getQueueSize()); 
+        int queueSize;
+        final String size = getQueueSize();
+        try {
+            queueSize = Integer.parseInt(size);
+        } catch (NumberFormatException nfe) {
+            LOGGER.warn("Invalid queue size '" + size + "' defaulting to " + DEFAULT_QUEUE_SIZE);
+            queueSize = Integer.parseInt(DEFAULT_QUEUE_SIZE);            
+        }
+        queue = new ArrayBlockingQueue<SampleResult>(queueSize); 
         initClass();
         queueWaits = new AtomicLong(0L);
         queueWaitTime = new AtomicLong(0L);
@@ -415,7 +423,7 @@ public class BackendListener extends Abs
      * @param queueSize
      *            
      */
-    public void setQueueSize(int queueSize) {
+    public void setQueueSize(String queueSize) {
         setProperty(QUEUE_SIZE, queueSize, DEFAULT_QUEUE_SIZE);
     }
 
@@ -424,7 +432,7 @@ public class BackendListener extends Abs
      *
      * @return int queueSize
      */
-    public int getQueueSize() {
-        return getPropertyAsInt(QUEUE_SIZE, DEFAULT_QUEUE_SIZE);
+    public String getQueueSize() {
+        return getPropertyAsString(QUEUE_SIZE, DEFAULT_QUEUE_SIZE);
     }
 }

Modified: jmeter/trunk/src/components/org/apache/jmeter/visualizers/backend/BackendListenerGui.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/components/org/apache/jmeter/visualizers/backend/BackendListenerGui.java?rev=1642600&r1=1642599&r2=1642600&view=diff
==============================================================================
--- jmeter/trunk/src/components/org/apache/jmeter/visualizers/backend/BackendListenerGui.java (original)
+++ jmeter/trunk/src/components/org/apache/jmeter/visualizers/backend/BackendListenerGui.java Sun Nov 30 19:35:07 2014
@@ -136,7 +136,7 @@ public class BackendListenerGui extends 
         classNamePanel.add(label);
         classNamePanel.add(classnameCombo);
 
-        queueSize = new JTextField("0", 5);  // TODO "0" is a hack to prevent NumberFormatException: For input string: ""
+        queueSize = new JTextField(BackendListener.DEFAULT_QUEUE_SIZE, 5);
         queueSize.setName("Queue Size"); //$NON-NLS-1$
         JLabel queueSizeLabel = new JLabel(JMeterUtils.getResString("backend_listener_queue_size")); // $NON-NLS-1$
         queueSizeLabel.setLabelFor(queueSize);
@@ -232,7 +232,7 @@ public class BackendListenerGui extends 
             LOGGER.error("Error setting class:'"+className+"' in BackendListener: "+getName()+
                     ", check for a missing jar in your jmeter 'search_paths' and 'plugin_dependency_paths' properties");
         }
-        queueSize.setText(Integer.toString(((BackendListener)config).getQueueSize()));
+        queueSize.setText(((BackendListener)config).getQueueSize());
     }
 
     /**
@@ -265,7 +265,7 @@ public class BackendListenerGui extends 
         BackendListener backendListener = (BackendListener) config;
         backendListener.setArguments((Arguments) argsPanel.createTestElement());
         backendListener.setClassname(String.valueOf(classnameCombo.getSelectedItem()));
-        backendListener.setQueueSize(Integer.parseInt(queueSize.getText()));
+        backendListener.setQueueSize(queueSize.getText());
         
     }
 
@@ -277,6 +277,6 @@ public class BackendListenerGui extends 
         super.clearGui();
         argsPanel.clearGui();
         classnameCombo.setSelectedIndex(0);
-        queueSize.setText("0"); // TODO this is a hack to prevent NumberFormatException: For input string: ""
+        queueSize.setText(BackendListener.DEFAULT_QUEUE_SIZE);
     }
 }