Java Code Examples for javax.management.JMX#isMXBeanInterface()

The following examples show how to use javax.management.JMX#isMXBeanInterface() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
/**
 * Ensures that an {@code MBeanServerConnection} is configured and attempts
 * to detect a local connection if one is not supplied.
 */
public void prepare() {
	synchronized (this.preparationMonitor) {
		if (this.server != null) {
			this.serverToUse = this.server;
		}
		else {
			this.serverToUse = null;
			this.serverToUse = this.connector.connect(this.serviceUrl, this.environment, this.agentId);
		}
		this.invocationHandler = null;
		if (this.useStrictCasing) {
			Assert.state(this.objectName != null, "No ObjectName set");
			// Use the JDK's own MBeanServerInvocationHandler, in particular for native MXBean support.
			this.invocationHandler = new MBeanServerInvocationHandler(this.serverToUse, this.objectName,
					(this.managementInterface != null && JMX.isMXBeanInterface(this.managementInterface)));
		}
		else {
			// Non-strict casing can only be achieved through custom invocation handling.
			// Only partial MXBean support available!
			retrieveMBeanInfo(this.serverToUse);
		}
	}
}
 
Example 2
/**
 * Ensures that an {@code MBeanServerConnection} is configured and attempts
 * to detect a local connection if one is not supplied.
 */
public void prepare() {
	synchronized (this.preparationMonitor) {
		if (this.server != null) {
			this.serverToUse = this.server;
		}
		else {
			this.serverToUse = null;
			this.serverToUse = this.connector.connect(this.serviceUrl, this.environment, this.agentId);
		}
		this.invocationHandler = null;
		if (this.useStrictCasing) {
			Assert.state(this.objectName != null, "No ObjectName set");
			// Use the JDK's own MBeanServerInvocationHandler, in particular for native MXBean support.
			this.invocationHandler = new MBeanServerInvocationHandler(this.serverToUse, this.objectName,
					(this.managementInterface != null && JMX.isMXBeanInterface(this.managementInterface)));
		}
		else {
			// Non-strict casing can only be achieved through custom invocation handling.
			// Only partial MXBean support available!
			retrieveMBeanInfo(this.serverToUse);
		}
	}
}
 
Example 3
/**
 * Ensures that an {@code MBeanServerConnection} is configured and attempts
 * to detect a local connection if one is not supplied.
 */
public void prepare() {
	synchronized (this.preparationMonitor) {
		if (this.server != null) {
			this.serverToUse = this.server;
		}
		else {
			this.serverToUse = null;
			this.serverToUse = this.connector.connect(this.serviceUrl, this.environment, this.agentId);
		}
		this.invocationHandler = null;
		if (this.useStrictCasing) {
			// Use the JDK's own MBeanServerInvocationHandler, in particular for native MXBean support.
			this.invocationHandler = new MBeanServerInvocationHandler(this.serverToUse, this.objectName,
					(this.managementInterface != null && JMX.isMXBeanInterface(this.managementInterface)));
		}
		else {
			// Non-strict casing can only be achieved through custom invocation handling.
			// Only partial MXBean support available!
			retrieveMBeanInfo();
		}
	}
}
 
Example 4
/**
 * Ensures that an {@code MBeanServerConnection} is configured and attempts
 * to detect a local connection if one is not supplied.
 */
public void prepare() {
	synchronized (this.preparationMonitor) {
		if (this.server != null) {
			this.serverToUse = this.server;
		}
		else {
			this.serverToUse = null;
			this.serverToUse = this.connector.connect(this.serviceUrl, this.environment, this.agentId);
		}
		this.invocationHandler = null;
		if (this.useStrictCasing) {
			// Use the JDK's own MBeanServerInvocationHandler, in particular for native MXBean support.
			this.invocationHandler = new MBeanServerInvocationHandler(this.serverToUse, this.objectName,
					(this.managementInterface != null && JMX.isMXBeanInterface(this.managementInterface)));
		}
		else {
			// Non-strict casing can only be achieved through custom invocation handling.
			// Only partial MXBean support available!
			retrieveMBeanInfo();
		}
	}
}
 
Example 5
/**
 *
 * @param member
 *          member to which this MBean belongs
 * @param monitoringRegion
 *          corresponding MonitoringRegion
 * @param objectName
 *          ObjectName of the MBean
 * @param interfaceClass
 *          on which interface the proxy to be exposed
 * @return Object
 * @throws ClassNotFoundException
 * @throws IntrospectionException
 */
public static Object newProxyInstance(DistributedMember member,
    Region<String, Object> monitoringRegion, ObjectName objectName,
    Class interfaceClass) throws ClassNotFoundException,
    IntrospectionException {
  boolean isMXBean = JMX.isMXBeanInterface(interfaceClass);
  boolean notificationBroadcaster = ((FederationComponent) monitoringRegion
      .get(objectName.toString())).isNotificationEmitter();

  InvocationHandler handler = new MBeanProxyInvocationHandler(member,
      objectName, monitoringRegion, isMXBean);

  Class[] interfaces;

  if (notificationBroadcaster) {
    interfaces = new Class[] { interfaceClass, ProxyInterface.class,
        NotificationBroadCasterProxy.class };
  } else {
    interfaces = new Class[] { interfaceClass, ProxyInterface.class };
  }

  Object proxy = Proxy.newProxyInstance(MBeanProxyInvocationHandler.class
      .getClassLoader(), interfaces, handler);

  return interfaceClass.cast(proxy);
}
 
Example 6
/**
 *
 * @param member
 *          member to which this MBean belongs
 * @param monitoringRegion
 *          corresponding MonitoringRegion
 * @param objectName
 *          ObjectName of the MBean
 * @param interfaceClass
 *          on which interface the proxy to be exposed
 * @return Object
 * @throws ClassNotFoundException
 * @throws IntrospectionException
 */
public static Object newProxyInstance(DistributedMember member,
    Region<String, Object> monitoringRegion, ObjectName objectName,
    Class interfaceClass) throws ClassNotFoundException,
    IntrospectionException {
  boolean isMXBean = JMX.isMXBeanInterface(interfaceClass);
  boolean notificationBroadcaster = ((FederationComponent) monitoringRegion
      .get(objectName.toString())).isNotificationEmitter();

  InvocationHandler handler = new MBeanProxyInvocationHandler(member,
      objectName, monitoringRegion, isMXBean);

  Class[] interfaces;

  if (notificationBroadcaster) {
    interfaces = new Class[] { interfaceClass, ProxyInterface.class,
        NotificationBroadCasterProxy.class };
  } else {
    interfaces = new Class[] { interfaceClass, ProxyInterface.class };
  }

  Object proxy = Proxy.newProxyInstance(MBeanProxyInvocationHandler.class
      .getClassLoader(), interfaces, handler);

  return interfaceClass.cast(proxy);
}
 
Example 7
Source Project: spring-analysis-note   File: JmxUtils.java    License: MIT License 5 votes vote down vote up
/**
 * Return the Java 6 MXBean interface exists for the given class, if any
 * (that is, an interface whose name ends with "MXBean" and/or
 * carries an appropriate MXBean annotation).
 * @param clazz the class to check
 * @return whether there is an MXBean interface for the given class
 */
@Nullable
public static Class<?> getMXBeanInterface(@Nullable Class<?> clazz) {
	if (clazz == null || clazz.getSuperclass() == null) {
		return null;
	}
	Class<?>[] implementedInterfaces = clazz.getInterfaces();
	for (Class<?> iface : implementedInterfaces) {
		if (JMX.isMXBeanInterface(iface)) {
			return iface;
		}
	}
	return getMXBeanInterface(clazz.getSuperclass());
}
 
Example 8
Source Project: java-technology-stack   File: JmxUtils.java    License: MIT License 5 votes vote down vote up
/**
 * Return the Java 6 MXBean interface exists for the given class, if any
 * (that is, an interface whose name ends with "MXBean" and/or
 * carries an appropriate MXBean annotation).
 * @param clazz the class to check
 * @return whether there is an MXBean interface for the given class
 */
@Nullable
public static Class<?> getMXBeanInterface(@Nullable Class<?> clazz) {
	if (clazz == null || clazz.getSuperclass() == null) {
		return null;
	}
	Class<?>[] implementedInterfaces = clazz.getInterfaces();
	for (Class<?> iface : implementedInterfaces) {
		if (JMX.isMXBeanInterface(iface)) {
			return iface;
		}
	}
	return getMXBeanInterface(clazz.getSuperclass());
}
 
Example 9
Source Project: lams   File: JmxUtils.java    License: GNU General Public License v2.0 5 votes vote down vote up
/**
 * Return the Java 6 MXBean interface exists for the given class, if any
 * (that is, an interface whose name ends with "MXBean" and/or
 * carries an appropriate MXBean annotation).
 * @param clazz the class to check
 * @return whether there is an MXBean interface for the given class
 */
public static Class<?> getMXBeanInterface(Class<?> clazz) {
	if (clazz == null || clazz.getSuperclass() == null) {
		return null;
	}
	Class<?>[] implementedInterfaces = clazz.getInterfaces();
	for (Class<?> iface : implementedInterfaces) {
		if (JMX.isMXBeanInterface(iface)) {
			return iface;
		}
	}
	return getMXBeanInterface(clazz.getSuperclass());
}
 
Example 10
Source Project: spring4-understanding   File: JmxUtils.java    License: Apache License 2.0 5 votes vote down vote up
/**
 * Return the Java 6 MXBean interface exists for the given class, if any
 * (that is, an interface whose name ends with "MXBean" and/or
 * carries an appropriate MXBean annotation).
 * @param clazz the class to check
 * @return whether there is an MXBean interface for the given class
 */
public static Class<?> getMXBeanInterface(Class<?> clazz) {
	if (clazz == null || clazz.getSuperclass() == null) {
		return null;
	}
	Class<?>[] implementedInterfaces = clazz.getInterfaces();
	for (Class<?> iface : implementedInterfaces) {
		if (JMX.isMXBeanInterface(iface)) {
			return iface;
		}
	}
	return getMXBeanInterface(clazz.getSuperclass());
}
 
Example 11
public <T> T getMBeanProxy(final ObjectName objectName, final Class<T> mbeanInterface) {
  if (DistributedSystemMXBean.class.equals(mbeanInterface)
    && ManagementConstants.OBJECTNAME__DISTRIBUTEDSYSTEM_MXBEAN.equals(objectName.toString())) {
    return mbeanInterface.cast(getDistributedSystemMXBean());
  }
  else if (JMX.isMXBeanInterface(mbeanInterface)) {
    return JMX.newMXBeanProxy(getMBeanServerConnection(), objectName, mbeanInterface);
  }
  else {
    return JMX.newMBeanProxy(getMBeanServerConnection(), objectName, mbeanInterface);
  }
}
 
Example 12
public <T> T getMBeanProxy(final ObjectName objectName, final Class<T> mbeanInterface) {
  if (DistributedSystemMXBean.class.equals(mbeanInterface)
    && ManagementConstants.OBJECTNAME__DISTRIBUTEDSYSTEM_MXBEAN.equals(objectName.toString())) {
    return mbeanInterface.cast(getDistributedSystemMXBean());
  }
  else if (JMX.isMXBeanInterface(mbeanInterface)) {
    return JMX.newMXBeanProxy(getMBeanServerConnection(), objectName, mbeanInterface);
  }
  else {
    return JMX.newMBeanProxy(getMBeanServerConnection(), objectName, mbeanInterface);
  }
}