Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
   *
   * Copyright (c) 1997-2010 Oracle and/or its affiliates. All rights reserved.
   *
   * The contents of this file are subject to the terms of either the GNU
   * General Public License Version 2 only ("GPL") or the Common Development
   * and Distribution License("CDDL") (collectively, the "License").  You
   * may not use this file except in compliance with the License.  You can
  * obtain a copy of the License at
  * https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
  * or packager/legal/LICENSE.txt.  See the License for the specific
  * language governing permissions and limitations under the License.
  *
  * When distributing the software, include this License Header Notice in each
  * file and include the License file at packager/legal/LICENSE.txt.
  *
  * GPL Classpath Exception:
  * Oracle designates this particular file as subject to the "Classpath"
  * exception as provided by Oracle in the GPL Version 2 section of the License
  * file that accompanied this code.
  *
  * Modifications:
  * If applicable, add the following below the License Header, with the fields
  * enclosed by brackets [] replaced by your own identifying information:
  * "Portions Copyright [year] [name of copyright owner]"
  *
  * Contributor(s):
  * If you wish your version of this file to be governed by only the CDDL or
  * only the GPL Version 2, indicate your decision by adding "[Contributor]
  * elects to include this software in this distribution under the [CDDL or GPL
  * Version 2] license."  If you don't indicate a single choice of license, a
  * recipient has the option to distribute your version of this file under
  * either the CDDL, the GPL Version 2 or to extend the choice of license to
  * its licensees as provided above.  However, if you add GPL Version 2 code
  * and therefore, elected the GPL Version 2 license, then the option applies
  * only if the new code is made subject to such option by the copyright
  * holder.
  *
  *
  * This file incorporates work covered by the following copyright and
  * permission notice:
  *
  * Copyright 2004 The Apache Software Foundation
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 
 package org.apache.tomcat.util.net;
 
 // START SJSAS 6439313
 // END SJSAS 6439313
 
 /* SSLImplementation:
 
    Abstract factory and base class for all SSL implementations.
 
    @author EKR
 */
 abstract public class SSLImplementation {
     private static com.sun.org.apache.commons.logging.Log logger =
         com.sun.org.apache.commons.logging.LogFactory.getLog(SSLImplementation.class);
 
     // The default implementations in our search path
     private static final String JSSEImplementationClass=
 	"org.apache.tomcat.util.net.jsse.JSSEImplementation";
     
     private static final String[] implementations=
     {        
         
     };
 
     public static SSLImplementation getInstance() throws ClassNotFoundException
     {
 	for(int i=0;i<.;i++){
 	    try {
                SSLImplementation impl=
 		return impl;
 	    } catch (Exception e) {
 		    .trace("Error creating " + [i],e);
 	    }
 	}
 
 	// If we can't instantiate any of these
 	throw new ClassNotFoundException("Can't find any SSL implementation");
    }
    public static SSLImplementation getInstance(String className)
    {
	if(className==nullreturn getInstance();
	try {
	    // Workaround for the J2SE 1.4.x classloading problem (under Solaris).
	    // Class.forName(..) fails without creating class using new.
	    // This is an ugly workaround. 
	    if.equals(className) ) {
	    }
	    Class clazz=Class.forName(className);
	    return (SSLImplementation)clazz.newInstance();
catch (Exception e){
	    if(.isDebugEnabled())
		.debug("Error loading SSL Implementation "
			     +classNamee);
	    throw new ClassNotFoundException("Error loading SSL Implementation "
				      +className" :" +e.toString());
	}
    }
    abstract public String getImplementationName();
    abstract public ServerSocketFactory getServerSocketFactory();
    abstract public SSLSupport getSSLSupport(Socket sock);
    // START SJSAS 6439313
    public abstract SSLSupport getSSLSupport(SSLEngine sslEngine);
    // END SJSAS 6439313
}    
New to GrepCode? Check out our FAQ X