View Javadoc

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  }