jmsvendoradapterfactory.java

来自「Java有关XML编程需要用到axis 的源代码 把里面bin下的包导入相应」· Java 代码 · 共 83 行

JAVA
83
字号
/* * Copyright 2001, 2002,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.axis.components.jms;import org.apache.axis.AxisProperties;import java.util.HashMap;/** * Discovery class used to locate vendor adapters.  Switch the default * JNDI-based implementation by using the * org.apache.axis.components.jms.JMSVendorAdapter system property * * @author Jaime Meritt (jmeritt@sonicsoftware.com) * @author Ray Chun (rchun@sonicsoftware.com) */public class JMSVendorAdapterFactory{    private static HashMap s_adapters = new HashMap();    private final static String VENDOR_PKG = "org.apache.axis.components.jms";    static {        AxisProperties.setClassDefault(JMSVendorAdapter.class,                                       VENDOR_PKG + ".JNDIVendorAdapter");    }    public static final JMSVendorAdapter getJMSVendorAdapter()    {        return (JMSVendorAdapter)AxisProperties.newInstance(JMSVendorAdapter.class);    }    public static final JMSVendorAdapter getJMSVendorAdapter(String vendorId)    {        // check to see if the adapter has already been instantiated        if (s_adapters.containsKey(vendorId))            return (JMSVendorAdapter)s_adapters.get(vendorId);        // create a new instance        JMSVendorAdapter adapter = null;        try        {            Class vendorClass = Class.forName(getVendorAdapterClassname(vendorId));            adapter = (JMSVendorAdapter)vendorClass.newInstance();        }        catch (Exception e)        {            return null;        }        synchronized (s_adapters)        {            if (s_adapters.containsKey(vendorId))                return (JMSVendorAdapter)s_adapters.get(vendorId);            if (adapter != null)                s_adapters.put(vendorId, adapter);        }        return adapter;    }    private static String getVendorAdapterClassname(String vendorId)    {        StringBuffer sb = new StringBuffer(VENDOR_PKG).append(".");        sb.append(vendorId);        sb.append("VendorAdapter");        return sb.toString();    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?