[jboss-cvs] JBossAS SVN: r98491 - projects/javaee/tags/jboss-javaee-parent-6.0.0-alpha-1/jboss-el-api/src/main/javax/el.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Dec 22 12:22:19 EST 2009
Author: jaikiran
Date: 2009-12-22 12:22:19 -0500 (Tue, 22 Dec 2009)
New Revision: 98491
Removed:
projects/javaee/tags/jboss-javaee-parent-6.0.0-alpha-1/jboss-el-api/src/main/javax/el/FactoryFinder.java
Log:
Autoversioning commit: a non-deltaV client made a change to
/projects/javaee/tags/jboss-javaee-parent-6.0.0-alpha-1/jboss-el-api/src/main/javax/el/FactoryFinder.java
Deleted: projects/javaee/tags/jboss-javaee-parent-6.0.0-alpha-1/jboss-el-api/src/main/javax/el/FactoryFinder.java
===================================================================
--- projects/javaee/tags/jboss-javaee-parent-6.0.0-alpha-1/jboss-el-api/src/main/javax/el/FactoryFinder.java 2009-12-22 17:21:41 UTC (rev 98490)
+++ projects/javaee/tags/jboss-javaee-parent-6.0.0-alpha-1/jboss-el-api/src/main/javax/el/FactoryFinder.java 2009-12-22 17:22:19 UTC (rev 98491)
@@ -1,196 +0,0 @@
-/*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
- *
- * Copyright 1997-2008 Sun Microsystems, Inc. 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.html
- * or glassfish/bootstrap/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 glassfish/bootstrap/legal/LICENSE.txt.
- * Sun designates this particular file as subject to the "Classpath" exception
- * as provided by Sun in the GPL Version 2 section of the License file that
- * accompanied this code. If applicable, add the following below the License
- * Header, with the fields enclosed by brackets [] replaced by your own
- * identifying information: "Portions Copyrighted [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 javax.el;
-
-import java.lang.reflect.Constructor;
-import java.io.InputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.util.Properties;
-import java.io.BufferedReader;
-import java.io.InputStreamReader;
-
-class FactoryFinder {
-
- /**
- * Creates an instance of the specified class using the specified
- * <code>ClassLoader</code> object.
- *
- * @exception ELException if the given class could not be found
- * or could not be instantiated
- */
- private static Object newInstance(String className,
- ClassLoader classLoader,
- Properties properties)
- {
- try {
- Class spiClass;
- if (classLoader == null) {
- spiClass = Class.forName(className);
- } else {
- spiClass = classLoader.loadClass(className);
- }
- if (properties != null) {
- Constructor constr = null;
- try {
- constr = spiClass.getConstructor(Properties.class);
- } catch (Exception ex) {
- }
- if (constr != null) {
- return constr.newInstance(properties);
- }
- }
- return spiClass.newInstance();
- } catch (ClassNotFoundException x) {
- throw new ELException(
- "Provider " + className + " not found", x);
- } catch (Exception x) {
- throw new ELException(
- "Provider " + className + " could not be instantiated: " + x,
- x);
- }
- }
-
- /**
- * Finds the implementation <code>Class</code> object for the given
- * factory name, or if that fails, finds the <code>Class</code> object
- * for the given fallback class name. The arguments supplied must be
- * used in order. If using the first argument is successful, the second
- * one will not be used.
- * <P>
- * This method is package private so that this code can be shared.
- *
- * @return the <code>Class</code> object of the specified message factory;
- * may not be <code>null</code>
- *
- * @param factoryId the name of the factory to find, which is
- * a system property
- * @param fallbackClassName the implementation class name, which is
- * to be used only if nothing else
- * is found; <code>null</code> to indicate that
- * there is no fallback class name
- * @exception ELException if there is an error
- */
- static Object find(String factoryId, String fallbackClassName,
- Properties properties)
- {
- ClassLoader classLoader;
- try {
- classLoader = Thread.currentThread().getContextClassLoader();
- } catch (Exception x) {
- throw new ELException(x.toString(), x);
- }
-
- String serviceId = "META-INF/services/" + factoryId;
- // try to find services in CLASSPATH
- try {
- InputStream is=null;
- if (classLoader == null) {
- is=ClassLoader.getSystemResourceAsStream(serviceId);
- } else {
- is=classLoader.getResourceAsStream(serviceId);
- }
-
- if( is!=null ) {
- BufferedReader rd =
- new BufferedReader(new InputStreamReader(is, "UTF-8"));
-
- String factoryClassName = rd.readLine();
- rd.close();
-
- if (factoryClassName != null &&
- ! "".equals(factoryClassName)) {
- return newInstance(factoryClassName, classLoader, properties);
- }
- }
- } catch( Exception ex ) {
- }
-
-
- // try to read from $java.home/lib/el.properties
- try {
- String javah=System.getProperty( "java.home" );
- String configFile = javah + File.separator +
- "lib" + File.separator + "el.properties";
- File f=new File( configFile );
- if( f.exists()) {
- Properties props=new Properties();
- props.load( new FileInputStream(f));
- String factoryClassName = props.getProperty(factoryId);
- return newInstance(factoryClassName, classLoader, properties);
- }
- } catch(Exception ex ) {
- }
-
-
- // Use the system property
- try {
- String systemProp =
- System.getProperty( factoryId );
- if( systemProp!=null) {
- return newInstance(systemProp, classLoader, properties);
- }
- } catch (SecurityException se) {
- }
-
- if (fallbackClassName == null) {
- throw new ELException(
- "Provider for " + factoryId + " cannot be found", null);
- }
-
- return newInstance(fallbackClassName, classLoader, properties);
- }
-}
-
More information about the jboss-cvs-commits
mailing list