public class LiveBeansView extends Object implements LiveBeansViewMBean, ApplicationContextAware
ApplicationContext (with a
 local LiveBeansView bean definition) or all registered ApplicationContexts
 (driven by the "spring.liveBeansView.mbeanDomain" environment property).
 Note: This feature is still in beta and primarily designed for use with Spring Tool Suite 3.1 and higher.
getSnapshotAsJson(), 
LiveBeansViewServlet| Modifier and Type | Field and Description | 
|---|---|
static String | 
MBEAN_APPLICATION_KEY  | 
static String | 
MBEAN_DOMAIN_PROPERTY_NAME  | 
| Constructor and Description | 
|---|
LiveBeansView()  | 
| Modifier and Type | Method and Description | 
|---|---|
protected Set<ConfigurableApplicationContext> | 
findApplicationContexts()
Find all applicable ApplicationContexts for the current application. 
 | 
protected String | 
generateJson(Set<ConfigurableApplicationContext> contexts)
Actually generate a JSON snapshot of the beans in the given ApplicationContexts. 
 | 
protected String | 
getEscapedResourceDescription(BeanDefinition bd)
Determine a resource description for the given bean definition and
 apply basic JSON escaping (backslashes, double quotes) to it. 
 | 
String | 
getSnapshotAsJson()
Generate a JSON snapshot of current beans and their dependencies,
 finding all active ApplicationContexts through  
findApplicationContexts(),
 then delegating to generateJson(java.util.Set). | 
protected boolean | 
isBeanEligible(String beanName,
              BeanDefinition bd,
              ConfigurableBeanFactory bf)
Determine whether the specified bean is eligible for inclusion in the
 LiveBeansView JSON snapshot. 
 | 
void | 
setApplicationContext(ApplicationContext applicationContext)
Set the ApplicationContext that this object runs in. 
 | 
public static final String MBEAN_DOMAIN_PROPERTY_NAME
public static final String MBEAN_APPLICATION_KEY
public void setApplicationContext(ApplicationContext applicationContext)
ApplicationContextAwareInvoked after population of normal bean properties but before an init callback such
 as InitializingBean.afterPropertiesSet()
 or a custom init-method. Invoked after ResourceLoaderAware.setResourceLoader(org.springframework.core.io.ResourceLoader),
 ApplicationEventPublisherAware.setApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher) and
 MessageSourceAware, if applicable.
setApplicationContext in interface ApplicationContextAwareapplicationContext - the ApplicationContext object to be used by this objectBeanInitializationExceptionpublic String getSnapshotAsJson()
findApplicationContexts(),
 then delegating to generateJson(java.util.Set).getSnapshotAsJson in interface LiveBeansViewMBeanprotected Set<ConfigurableApplicationContext> findApplicationContexts()
Called if no specific ApplicationContext has been set for this LiveBeansView.
protected String generateJson(Set<ConfigurableApplicationContext> contexts)
This implementation doesn't use any JSON parsing libraries in order to avoid third-party library dependencies. It produces an array of context description objects, each containing a context and parent attribute as well as a beans attribute with nested bean description objects. Each bean object contains a bean, scope, type and resource attribute, as well as a dependencies attribute with a nested array of bean names that the present bean depends on.
contexts - the set of ApplicationContextsprotected boolean isBeanEligible(String beanName, BeanDefinition bd, ConfigurableBeanFactory bf)
beanName - the name of the beanbd - the corresponding bean definitionbf - the containing bean factorytrue if the bean is to be included; false otherwise@Nullable protected String getEscapedResourceDescription(BeanDefinition bd)
bd - the bean definition to build the resource description for