001 /**
002 * Licensed to the Apache Software Foundation (ASF) under one or more
003 * contributor license agreements. See the NOTICE file distributed with
004 * this work for additional information regarding copyright ownership.
005 * The ASF licenses this file to You under the Apache License, Version 2.0
006 * (the "License"); you may not use this file except in compliance with
007 * the License. You may obtain a copy of the License at
008 *
009 * http://www.apache.org/licenses/LICENSE-2.0
010 *
011 * Unless required by applicable law or agreed to in writing, software
012 * distributed under the License is distributed on an "AS IS" BASIS,
013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014 * See the License for the specific language governing permissions and
015 * limitations under the License.
016 */
017 package org.apache.geronimo.connector.outbound;
018
019 import org.apache.geronimo.connector.ResourceAdapterWrapper;
020 import org.apache.geronimo.gbean.AbstractName;
021 import org.apache.geronimo.gbean.GBeanInfo;
022 import org.apache.geronimo.gbean.GBeanInfoBuilder;
023 import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
024 import org.apache.geronimo.kernel.Kernel;
025
026 /**
027 *
028 * @version $Revision: 550546 $
029 */
030 public class ManagedConnectionFactoryWrapperGBean {
031
032 public static final GBeanInfo GBEAN_INFO;
033
034 static {
035 GBeanInfoBuilder infoFactory = GBeanInfoBuilder.createStatic(ManagedConnectionFactoryWrapperGBean.class, ManagedConnectionFactoryWrapper.class, NameFactory.JCA_MANAGED_CONNECTION_FACTORY);
036
037 infoFactory.addAttribute("managedConnectionFactoryClass", String.class, true);
038 infoFactory.addAttribute("connectionFactoryInterface", String.class, true);
039 infoFactory.addAttribute("implementedInterfaces", String[].class, true);
040 infoFactory.addAttribute("connectionFactoryImplClass", String.class, true);
041 infoFactory.addAttribute("connectionInterface", String.class, true);
042 infoFactory.addAttribute("connectionImplClass", String.class, true);
043 infoFactory.addAttribute("kernel", Kernel.class, false);
044 infoFactory.addAttribute("abstractName", AbstractName.class, false);
045 infoFactory.addAttribute("objectName", String.class, false);
046 infoFactory.addAttribute("classLoader", ClassLoader.class, false);
047
048 infoFactory.addOperation("$getResource");
049 infoFactory.addOperation("$getConnectionFactory");
050 infoFactory.addOperation("$getManagedConnectionFactory");
051
052 infoFactory.addReference("ResourceAdapterWrapper", ResourceAdapterWrapper.class, NameFactory.RESOURCE_ADAPTER);
053 infoFactory.addReference("ConnectionManagerContainer", ConnectionManagerContainer.class, NameFactory.JCA_CONNECTION_MANAGER);
054
055 infoFactory.setConstructor(new String[]{
056 "managedConnectionFactoryClass",
057 "connectionFactoryInterface",
058 "implementedInterfaces",
059 "connectionFactoryImplClass",
060 "connectionInterface",
061 "connectionImplClass",
062 "ResourceAdapterWrapper",
063 "ConnectionManagerContainer",
064 "kernel",
065 "abstractName",
066 "objectName",
067 "classLoader"});
068
069 GBEAN_INFO = infoFactory.getBeanInfo();
070 }
071
072 public static GBeanInfo getGBeanInfo() {
073 return GBEAN_INFO;
074 }
075
076 }