You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by lh...@apache.org on 2009/08/27 13:41:25 UTC

svn commit: r808376 - /servicemix/components/bindings/servicemix-mail/trunk/src/main/java/org/apache/servicemix/mail/security/CustomSSLSocketFactory.java

Author: lhein
Date: Thu Aug 27 11:41:25 2009
New Revision: 808376

URL: http://svn.apache.org/viewvc?rev=808376&view=rev
Log:
improved class to be more rules compliant (see SMXCOMP-520)

Modified:
    servicemix/components/bindings/servicemix-mail/trunk/src/main/java/org/apache/servicemix/mail/security/CustomSSLSocketFactory.java

Modified: servicemix/components/bindings/servicemix-mail/trunk/src/main/java/org/apache/servicemix/mail/security/CustomSSLSocketFactory.java
URL: http://svn.apache.org/viewvc/servicemix/components/bindings/servicemix-mail/trunk/src/main/java/org/apache/servicemix/mail/security/CustomSSLSocketFactory.java?rev=808376&r1=808375&r2=808376&view=diff
==============================================================================
--- servicemix/components/bindings/servicemix-mail/trunk/src/main/java/org/apache/servicemix/mail/security/CustomSSLSocketFactory.java (original)
+++ servicemix/components/bindings/servicemix-mail/trunk/src/main/java/org/apache/servicemix/mail/security/CustomSSLSocketFactory.java Thu Aug 27 11:41:25 2009
@@ -46,6 +46,7 @@
      */
     public static final String PROPERTY_SEPARATOR = ";";
 
+    private static final String PREFIX = "Customized trust manager ";    
     private static final Log LOG = LogFactory.getLog(CustomSSLSocketFactory.class);
 
     private SSLSocketFactory factory;
@@ -54,6 +55,7 @@
      * default constructor
      */
     public CustomSSLSocketFactory() {
+    	super();
         try {
             SSLContext sslcontext = SSLContext.getInstance("TLS");
             if (System.getProperty(PROPERTY_TRUSTMANAGERS) != null
@@ -80,27 +82,29 @@
 
         // look for trust managers in the system properties
         String managersString = System.getProperty(PROPERTY_TRUSTMANAGERS);
-        if (managersString != null && managersString.trim().length() > 0) {
-            StringTokenizer strTok = new StringTokenizer(managersString, PROPERTY_SEPARATOR);
-            while (strTok.hasMoreTokens()) {
-                String name = strTok.nextToken();
-                try {
-                    Object tm = Class.forName(name).newInstance();
-                    if (tm instanceof TrustManager) {
-                        managers.add((TrustManager)tm);
-                    } else {
-                        LOG.error("Customized trust manager " + name
-                                  + " is not implementing TrustManager. Skipping...");
-                    }
-                } catch (IllegalAccessException iaex) {
-                    LOG.error("Customized trust manager " + name + " is not accessable. Skipping...", iaex);
-                } catch (InstantiationException iex) {
-                    LOG.error("Customized trust manager " + name + " could not be instantiated. Skipping...",
-                              iex);
-                } catch (ClassNotFoundException cnfex) {
-                    LOG.error("Customized trust manager " + name + " was not found. Skipping...", cnfex);
-                }
-            }
+        
+        if (managersString == null || managersString.trim().length() < 1)
+        	{
+        	return managers.toArray(new TrustManager[managers.size()]);
+        	}
+        
+        StringTokenizer strTok = new StringTokenizer(managersString, PROPERTY_SEPARATOR);
+        while (strTok.hasMoreTokens()) {
+        	String name = strTok.nextToken();
+        	try {
+        		Object tm = Class.forName(name).newInstance();
+        		if (tm instanceof TrustManager) {
+        			managers.add((TrustManager)tm);
+        		} else {
+        			LOG.error(PREFIX + name + " is not implementing TrustManager. Skipping...");
+        		}
+        	} catch (IllegalAccessException iaex) {
+        		LOG.error(PREFIX + name + " is not accessable. Skipping...", iaex);
+        	} catch (InstantiationException iex) {
+        		LOG.error(PREFIX + name + " could not be instantiated. Skipping...", iex);
+        	} catch (ClassNotFoundException cnfex) {
+        		LOG.error(PREFIX + name + " was not found. Skipping...", cnfex);
+        	}
         }
 
         return managers.toArray(new TrustManager[managers.size()]);