javax.management
public class MBeanServerFactory extends Object
Creates and maintains a set of MBeanServer instances.
Server instances, as of JMX 1.2, are created using a subclass
of MBeanServerBuilder. The exact class used is controlled
by the property javax.management.builder.initial,
and allows the instances created by MBeanServerBuilder
to be wrapped, thus providing additional functionality.
The property is used as follows:
Thread.currentThread().getContextClassLoader(), or,
if this is null, by Class.forName().Class.newInstance() is used to create an instance
of the class. The class must be public and have a public empty
constructor. If an exception is thrown, it is propogated as
a JMRuntimeException and no new server instances may be
created until the property is set to a valid value.| Method Summary | |
|---|---|
| static MBeanServer | createMBeanServer()
Returns a server implementation using the default domain name
of "DefaultDomain". |
| static MBeanServer | createMBeanServer(String domain)
Returns a server implementation using the default domain name
given, or "DefaultDomain" if this is null.
|
| static ArrayList<MBeanServer> | findMBeanServer(String id)
Returns the specified server, or, if id is null,
a list of all registered servers. |
| static ClassLoaderRepository | getClassLoaderRepository(MBeanServer server)
Returns the class loader repository used by the specified server.
|
| static MBeanServer | newMBeanServer()
Returns a server implementation using the default domain name
of "DefaultDomain". |
| static MBeanServer | newMBeanServer(String domain)
Returns a server implementation using the default domain name
given, or "DefaultDomain" if this is null.
|
| static void | releaseMBeanServer(MBeanServer server)
Removes the reference to the specified server, thus allowing it to
be garbage collected.
|
"DefaultDomain". The default domain name is
used when the domain name specified by the user is nullMBeanServerFactory.
Calling this method is equivalent to calling
createMBeanServer(String) with a null value.
Returns: a new MBeanServer instance.
Throws: SecurityException if a security manager exists and the
caller's permissions don't imply (String)
("createMBeanServer") JMRuntimeException if the property
javax.management.builder.initial
exists but names a class which either can not be
instantiated or provides an implementation that returns
null from either
newMBeanServerDelegate
or MBeanServerBuilder ClassCastException if the property
javax.management.builder.initial
exists but names a class which is not a subclass
of MBeanServerBuilder.
See Also: createMBeanServer
"DefaultDomain" if this is null.
The default domain name is used when the domain name specified by
the user is nullMBeanServerFactory.
Parameters: domain the default domain name of the server.
Returns: a new MBeanServer instance.
Throws: SecurityException if a security manager exists and the
caller's permissions don't imply (String)
("createMBeanServer") JMRuntimeException if the property
javax.management.builder.initial
exists but names a class which either can not be
instantiated or provides an implementation that returns
null from either
newMBeanServerDelegate
or MBeanServerBuilder ClassCastException if the property
javax.management.builder.initial
exists but names a class which is not a subclass
of MBeanServerBuilder.
id is null,
a list of all registered servers. A registered server is one that
was created using createMBeanServer or
createMBeanServer and has not yet been released
using releaseMBeanServer(MBeanServer).
Parameters: id the id of the server to retrieve, or null
to return all servers.
Returns: a list of MBeanServers.
Throws: SecurityException if a security manager exists and the
caller's permissions don't imply (String)("findMBeanServer")
Parameters: server the server whose class loader repository should be retrieved.
Throws: NullPointerException if server is null. SecurityException if a security manager exists and the
caller's permissions don't imply (String,String,ObjectName,String)
MBeanPermission(null, null, null,
"getClassLoaderRepository")
"DefaultDomain". The default domain name is
used when the domain name specified by the user is nullMBeanServerFactory.
Calling this method is equivalent to calling
newMBeanServer(String) with a null value.
Returns: a new MBeanServer instance.
Throws: SecurityException if a security manager exists and the
caller's permissions don't imply (String)
("newMBeanServer") JMRuntimeException if the property
javax.management.builder.initial
exists but names a class which either can not be
instantiated or provides an implementation that returns
null from either
newMBeanServerDelegate
or MBeanServerBuilder ClassCastException if the property
javax.management.builder.initial
exists but names a class which is not a subclass
of MBeanServerBuilder.
See Also: newMBeanServer
"DefaultDomain" if this is null.
The default domain name is used when the domain name specified by
the user is nullMBeanServerFactory.
Parameters: domain the default domain name of the server.
Returns: a new MBeanServer instance.
Throws: SecurityException if a security manager exists and the
caller's permissions don't imply (String)
("newMBeanServer") JMRuntimeException if the property
javax.management.builder.initial
exists but names a class which either can not be
instantiated or provides an implementation that returns
null from either
newMBeanServerDelegate
or MBeanServerBuilder ClassCastException if the property
javax.management.builder.initial
exists but names a class which is not a subclass
of MBeanServerBuilder.
Parameters: server the server to remove.
Throws: IllegalArgumentException if a reference to the server is not
held (i.e. it wasn't created by
createMBeanServer
or this method has already been called
on it. SecurityException if a security manager exists and the
caller's permissions don't imply (String)("releaseMBeanServer")