KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sun > enterprise > management > config > StandaloneServerConfigFactory


1 /*
2  * The contents of this file are subject to the terms
3  * of the Common Development and Distribution License
4  * (the License). You may not use this file except in
5  * compliance with the License.
6  *
7  * You can obtain a copy of the license at
8  * https://glassfish.dev.java.net/public/CDDLv1.0.html or
9  * glassfish/bootstrap/legal/CDDLv1.0.txt.
10  * See the License for the specific language governing
11  * permissions and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL
14  * Header Notice in each file and include the License file
15  * at glassfish/bootstrap/legal/CDDLv1.0.txt.
16  * If applicable, add the following below the CDDL Header,
17  * with the fields enclosed by brackets [] replaced by
18  * you own identifying information:
19  * "Portions Copyrighted [year] [name of copyright owner]"
20  *
21  * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
22  */

23  
24 /*
25  * $Header: /cvs/glassfish/admin/mbeanapi-impl/src/java/com/sun/enterprise/management/config/StandaloneServerConfigFactory.java,v 1.6 2006/03/09 20:30:41 llc Exp $
26  * $Revision: 1.6 $
27  * $Date: 2006/03/09 20:30:41 $
28  */

29 package com.sun.enterprise.management.config;
30
31 import java.util.Map JavaDoc;
32 import java.util.Set JavaDoc;
33 import java.util.Collections JavaDoc;
34 import java.util.Properties JavaDoc;
35
36 import javax.management.ObjectName JavaDoc;
37 import javax.management.AttributeList JavaDoc;
38
39 import com.sun.enterprise.management.support.oldconfig.OldServersMBean;
40
41 import com.sun.appserv.management.util.misc.GSetUtil;
42 import com.sun.appserv.management.util.misc.MapUtil;
43 import com.sun.appserv.management.config.ServerConfigKeys;
44
45
46 public class StandaloneServerConfigFactory extends ConfigFactory
47 {
48     private final OldServersMBean mOldServersMBean;
49     
50         public
51     StandaloneServerConfigFactory( final ConfigFactoryCallback callbacks )
52     {
53         super( callbacks );
54         
55         mOldServersMBean = callbacks.getOldConfigProxies().getOldServersMBean();
56     }
57         
58     private final Set JavaDoc<String JavaDoc> LEGAL_OPTIONAL_KEYS =
59         GSetUtil.newUnmodifiableStringSet(
60         ServerConfigKeys.HTTP_LISTENER_1_PORT_KEY,
61         ServerConfigKeys.HTTP_LISTENER_2_PORT_KEY,
62         ServerConfigKeys.ORB_LISTENER_1_PORT_KEY,
63         ServerConfigKeys.ADMIN_LISTENER_PORT_KEY,
64         ServerConfigKeys.SSL_PORT_KEY,
65         ServerConfigKeys.SSL_MUTUALAUTH_PORT_KEY,
66         ServerConfigKeys.JMX_SYSTEM_CONNECTOR_PORT_KEY,
67         ServerConfigKeys.JMS_PROVIDER_PORT_KEY );
68     
69         protected Set JavaDoc<String JavaDoc>
70     getLegalOptionalCreateKeys()
71     {
72         return( LEGAL_OPTIONAL_KEYS );
73     }
74     
75     
76         public ObjectName JavaDoc
77     create(
78         final String JavaDoc name,
79         final String JavaDoc nodeAgentName,
80         final String JavaDoc configName,
81         final Map JavaDoc<String JavaDoc,String JavaDoc> optional)
82     {
83         debug( "create:\n" + (optional == null ? "null" : MapUtil.toString( optional )) );
84         
85         final Map JavaDoc<String JavaDoc,String JavaDoc> all = initParams(name, null, optional );
86         final Properties JavaDoc props = new Properties JavaDoc();
87         final AttributeList JavaDoc attrList = new AttributeList JavaDoc();
88         translateParams(all, attrList, props);
89
90         //create the new server with the new config that was copied
91
final ObjectName JavaDoc oldObjectName =
92             mOldServersMBean.createServerInstance(nodeAgentName, name, configName, null, props);
93
94         return syncNewAMXMBeanWithOld(oldObjectName);
95     }
96         
97         protected void
98     removeByName(final String JavaDoc name)
99     {
100         mOldServersMBean.deleteServerInstance(name);
101     }
102 }
103
104
105
106
107
Popular Tags