org.apache.catalina.mbeans

## Class MBeanFactory

- java.lang.Object
- - org.apache.catalina.mbeans.MBeanFactory

-     public class MBeanFactory
      extends Object

  Author:
    Amy Roh

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected static StringManager` | `sm`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `MBeanFactory()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `createAjpConnector(String parent, String address, int port)` Create a new AjpConnector
    `String` | `createDataSourceRealm(String parent, String dataSourceName, String roleNameCol, String userCredCol, String userNameCol, String userRoleTable, String userTable)` Create a new DataSource Realm.
    `String` | `createHttpConnector(String parent, String address, int port)` Create a new HttpConnector
    `String` | `createHttpsConnector(String parent, String address, int port)` Create a new HttpsConnector
    `String` | `createJDBCRealm(String parent, String driverName, String connectionName, String connectionPassword, String connectionURL)` Deprecated. This method will be removed in Tomcat 10. Use a DataSourceRealm instead.
    `String` | `createJNDIRealm(String parent)` Create a new JNDI Realm.
    `String` | `createMemoryRealm(String parent)` Create a new Memory Realm.
    `String` | `createStandardContext(String parent, String path, String docBase)` Create a new StandardContext.
    `String` | `createStandardContext(String parent, String path, String docBase, boolean xmlValidation, boolean xmlNamespaceAware)` Create a new StandardContext.
    `String` | `createStandardHost(String parent, String name, String appBase, boolean autoDeploy, boolean deployOnStartup, boolean deployXML, boolean unpackWARs)` Create a new StandardHost.
    `String` | `createStandardManager(String parent)` Create a new StandardManager.
    `String` | `createStandardServiceEngine(String domain, String defaultHost, String baseDir)` Creates a new StandardService and StandardEngine.
    `String` | `createUserDatabaseRealm(String parent, String resourceName)` Create a new UserDatabaseRealm.
    `String` | `createValve(String className, String parent)` Create a new Valve and associate it with a `Container`.
    `String` | `createWebappLoader(String parent)` Create a new Web Application Loader.
    `void` | `removeConnector(String name)` Remove an existing Connector.
    `void` | `removeContext(String contextName)` Remove an existing Context.
    `void` | `removeHost(String name)` Remove an existing Host.
    `void` | `removeLoader(String name)` Remove an existing Loader.
    `void` | `removeManager(String name)` Remove an existing Manager.
    `void` | `removeRealm(String name)` Remove an existing Realm.
    `void` | `removeService(String name)` Remove an existing Service.
    `void` | `removeValve(String name)` Remove an existing Valve.
    `void` | `setContainer(Object container)` Set the container that this factory was created for.

    - ### Methods inherited from class java.lang.Object

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

- - ### Field Detail

    - #### sm

          protected static final StringManager sm

  - ### Constructor Detail

    - #### MBeanFactory

          public MBeanFactory()

  - ### Method Detail

    - #### setContainer

          public void setContainer(Object container)

      Set the container that this factory was created for.
      Parameters:
        `container` - The associated container

    - #### createAjpConnector

          public String createAjpConnector(String parent,
                                  String address,
                                  int port)
                                    throws Exception

      Create a new AjpConnector
      Parameters:
        `parent` - MBean Name of the associated parent component
        `address` - The IP address on which to bind
        `port` - TCP port number to listen on
      Returns:
        the object name of the created connector
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createDataSourceRealm

          public String createDataSourceRealm(String parent,
                                     String dataSourceName,
                                     String roleNameCol,
                                     String userCredCol,
                                     String userNameCol,
                                     String userRoleTable,
                                     String userTable)
                                       throws Exception

      Create a new DataSource Realm.
      Parameters:
        `parent` - MBean Name of the associated parent component
        `dataSourceName` - the datasource name
        `roleNameCol` - the column name for the role names
        `userCredCol` - the column name for the user credentials
        `userNameCol` - the column name for the user names
        `userRoleTable` - the table name for the roles table
        `userTable` - the table name for the users
      Returns:
        the object name of the created realm
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createHttpConnector

          public String createHttpConnector(String parent,
                                   String address,
                                   int port)
                                     throws Exception

      Create a new HttpConnector
      Parameters:
        `parent` - MBean Name of the associated parent component
        `address` - The IP address on which to bind
        `port` - TCP port number to listen on
      Returns:
        the object name of the created connector
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createHttpsConnector

          public String createHttpsConnector(String parent,
                                    String address,
                                    int port)
                                      throws Exception

      Create a new HttpsConnector
      Parameters:
        `parent` - MBean Name of the associated parent component
        `address` - The IP address on which to bind
        `port` - TCP port number to listen on
      Returns:
        the object name of the created connector
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createJDBCRealm

          @Deprecated
          public String createJDBCRealm(String parent,
                                          String driverName,
                                          String connectionName,
                                          String connectionPassword,
                                          String connectionURL)
                                 throws Exception

      Deprecated. This method will be removed in Tomcat 10. Use a DataSourceRealm instead.
      Create a new JDBC Realm.
      Parameters:
        `parent` - MBean Name of the associated parent component
        `driverName` - JDBC driver name
        `connectionName` - the user name for the connection
        `connectionPassword` - the password for the connection
        `connectionURL` - the connection URL to the database
      Returns:
        the object name of the created realm
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createJNDIRealm

          public String createJNDIRealm(String parent)
                                 throws Exception

      Create a new JNDI Realm.
      Parameters:
        `parent` - MBean Name of the associated parent component
      Returns:
        the object name of the created realm
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createMemoryRealm

          public String createMemoryRealm(String parent)
                                   throws Exception

      Create a new Memory Realm.
      Parameters:
        `parent` - MBean Name of the associated parent component
      Returns:
        the object name of the created realm
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createStandardContext

          public String createStandardContext(String parent,
                                     String path,
                                     String docBase)
                                       throws Exception

      Create a new StandardContext.
      Parameters:
        `parent` - MBean Name of the associated parent component
        `path` - The context path for this Context
        `docBase` - Document base directory (or WAR) for this Context
      Returns:
        the object name of the created context
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createStandardContext

          public String createStandardContext(String parent,
                                     String path,
                                     String docBase,
                                     boolean xmlValidation,
                                     boolean xmlNamespaceAware)
                                       throws Exception

      Create a new StandardContext.
      Parameters:
        `parent` - MBean Name of the associated parent component
        `path` - The context path for this Context
        `docBase` - Document base directory (or WAR) for this Context
        `xmlValidation` - if XML descriptors should be validated
        `xmlNamespaceAware` - if the XML processor should namespace aware
      Returns:
        the object name of the created context
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createStandardHost

          public String createStandardHost(String parent,
                                  String name,
                                  String appBase,
                                  boolean autoDeploy,
                                  boolean deployOnStartup,
                                  boolean deployXML,
                                  boolean unpackWARs)
                                    throws Exception

      Create a new StandardHost.
      Parameters:
        `parent` - MBean Name of the associated parent component
        `name` - Unique name of this Host
        `appBase` - Application base directory name
        `autoDeploy` - Should we auto deploy?
        `deployOnStartup` - Deploy on server startup?
        `deployXML` - Should we deploy Context XML config files property?
        `unpackWARs` - Should we unpack WARs when auto deploying?
      Returns:
        the object name of the created host
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createStandardServiceEngine

          public String createStandardServiceEngine(String domain,
                                           String defaultHost,
                                           String baseDir)
                                             throws Exception

      Creates a new StandardService and StandardEngine.
      Parameters:
        `domain` - Domain name for the container instance
        `defaultHost` - Name of the default host to be used in the Engine
        `baseDir` - Base directory value for Engine
      Returns:
        the object name of the created service
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createStandardManager

          public String createStandardManager(String parent)
                                       throws Exception

      Create a new StandardManager.
      Parameters:
        `parent` - MBean Name of the associated parent component
      Returns:
        the object name of the created manager
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createUserDatabaseRealm

          public String createUserDatabaseRealm(String parent,
                                       String resourceName)
                                         throws Exception

      Create a new UserDatabaseRealm.
      Parameters:
        `parent` - MBean Name of the associated parent component
        `resourceName` - Global JNDI resource name of the associated UserDatabase
      Returns:
        the object name of the created realm
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createValve

          public String createValve(String className,
                           String parent)
                             throws Exception

      Create a new Valve and associate it with a `Container`.
      Parameters:
        `className` - The fully qualified class name of the `Valve` to create
        `parent` - The MBean name of the associated parent `Container`.
      Returns:
        The MBean name of the `Valve` that was created or `null` if the `Valve` does not implement `JmxEnabled`.
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### createWebappLoader

          public String createWebappLoader(String parent)
                                    throws Exception

      Create a new Web Application Loader.
      Parameters:
        `parent` - MBean Name of the associated parent component
      Returns:
        the object name of the created loader
      Throws:
        `Exception` - if an MBean cannot be created or registered

    - #### removeConnector

          public void removeConnector(String name)
                               throws Exception

      Remove an existing Connector.
      Parameters:
        `name` - MBean Name of the component to remove
      Throws:
        `Exception` - if a component cannot be removed

    - #### removeContext

          public void removeContext(String contextName)
                             throws Exception

      Remove an existing Context.
      Parameters:
        `contextName` - MBean Name of the component to remove
      Throws:
        `Exception` - if a component cannot be removed

    - #### removeHost

          public void removeHost(String name)
                          throws Exception

      Remove an existing Host.
      Parameters:
        `name` - MBean Name of the component to remove
      Throws:
        `Exception` - if a component cannot be removed

    - #### removeLoader

          public void removeLoader(String name)
                            throws Exception

      Remove an existing Loader.
      Parameters:
        `name` - MBean Name of the component to remove
      Throws:
        `Exception` - if a component cannot be removed

    - #### removeManager

          public void removeManager(String name)
                             throws Exception

      Remove an existing Manager.
      Parameters:
        `name` - MBean Name of the component to remove
      Throws:
        `Exception` - if a component cannot be removed

    - #### removeRealm

          public void removeRealm(String name)
                           throws Exception

      Remove an existing Realm.
      Parameters:
        `name` - MBean Name of the component to remove
      Throws:
        `Exception` - if a component cannot be removed

    - #### removeService

          public void removeService(String name)
                             throws Exception

      Remove an existing Service.
      Parameters:
        `name` - MBean Name of the component to remove
      Throws:
        `Exception` - if a component cannot be removed

    - #### removeValve

          public void removeValve(String name)
                           throws Exception

      Remove an existing Valve.
      Parameters:
        `name` - MBean Name of the component to remove
      Throws:
        `Exception` - if a component cannot be removed

Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.