1 /*
2 * EL4J, the Extension Library for the J2EE, adds incremental enhancements to
3 * the spring framework, http://el4j.sf.net
4 * Copyright (C) 2005 by ELCA Informatique SA, Av. de la Harpe 22-24,
5 * 1000 Lausanne, Switzerland, http://www.elca.ch
6 *
7 * EL4J is published under the GNU Lesser General Public License (LGPL)
8 * Version 2.1. See http://www.gnu.org/licenses/
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU Lesser General Public License for more details.
14 *
15 * For alternative licensing, please contact info@elca.ch
16 */
17
18 package ch.elca.el4j.services.monitoring.jmx;
19
20 import javax.management.ObjectName;
21
22 /**
23 * The interface of the proxy class for an ApplicationContext.
24 *
25 * @svnLink $Revision: 3873 $;$Date: 2009-08-04 13:59:45 +0200 (Di, 04. Aug 2009) $;$Author: swismer $;$URL: https://el4j.svn.sourceforge.net/svnroot/el4j/branches/el4j_3_1/el4j/framework/modules/jmx/src/main/java/ch/elca/el4j/services/monitoring/jmx/ApplicationContextMBMBean.java $
26 *
27 * @author Raphael Boog (RBO)
28 */
29 public interface ApplicationContextMBMBean {
30
31 /**
32 * Returns the display name of the ApplicationContext.
33 *
34 * @return display name
35 */
36 String getName();
37
38 /**
39 * Returns the resolved config locations of this ApplicationContext, i.e.
40 * the inclusive config locations minus the ones defined as exclusive config
41 * locations. These resolved config locations are the ones that were loaded
42 * by the ApplicationContext.
43 *
44 * @return Resolved config locations
45 */
46 String[] getResolvedConfigLocations();
47
48 /**
49 * Returns the inclusive config locations of this ApplicationContext. The
50 * inclusive config locations are the xml configuration files which are
51 * loaded into the ApplicationContext.
52 *
53 * @return Inclusive config locations
54 */
55 String[] getInclusiveConfigLocations();
56
57 /**
58 * Returns the exclusive config locations of this ApplicationContext. The
59 * exclusive config locations are the xml configuration files which are
60 * explicitly excluded from loading, even if they appear in inclusive config
61 * locations.
62 *
63 * @return Exclusive config locations
64 */
65 String[] getExclusiveConfigLocations();
66
67 /**
68 * If loaded via maven, the application's classpath will only contain
69 * classworlds, but the modules loaded will be abailable as URLs from
70 * maven's URLClassLoader that loads the application.
71 * @return If loaded via an URLClassLoader (maven), the URLs in the
72 * current "classpath".
73 */
74 String[] getURLClassPath();
75
76 /**
77 * Returns the JvmMB of this ApplicationContext.
78 *
79 * @return JvmMB
80 */
81 ObjectName getJvmMB();
82
83 /**
84 * Returns the SpringBeans created by this ApplicationContext.
85 *
86 * @return links to all SpringBeans created by this ApplicationContext
87 */
88 ObjectName[] getSpringBeansMB();
89 }