KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > avalon > phoenix > components > embeddor > ManagementRegistration


1 /*
2  * Copyright (C) The Apache Software Foundation. All rights reserved.
3  *
4  * This software is published under the terms of the Apache Software License
5  * version 1.1, a copy of which has been included with this distribution in
6  * the LICENSE.txt file.
7  */

8 package org.apache.avalon.phoenix.components.embeddor;
9
10 import java.util.HashMap JavaDoc;
11 import java.util.Map JavaDoc;
12 import org.apache.avalon.excalibur.packagemanager.ExtensionManager;
13 import org.apache.avalon.phoenix.interfaces.ConfigurationRepository;
14 import org.apache.avalon.phoenix.interfaces.ConfigurationRepositoryMBean;
15 import org.apache.avalon.phoenix.interfaces.ConfigurationValidator;
16 import org.apache.avalon.phoenix.interfaces.ConfigurationValidatorMBean;
17 import org.apache.avalon.phoenix.interfaces.Deployer;
18 import org.apache.avalon.phoenix.interfaces.DeployerMBean;
19 import org.apache.avalon.phoenix.interfaces.Embeddor;
20 import org.apache.avalon.phoenix.interfaces.EmbeddorMBean;
21 import org.apache.avalon.phoenix.interfaces.ExtensionManagerMBean;
22 import org.apache.avalon.phoenix.interfaces.Kernel;
23 import org.apache.avalon.phoenix.interfaces.KernelMBean;
24 import org.apache.avalon.phoenix.interfaces.LogManager;
25
26 /**
27  *
28  * @author <a HREF="mailto:colus@apache.org">Eung-ju Park</a>
29  */

30 final class ManagementRegistration
31 {
32     private static final Map JavaDoc c_map = new HashMap JavaDoc();
33     public static final ManagementRegistration KERNEL =
34         new ManagementRegistration( Kernel.ROLE,
35                                     "Kernel",
36                                     new Class JavaDoc[]{KernelMBean.class} );
37     public static final ManagementRegistration EXTENSION_MANAGER =
38         new ManagementRegistration( ExtensionManager.ROLE,
39                                     "ExtensionManager",
40                                     new Class JavaDoc[]{ExtensionManagerMBean.class} );
41     public static final ManagementRegistration EMBEDDOR =
42         new ManagementRegistration( Embeddor.ROLE, "Embeddor", new Class JavaDoc[]{EmbeddorMBean.class} );
43     public static final ManagementRegistration DEPLOYER =
44         new ManagementRegistration( Deployer.ROLE, "Deployer", new Class JavaDoc[]{DeployerMBean.class} );
45     public static final ManagementRegistration LOG_MANAGER =
46         new ManagementRegistration( LogManager.ROLE, "LogManager", new Class JavaDoc[]{} );
47     public static final ManagementRegistration CONFIGURATION_REPOSITORY =
48         new ManagementRegistration( ConfigurationRepository.ROLE,
49                                     "ConfigurationManager",
50                                     new Class JavaDoc[]{ConfigurationRepositoryMBean.class} );
51     public static final ManagementRegistration CONFIGURATION_VALIDATOR =
52         new ManagementRegistration( ConfigurationValidator.ROLE,
53                                     "ConfigurationValidator",
54                                     new Class JavaDoc[]{ConfigurationValidatorMBean.class} );
55     //TODO: Need information for SystemManager?
56

57     private String JavaDoc m_role;
58     private String JavaDoc m_name;
59     private Class JavaDoc[] m_interfaces;
60
61     private ManagementRegistration( final String JavaDoc role, final String JavaDoc name, final Class JavaDoc[] interfaces )
62     {
63         m_role = role;
64         m_name = name;
65         m_interfaces = interfaces;
66
67         c_map.put( m_role, this );
68     }
69
70     public String JavaDoc getRole()
71     {
72         return m_role;
73     }
74
75     public String JavaDoc getName()
76     {
77         return m_name;
78     }
79
80     public Class JavaDoc[] getInterfaces()
81     {
82         return m_interfaces;
83     }
84
85     public static ManagementRegistration getManagementInfoForRole( final String JavaDoc role )
86     {
87         return (ManagementRegistration)c_map.get( role );
88     }
89 }
90
Popular Tags