diff --git a/spring-rabbit/src/main/java/org/springframework/amqp/rabbit/connection/RabbitConnectionFactoryBean.java b/spring-rabbit/src/main/java/org/springframework/amqp/rabbit/connection/RabbitConnectionFactoryBean.java index 1f38c203..a13dd35d 100644 --- a/spring-rabbit/src/main/java/org/springframework/amqp/rabbit/connection/RabbitConnectionFactoryBean.java +++ b/spring-rabbit/src/main/java/org/springframework/amqp/rabbit/connection/RabbitConnectionFactoryBean.java @@ -31,22 +31,30 @@ import javax.net.ssl.KeyManagerFactory; import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManagerFactory; -import com.rabbitmq.client.ConnectionFactory; -import com.rabbitmq.client.ExceptionHandler; -import com.rabbitmq.client.SaslConfig; -import com.rabbitmq.client.SocketConfigurator; - import org.springframework.beans.factory.config.AbstractFactoryBean; import org.springframework.core.io.Resource; import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import org.springframework.util.Assert; import org.springframework.util.StringUtils; +import com.rabbitmq.client.ConnectionFactory; +import com.rabbitmq.client.ExceptionHandler; +import com.rabbitmq.client.SaslConfig; +import com.rabbitmq.client.SocketConfigurator; + /** * Factory bean to create a RabbitMQ ConnectionFactory, delegating most * setter methods and optionally enabling SSL, with or without - * certificate validation. + * certificate validation. When {@link #setSslPropertiesLocation(Resource) sslPropertiesLocation} + * is not null, the default implementation loads a {@code PKCS12} keystore and a + * {@code JKS} truststore using the supplied properties and intializes {@code SunX509} key + * and trust manager factories. These are then used to initialize an {@link SSLContext} + * using the {@link #setSslAlgorithm(String) sslAlgorithm} (default TLSv1.1). + *
+ * Override {@link #createSSLContext()} to create and/or perform further modification of the context. + *
+ * Override {@link #setUpSSL()} to take complete control over setting up SSL.
*
* @author Gary Russell
*
@@ -54,12 +62,14 @@ import org.springframework.util.StringUtils;
*/
public class RabbitConnectionFactoryBean extends AbstractFactoryBean