KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > opencrx > ssl > DefaultSSLSocketFactory


1 /*
2  * ====================================================================
3  * Project: opencrx, http://www.opencrx.org/
4  * Name: $Id: DefaultSSLSocketFactory.java,v 1.1 2006/01/30 16:33:14 wfro Exp $
5  * Description: SendMailSSLSocketFactory class
6  * Revision: $Revision: 1.1 $
7  * Owner: CRIXP AG, Switzerland, http://www.crixp.com
8  * Date: $Date: 2006/01/30 16:33:14 $
9  * ====================================================================
10  *
11  * This software is published under the BSD license
12  * as listed below.
13  *
14  * Copyright (c) 2004, CRIXP Corp., Switzerland
15  * All rights reserved.
16  *
17  * Redistribution and use in source and binary forms, with or without
18  * modification, are permitted provided that the following conditions
19  * are met:
20  *
21  * * Redistributions of source code must retain the above copyright
22  * notice, this list of conditions and the following disclaimer.
23  *
24  * * Redistributions in binary form must reproduce the above copyright
25  * notice, this list of conditions and the following disclaimer in
26  * the documentation and/or other materials provided with the
27  * distribution.
28  *
29  * * Neither the name of CRIXP Corp. nor the names of the contributors
30  * to openCRX may be used to endorse or promote products derived
31  * from this software without specific prior written permission
32  *
33  *
34  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
35  * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
36  * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
37  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
38  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
39  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
40  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
41  * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
42  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
43  * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
44  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
45  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
46  * POSSIBILITY OF SUCH DAMAGE.
47  *
48  * ------------------
49  *
50  * This product includes software developed by the Apache Software
51  * Foundation (http://www.apache.org/).
52  *
53  * This product includes software developed by contributors to
54  * openMDX (http://www.openmdx.org/)
55  */

56 package org.opencrx.ssl;
57
58 import java.io.IOException JavaDoc;
59 import java.net.InetAddress JavaDoc;
60 import java.net.Socket JavaDoc;
61
62 import javax.net.SocketFactory;
63 import javax.net.ssl.SSLContext;
64 import javax.net.ssl.SSLSocketFactory;
65 import javax.net.ssl.TrustManager;
66
67 public class DefaultSSLSocketFactory
68     extends SSLSocketFactory {
69     
70     SSLSocketFactory factory;
71
72     public DefaultSSLSocketFactory(
73     ) {
74         try {
75             SSLContext sslContext = SSLContext.getInstance(
76                 "TLS"
77             );
78             sslContext.init(
79                 null, // No KeyManager required
80
new TrustManager[] {new DefaultTrustManager()},
81                 new java.security.SecureRandom JavaDoc()
82             );
83             factory = sslContext.getSocketFactory();
84         }
85         catch(Exception JavaDoc e) {
86             e.printStackTrace();
87         }
88     }
89
90     public static SocketFactory getDefault() {
91       return new DefaultSSLSocketFactory();
92     }
93
94     public Socket JavaDoc createSocket(Socket JavaDoc socket, String JavaDoc s, int i, boolean flag) throws IOException JavaDoc {
95         return factory.createSocket( socket, s, i, flag);
96     }
97
98     public Socket JavaDoc createSocket( InetAddress JavaDoc inaddr, int i, InetAddress JavaDoc inaddr1, int j) throws IOException JavaDoc {
99         return factory.createSocket( inaddr, i, inaddr1, j);
100     }
101
102     public Socket JavaDoc createSocket( InetAddress JavaDoc inaddr, int i) throws IOException JavaDoc {
103         return factory.createSocket( inaddr, i);
104     }
105
106     public Socket JavaDoc createSocket( String JavaDoc s, int i, InetAddress JavaDoc inaddr, int j) throws IOException JavaDoc {
107         return factory.createSocket( s, i, inaddr, j);
108     }
109
110     public Socket JavaDoc createSocket( String JavaDoc s, int i) throws IOException JavaDoc {
111         return factory.createSocket( s, i);
112     }
113
114     public String JavaDoc[] getDefaultCipherSuites() {
115         return factory.getSupportedCipherSuites();
116     }
117
118     public String JavaDoc[] getSupportedCipherSuites() {
119         return factory.getSupportedCipherSuites();
120     }
121 }
122
123 //--- End of File -----------------------------------------------------------
124
Popular Tags