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.corba.security.config.ssl;
018    
019    import org.apache.geronimo.gbean.GBeanInfo;
020    import org.apache.geronimo.gbean.GBeanInfoBuilder;
021    import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
022    
023    import org.apache.geronimo.management.geronimo.KeystoreManager;
024    
025    /**
026     * Implementation of an SSLConfigGBean
027     *
028     * @version $Rev: 452600 $ $Date: 2006-10-03 12:29:42 -0700 (Tue, 03 Oct 2006) $
029     */
030    public class SSLConfigGBean {
031    
032        public static final GBeanInfo GBEAN_INFO;
033    
034        static {
035            GBeanInfoBuilder infoBuilder = GBeanInfoBuilder.createStatic(SSLConfigGBean.class, "SSL Configuration Adapater", SSLConfig.class, NameFactory.CORBA_SSL);
036            infoBuilder.addAttribute("provider", String.class, true, true);
037            infoBuilder.addAttribute("protocol", String.class, true, true);
038            infoBuilder.addAttribute("algorithm", String.class, true, true);
039            infoBuilder.addAttribute("keyStore", String.class, true, true);
040            infoBuilder.addAttribute("keyAlias", String.class, true, true);
041            infoBuilder.addAttribute("trustStore", String.class, true, true);
042            infoBuilder.addReference("KeystoreManager", KeystoreManager.class, NameFactory.GERONIMO_SERVICE);
043            infoBuilder.setConstructor(new String[]{"KeystoreManager"});
044            GBEAN_INFO = infoBuilder.getBeanInfo();
045        }
046    
047        public static GBeanInfo getGBeanInfo() {
048            return GBEAN_INFO;
049        }
050    }
051