# Class BaseCatalinaMBean<T>

java.lang.Object
org.apache.tomcat.util.modeler.BaseModelMBean
org.apache.catalina.mbeans.BaseCatalinaMBean<T>

Type Parameters:
  `T` - the type of the managed resource

All Implemented Interfaces:
  `DynamicMBean, MBeanRegistration, ModelMBeanNotificationBroadcaster, NotificationBroadcaster`

Direct Known Subclasses:
  `ClassNameMBean, ContainerMBean, ContextEnvironmentMBean, ContextMBean, ContextResourceLinkMBean, ContextResourceMBean, ServiceMBean`

public abstract class BaseCatalinaMBean<T> extends BaseModelMBean
Abstract base class for Catalina MBeans that provides typed access to the managed resource.

## Field Summary

### Fields inherited from class BaseModelMBean

`attributeBroadcaster, generalBroadcaster, managedBean, oname, resource, resourceType`

## Constructor Summary

Constructors
Constructor
Description
`BaseCatalinaMBean()`
Default constructor.

## Method Summary

Modifier and Type
Method
Description
`protected T`
`doGetManagedResource()`
Returns the managed resource associated with this MBean.
`protected static Object`
`newInstance(String type)`
Creates a new instance of the specified class.

### Methods inherited from class BaseModelMBean

`addAttributeChangeNotificationListener, addNotificationListener, getAttribute, getAttributes, getClassName, getJmxName, getManagedResource, getMBeanInfo, getModelerType, getNotificationInfo, getObjectName, invoke, postDeregister, postRegister, preDeregister, preRegister, removeAttributeChangeNotificationListener, removeNotificationListener, sendAttributeChangeNotification, sendAttributeChangeNotification, sendNotification, sendNotification, setAttribute, setAttributes, setManagedBean, setManagedResource, toString`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### BaseCatalinaMBean

public BaseCatalinaMBean()
Default constructor.

## Method Details

### doGetManagedResource

protected T doGetManagedResource() throws MBeanException
Returns the managed resource associated with this MBean.

Returns:
  the managed resource
Throws:
  `MBeanException` - if the resource cannot be retrieved

### newInstance

protected static Object newInstance(String type) throws MBeanException
Creates a new instance of the specified class.

Parameters:
  `type` - the fully qualified class name
Returns:
  the new instance
Throws:
  `MBeanException` - if the instance cannot be created