Author: pmouawad
Date: Tue Dec 27 14:06:11 2016
New Revision: 1776135

URL: http://svn.apache.org/viewvc?rev=1776135&view=rev
Log:
Sonar : Fix errors, vulnerabilities

Modified:
    
jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/CookieHandler.java
    
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

Modified: 
jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/CookieHandler.java
URL: 
http://svn.apache.org/viewvc/jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/CookieHandler.java?rev=1776135&r1=1776134&r2=1776135&view=diff
==============================================================================
--- 
jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/CookieHandler.java
 (original)
+++ 
jmeter/trunk/src/protocol/http/org/apache/jmeter/protocol/http/control/CookieHandler.java
 Tue Dec 27 14:06:11 2016
@@ -53,5 +53,10 @@ public interface CookieHandler {
      * @return Cookie default policy name
      */
     String getDefaultPolicy();
+    
+    /**
+     * @return Supported cookie policies
+     */
+    String[] getPolicies();
 
 }

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=1776135&r1=1776134&r2=1776135&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
 Tue Dec 27 14:06:11 2016
@@ -39,7 +39,7 @@ public class HC3CookieHandler implements
    private static final Logger log = LoggingManager.getLoggerForClass();
 
    static final String DEFAULT_POLICY_NAME = "compatibility";
-   public static final String[] AVAILABLE_POLICIES = new String[] {
+   private static final String[] AVAILABLE_POLICIES = new String[] { 
        DEFAULT_POLICY_NAME,
        "default",
        "rfc2109",
@@ -51,6 +51,13 @@ public class HC3CookieHandler implements
     private final transient CookieSpec cookieSpec;
 
     /**
+     * Default constructor that uses {@link 
HC3CookieHandler#DEFAULT_POLICY_NAME}
+     */
+    public HC3CookieHandler() {
+        this(DEFAULT_POLICY_NAME);
+    }
+    
+    /**
      * @param policy
      *            cookie policy to which to conform (see
      *            {@link CookiePolicy#getCookieSpec(String)}
@@ -212,4 +219,9 @@ public class HC3CookieHandler implements
     public String getDefaultPolicy() {
         return DEFAULT_POLICY_NAME; 
     }
+
+    @Override
+    public String[] getPolicies() {
+        return AVAILABLE_POLICIES;
+    }
 }

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=1776135&r1=1776134&r2=1776135&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
 Tue Dec 27 14:06:11 2016
@@ -55,9 +55,9 @@ public class HC4CookieHandler implements
     private static final Logger log = LoggingManager.getLoggerForClass();
 
     // Needed by CookiePanel
-    public static final String DEFAULT_POLICY_NAME = CookieSpecs.STANDARD; 
+    public static final String DEFAULT_POLICY_NAME = CookieSpecs.STANDARD; // 
NOSONAR 
 
-    public static final String[] AVAILABLE_POLICIES = new String[]{
+    private static final String[] AVAILABLE_POLICIES = new String[]{ 
         DEFAULT_POLICY_NAME,
         CookieSpecs.STANDARD_STRICT,
         CookieSpecs.IGNORE_COOKIES,
@@ -87,6 +87,13 @@ public class HC4CookieHandler implements
             .register(CookieSpecs.NETSCAPE, new NetscapeDraftSpecProvider())
             .build();
 
+    /**
+     * Default constructor that uses {@link 
HC4CookieHandler#DEFAULT_POLICY_NAME}
+     */
+    public HC4CookieHandler() {
+        this(DEFAULT_POLICY_NAME);
+    }
+    
     public HC4CookieHandler(String policy) {
         super();
         if 
(policy.equals(org.apache.commons.httpclient.cookie.CookiePolicy.DEFAULT)) { // 
tweak diff HC3 vs HC4
@@ -250,4 +257,9 @@ public class HC4CookieHandler implements
     public String getDefaultPolicy() {
         return DEFAULT_POLICY_NAME; 
     }
+
+    @Override
+    public String[] getPolicies() {
+        return AVAILABLE_POLICIES;
+    }
 }

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=1776135&r1=1776134&r2=1776135&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
 Tue Dec 27 14:06:11 2016
@@ -40,6 +40,7 @@ import javax.swing.JScrollPane;
 import javax.swing.JTable;
 import javax.swing.ListSelectionModel;
 
+import org.apache.commons.lang3.ClassUtils;
 import org.apache.jmeter.config.gui.AbstractConfigGui;
 import org.apache.jmeter.gui.util.FileDialoger;
 import org.apache.jmeter.gui.util.HeaderAsPropertyRenderer;
@@ -47,7 +48,6 @@ import org.apache.jmeter.gui.util.PowerT
 import org.apache.jmeter.protocol.http.control.Cookie;
 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;
@@ -238,13 +238,14 @@ public class CookiePanel extends Abstrac
      * @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;
+        try {
+            CookieHandler cookieHandler = (CookieHandler) 
+                    ClassUtils.getClass(className).newInstance();
+            return cookieHandler.getPolicies();
+        } catch (Exception e) {
+            log.error("Error getting cookie policies from 
implementation:"+className, e);
+            return getPolicies(DEFAULT_IMPLEMENTATION);
         }
-        return HC4CookieHandler.AVAILABLE_POLICIES;
     }
 
     private void addCookieToTable(Cookie cookie) {


Reply via email to