Index: SSLProtocolSocketFactory.java
===================================================================
RCS file: /home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/protocol/SSLProtocolSocketFactory.java,v
retrieving revision 1.5
diff -u -r1.5 SSLProtocolSocketFactory.java
--- SSLProtocolSocketFactory.java 31 Jan 2003 00:33:36 -0000 1.5
+++ SSLProtocolSocketFactory.java 2 Jul 2003 01:50:13 -0000
@@ -75,12 +75,19 @@
*
* @author Michael Becke
* @author Mike Bowler
+ * @author Gary Gregory
*
* @since 2.0
*/
public class SSLProtocolSocketFactory implements SecureProtocolSocketFactory {
/**
+ * The SSL socket factory to use.
+ * The default is javax.net.ssl.SSLSocketFactory.getDefault()
+ */
+ private SSLSocketFactory sslSocketFactory = (SSLSocketFactory)SSLSocketFactory.getDefault();
+
+ /**
* Constructor for SSLProtocolSocketFactory.
*/
public SSLProtocolSocketFactory() {
@@ -88,6 +95,14 @@
}
/**
+ * Constructor for SSLProtocolSocketFactory.
+ */
+ public SSLProtocolSocketFactory(SSLSocketFactory sslSocketFactory) {
+ super();
+ this.sslSocketFactory = sslSocketFactory;
+ }
+
+ /**
* @see SecureProtocolSocketFactory#createSocket(java.lang.String,int,java.net.InetAddress,int)
*/
public Socket createSocket(
@@ -96,7 +111,7 @@
InetAddress clientHost,
int clientPort)
throws IOException, UnknownHostException {
- return SSLSocketFactory.getDefault().createSocket(
+ return this.getSSLSocketFactory().createSocket(
host,
port,
clientHost,
@@ -109,7 +124,7 @@
*/
public Socket createSocket(String host, int port)
throws IOException, UnknownHostException {
- return SSLSocketFactory.getDefault().createSocket(
+ return this.getSSLSocketFactory().createSocket(
host,
port
);
@@ -124,12 +139,27 @@
int port,
boolean autoClose)
throws IOException, UnknownHostException {
- return ((SSLSocketFactory) SSLSocketFactory.getDefault()).createSocket(
+ return this.getSSLSocketFactory().createSocket(
socket,
host,
port,
autoClose
);
}
+
+ /**
+ * Gets the SSLSocketFactory to use.
+ */
+ public SSLSocketFactory getSSLSocketFactory() {
+ return this.sslSocketFactory;
+ }
+
+ /**
+ * Sets the SSLSocketFactory to use.
+ */
+ public void setSSLSocketFactory(SSLSocketFactory sslSocketFactory) {
+ this.sslSocketFactory = sslSocketFactory;
+ }
+
}