jmeter-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From pmoua...@apache.org
Subject svn commit: r1721041 - in /jmeter/trunk: src/protocol/http/org/apache/jmeter/protocol/http/control/ src/protocol/http/org/apache/jmeter/protocol/http/gui/ xdocs/
Date Sun, 20 Dec 2015 16:09:50 GMT
Author: pmouawad
Date: Sun Dec 20 16:09:49 2015
New Revision: 1721041

URL: http://svn.apache.org/viewvc?rev=1721041&view=rev
Log:
Bug 58756 - CookieManager : Cookie Policy select box content must depend on Cookie implementation
Bugzilla Id: 58756

Modified:
    jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/HC3CookieHandler.java
    jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/HC4CookieHandler.java
    jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/gui/CookiePanel.java
    jmeter/trunk/xdocs/changes.xml

Modified: jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/HC3CookieHandler.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/HC3CookieHandler.java?rev=1721041&r1=1721040&r2=1721041&view=diff
==============================================================================
--- jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/HC3CookieHandler.java
(original)
+++ jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/HC3CookieHandler.java
Sun Dec 20 16:09:49 2015
@@ -36,6 +36,15 @@ import org.apache.log.Logger;
 public class HC3CookieHandler implements CookieHandler {
    private static final Logger log = LoggingManager.getLoggerForClass();
 
+   public static final String[] AVAILABLE_POLICIES = new String[] {
+       "default",
+       "compatibility",
+       "rfc2109",
+       "rfc2965",
+       "ignorecookies",
+       "netscape"
+   };
+
     private final transient CookieSpec cookieSpec;
 
     /**

Modified: jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/HC4CookieHandler.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/HC4CookieHandler.java?rev=1721041&r1=1721040&r2=1721041&view=diff
==============================================================================
--- jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/HC4CookieHandler.java
(original)
+++ jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/HC4CookieHandler.java
Sun Dec 20 16:09:49 2015
@@ -54,6 +54,18 @@ import org.apache.log.Logger;
 public class HC4CookieHandler implements CookieHandler {
     private static final Logger log = LoggingManager.getLoggerForClass();
     
+    public static final String[] AVAILABLE_POLICIES = new String[]{
+        CookieSpecs.DEFAULT,
+        CookieSpecs.STANDARD,
+        CookieSpecs.STANDARD_STRICT,
+        CookieSpecs.IGNORE_COOKIES,
+        CookieSpecs.BEST_MATCH,
+        CookieSpecs.BROWSER_COMPATIBILITY,
+        "rfc2109",
+        "rfc2965",
+        CookieSpecs.NETSCAPE
+    };
+
     private final transient CookieSpec cookieSpec;
     
     private static PublicSuffixMatcher publicSuffixMatcher = PublicSuffixMatcherLoader.getDefault();

Modified: jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/gui/CookiePanel.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/gui/CookiePanel.java?rev=1721041&r1=1721040&r2=1721041&view=diff
==============================================================================
--- jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/gui/CookiePanel.java (original)
+++ jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/gui/CookiePanel.java Sun
Dec 20 16:09:49 2015
@@ -49,6 +49,7 @@ import org.apache.jmeter.protocol.http.c
 import org.apache.jmeter.protocol.http.control.CookieHandler;
 import org.apache.jmeter.protocol.http.control.CookieManager;
 import org.apache.jmeter.protocol.http.control.HC3CookieHandler;
+import org.apache.jmeter.protocol.http.control.HC4CookieHandler;
 import org.apache.jmeter.testelement.TestElement;
 import org.apache.jmeter.testelement.property.JMeterProperty;
 import org.apache.jmeter.util.JMeterUtils;
@@ -117,20 +118,6 @@ public class CookiePanel extends Abstrac
 
     private JButton saveButton;
 
-    /**
-     * List of cookie policies.
-     *
-     * These are used both for the display, and for setting the policy
-    */
-    private final String[] policies = new String[] {
-        "default",
-        "compatibility",
-        "rfc2109",
-        "rfc2965",
-        "ignorecookies",
-        "netscape"
-    };
-
     private JLabeledChoice policy;
 
     /**
@@ -234,7 +221,23 @@ public class CookiePanel extends Abstrac
             } catch (IOException ex) {
                 JMeterUtils.reportErrorToUser(ex.getMessage(), "Error saving cookies");
             }
+        } else if (action.equals(HANDLER_COMMAND)) {
+            policy.setValues(getPolicies(handlerMap.get(selectHandlerPanel.getSelectedItem())));
+         }
+    }
+
+    /**
+     * @param className CookieHandler class name
+     * @return cookie policies
+     */
+    private static String[] getPolicies(String className) {
+        // TODO it would be better if CookieHandler had a method getSupportedPolicies() and
empty constructor 
+        if(HC3CookieHandler.class.getName().equals(className)) {
+            return HC3CookieHandler.AVAILABLE_POLICIES;
+        } else if(HC4CookieHandler.class.getName().equals(className)) {
+            return HC4CookieHandler.AVAILABLE_POLICIES;
         }
+        return HC4CookieHandler.AVAILABLE_POLICIES;
     }
 
     private void addCookieToTable(Cookie cookie) {
@@ -326,7 +329,7 @@ public class CookiePanel extends Abstrac
             new JCheckBox(JMeterUtils.getResString("clear_cookies_per_iter"), false); //$NON-NLS-1$
         policy = new JLabeledChoice(
                 JMeterUtils.getResString("cookie_manager_policy"), //$NON-NLS-1$
-                policies);
+                getPolicies(CookieManager.DEFAULT_IMPLEMENTATION));
         policy.setText(CookieManager.DEFAULT_POLICY);
         setLayout(new BorderLayout());
         setBorder(makeBorder());
@@ -341,9 +344,9 @@ public class CookiePanel extends Abstrac
         optionsPane.add(clearEachIteration);
         JPanel policyTypePane = new JPanel();
         policyTypePane.setLayout(new FlowLayout(FlowLayout.LEFT, 0, 0));
-        policyTypePane.add(policy);
         policyTypePane.add(GuiUtils.createLabelCombo(
                 JMeterUtils.getResString("cookie_implementation_choose"), createComboHandler()));
// $NON-NLS-1$
+        policyTypePane.add(policy);
         optionsPane.add(policyTypePane);
         northPanel.add(optionsPane);
         add(northPanel, BorderLayout.NORTH);
@@ -414,7 +417,7 @@ public class CookiePanel extends Abstrac
         String tmpName = null;
         for (String clazz : classesToAdd) {
             String shortClazz = clazz.substring(clazz.lastIndexOf('.') + 1);
-            if (HC3CookieHandler.class.getName().equals(clazz)) {
+            if (CookieManager.DEFAULT_IMPLEMENTATION.equals(clazz)) {
                 tmpName = shortClazz;
             }
             selectHandlerPanel.addItem(shortClazz);

Modified: jmeter/trunk/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/changes.xml?rev=1721041&r1=1721040&r2=1721041&view=diff
==============================================================================
--- jmeter/trunk/xdocs/changes.xml (original)
+++ jmeter/trunk/xdocs/changes.xml Sun Dec 20 16:09:49 2015
@@ -123,6 +123,7 @@ Summary
   <li><bug>58303</bug>Change usage of bouncycastle api in SMIMEAssertion
to get rid of deprecation warnings.</li>
   <li><bug>58515</bug>New JSON related components : JSON-PATH Extractor
and JSON-PATH Renderer in View Results Tree. Donated by Ubik Load Pack (support at ubikloadpack.com).</li>
   <li><bug>58698</bug>Correct parsing of auth-files in HTTP Authorization
Manager.</li>
+  <li><bug>58756</bug>CookieManager : Cookie Policy select box content
must depend on Cookie implementation.</li>
 </ul>
 
 <h3>Functions</h3>



Mime
View raw message