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


Java ObjectName.getInstance方法代码示例

本文整理汇总了Java中javax.management.ObjectName.getInstance方法的典型用法代码示例。如果您正苦于以下问题:Java ObjectName.getInstance方法的具体用法?Java ObjectName.getInstance怎么用?Java ObjectName.getInstance使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在javax.management.ObjectName的用法示例。


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

示例1: getWorkManager

import javax.management.ObjectName; //导入方法依赖的package包/类
/**
 * Obtain the default JBoss JCA WorkManager through a JMX lookup
 * for the JBossWorkManagerMBean.
 * @param mbeanName the JMX object name to use
 * @see org.jboss.resource.work.JBossWorkManagerMBean
 */
public static WorkManager getWorkManager(String mbeanName) {
	Assert.hasLength(mbeanName, "JBossWorkManagerMBean name must not be empty");
	try {
		Class<?> mbeanClass = JBossWorkManagerUtils.class.getClassLoader().loadClass(JBOSS_WORK_MANAGER_MBEAN_CLASS_NAME);
		InitialContext jndiContext = new InitialContext();
		MBeanServerConnection mconn = (MBeanServerConnection) jndiContext.lookup(MBEAN_SERVER_CONNECTION_JNDI_NAME);
		ObjectName objectName = ObjectName.getInstance(mbeanName);
		Object workManagerMBean = MBeanServerInvocationHandler.newProxyInstance(mconn, objectName, mbeanClass, false);
		Method getInstanceMethod = workManagerMBean.getClass().getMethod("getInstance");
		return (WorkManager) getInstanceMethod.invoke(workManagerMBean);
	}
	catch (Exception ex) {
		throw new IllegalStateException(
				"Could not initialize JBossWorkManagerTaskExecutor because JBoss API is not available", ex);
	}
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:23,代码来源:JBossWorkManagerUtils.java

示例2: runPositiveTests

import javax.management.ObjectName; //导入方法依赖的package包/类
private static int runPositiveTests() {
    int error = 0;
    for (int i = 0; i < positiveTests.length; i++) {
        System.out.println("----------------------------------------------");
        try {
            ObjectName on1 = ObjectName.getInstance(positiveTests[i][0]);
            ObjectName on2 = ObjectName.getInstance(positiveTests[i][1]);
            System.out.println("\"" + on1 + "\".apply(\"" + on2 + "\")");
            boolean result = on1.apply(on2);
            System.out.println("Result = " + result);
            if (result == false) {
                error++;
                System.out.println("Test failed!");
            } else {
                System.out.println("Test passed!");
            }
        } catch (Exception e) {
            error++;
            System.out.println("Got Unexpected Exception = " + e.toString());
            System.out.println("Test failed!");
        }
        System.out.println("----------------------------------------------");
    }
    return error;
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:26,代码来源:ApplyWildcardTest.java

示例3: getMemberMXBean

import javax.management.ObjectName; //导入方法依赖的package包/类
/**
 * Gets the MemberMXBean from the JVM Platform MBeanServer for the specified member, identified by
 * name or ID in the GemFire cluster.
 * 
 * @param memberNameId a String indicating the name or ID of the GemFire member.
 * @return a proxy to the GemFire member's MemberMXBean.
 * @throws IllegalStateException if no MemberMXBean could be found for GemFire member with ID or
 *         name.
 * @throws RuntimeException wrapping the MalformedObjectNameException if the ObjectName pattern is
 *         malformed.
 * @see #getMBeanServer()
 * @see #isMemberMXBeanFound(java.util.Collection)
 * @see javax.management.ObjectName
 * @see javax.management.QueryExp
 * @see javax.management.MBeanServer#queryNames(javax.management.ObjectName,
 *      javax.management.QueryExp)
 * @see javax.management.JMX#newMXBeanProxy(javax.management.MBeanServerConnection,
 *      javax.management.ObjectName, Class)
 * @see org.apache.geode.management.MemberMXBean
 */
protected MemberMXBean getMemberMXBean(final String memberNameId) {
  try {
    final MBeanServer connection = getMBeanServer();

    final String objectNamePattern =
        ManagementConstants.OBJECTNAME__PREFIX.concat("type=Member,*");

    // NOTE throws a MalformedObjectNameException, but this should not happen since we constructed
    // the ObjectName above
    final ObjectName objectName = ObjectName.getInstance(objectNamePattern);

    final QueryExp query = Query.or(Query.eq(Query.attr("Name"), Query.value(memberNameId)),
        Query.eq(Query.attr("Id"), Query.value(memberNameId)));

    final Set<ObjectName> objectNames = connection.queryNames(objectName, query);

    assertState(isMemberMXBeanFound(objectNames),
        "No MemberMXBean with ObjectName (%1$s) based on Query (%2$s) was found in the Platform MBeanServer for member (%3$s)!",
        objectName, query, memberNameId);

    return JMX.newMXBeanProxy(connection, objectNames.iterator().next(), MemberMXBean.class);
  } catch (MalformedObjectNameException e) {
    throw new RuntimeException(e);
  }
}
 
开发者ID:ampool,项目名称:monarch,代码行数:46,代码来源:AbstractCommandsController.java

示例4: AgentJMXProxy

import javax.management.ObjectName; //导入方法依赖的package包/类
public AgentJMXProxy(String agentJmxAddress) {
    // connect through RMI and get the proxy
    String[] strs = agentJmxAddress.split("\\" + AgentJMXComponents.JMX_SERVER_AGENT_NAME_DELIM);
    String jmxService = strs[0];
    String objectName = strs[1];
    try {
     JMXServiceURL url = new JMXServiceURL(jmxService);
     JMXConnector jmxc = JMXConnectorFactory.connect(url, null);
     mbsc = jmxc.getMBeanServerConnection();
     agentName = ObjectName.getInstance(objectName);
     proxy = new DynamicProxy(agentName, mbsc);
     agentFlag = new FlagJMXProxy<IAgentState>(agentName, mbsc, AgentMBeanAdapter.AGENT_STATE_FLAG_NAME);
     agentId = new AgentIdJMXProxy(this);
    } catch (Exception e) {
    	throw new PogamutJMXException("Can't create AgentJMXProxy.", e, this);
    }
}
 
开发者ID:kefik,项目名称:Pogamut3,代码行数:18,代码来源:AgentJMXProxy.java

示例5: monitorNotifications

import javax.management.ObjectName; //导入方法依赖的package包/类
/**
 * Test the monitor notifications.
 */
public int monitorNotifications() throws Exception {

    server = MBeanServerFactory.newMBeanServer();

    MBeanServerForwarderInvocationHandler mbsfih =
        (MBeanServerForwarderInvocationHandler)
        Proxy.getInvocationHandler(server);

    mbsfih.setGetAttributeException(
        new RuntimeException("Test RuntimeException"));

    domain = server.getDefaultDomain();

    obsObjName = ObjectName.getInstance(domain + ":type=ObservedObject");
    server.registerMBean(new ObservedObject(), obsObjName);

    echo(">>> ----------------------------------------");
    int error = counterMonitorNotification();
    echo(">>> ----------------------------------------");
    error += gaugeMonitorNotification();
    echo(">>> ----------------------------------------");
    error += stringMonitorNotification();
    echo(">>> ----------------------------------------");
    return error;
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:29,代码来源:RuntimeExceptionTest.java

示例6: afterCreate

import javax.management.ObjectName; //导入方法依赖的package包/类
@Override
public void afterCreate(EntryEvent<String, Object> event) {
  ObjectName objectName = null;
  try {

    if (!service.isStartedAndOpen() || !service.isManager()) {
      // NO OP return; No work for Non Manager Nodes
      return;
    }
    objectName = ObjectName.getInstance(event.getKey());

    FederationComponent newObject = (FederationComponent) event.getNewValue();
    String className = newObject.getMBeanInterfaceClass();
    Class interfaceClass;
    if (classRef.get(className) != null) {
      interfaceClass = classRef.get(className);
    } else {
      interfaceClass = ClassLoadUtil.classFromName(className);
      classRef.put(className, interfaceClass);
    }

    service.afterPseudoCreateProxy(objectName, interfaceClass, null, newObject);

  } catch (Exception e) {
    if (logger.isDebugEnabled()) {
      logger.debug("{}: Aggregation Failed failed for {} With Exception {}", THIS_COMPONENT,
          objectName, e);
    }
  }
}
 
开发者ID:ampool,项目名称:monarch,代码行数:31,代码来源:MonitoringRegionCacheListener.java

示例7: monitorNotifications

import javax.management.ObjectName; //导入方法依赖的package包/类
/**
 * Test the monitor notifications.
 */
public int monitorNotifications() throws Exception {

    server = MBeanServerFactory.newMBeanServer();

    MBeanServerForwarderInvocationHandler mbsfih =
        (MBeanServerForwarderInvocationHandler)
        Proxy.getInvocationHandler(server);

    mbsfih.setGetAttributeException(
        new ReflectionException(new RuntimeException(),
                                "Test ReflectionException"));

    domain = server.getDefaultDomain();

    obsObjName = ObjectName.getInstance(domain + ":type=ObservedObject");
    server.registerMBean(new ObservedObject(), obsObjName);

    echo(">>> ----------------------------------------");
    int error = counterMonitorNotification();
    echo(">>> ----------------------------------------");
    error += gaugeMonitorNotification();
    echo(">>> ----------------------------------------");
    error += stringMonitorNotification();
    echo(">>> ----------------------------------------");
    return error;
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:30,代码来源:ReflectionExceptionTest.java

示例8: beforeClass

import javax.management.ObjectName; //导入方法依赖的package包/类
@BeforeClass
public static void beforeClass() throws Exception {
  // the server does not have a GAtewaySenderMXBean registered initially, has to register a mock
  // one.
  service = ManagementService.getManagementService(serverRule.getCache());
  mockBeanName = ObjectName.getInstance("GemFire", "key", "value");
  service.registerMBean(mock, mockBeanName);
}
 
开发者ID:ampool,项目名称:monarch,代码行数:9,代码来源:GatewaySenderMBeanSecurityTest.java

示例9: setUp

import javax.management.ObjectName; //导入方法依赖的package包/类
@Before
public void setUp() throws Exception {
  pid = ProcessUtils.identifyPid();
  final Process process = new Process(pid, true);

  this.objectName = ObjectName
      .getInstance(getClass().getSimpleName() + ":testName=" + testName.getMethodName());
  this.server = ManagementFactory.getPlatformMBeanServer();

  final ObjectInstance instance = this.server.registerMBean(process, objectName);
  assertNotNull(instance);
}
 
开发者ID:ampool,项目名称:monarch,代码行数:13,代码来源:LocalProcessControllerJUnitTest.java

示例10: newObjectName

import javax.management.ObjectName; //导入方法依赖的package包/类
public static ObjectName newObjectName(String name) {
    try {
        return ObjectName.getInstance(name);
    } catch (MalformedObjectNameException e) {
        throw new IllegalArgumentException(e);
    }
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:8,代码来源:Util.java

示例11: cloneObjectName

import javax.management.ObjectName; //导入方法依赖的package包/类
/**
 * Clone object name.
 */
private ObjectName cloneObjectName(ObjectName name) {
    if (name != null) {
        return ObjectName.getInstance(name);
    }
    return name;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:10,代码来源:JmxMBeanServer.java

示例12: removeAllProxies

import javax.management.ObjectName; //导入方法依赖的package包/类
/**
 * Removes all proxies for a given member
 * 
 * @param member {@link org.apache.geode.distributed.DistributedMember}
 * @param monitoringRegion monitoring region containing the proxies
 */
public void removeAllProxies(DistributedMember member, Region<String, Object> monitoringRegion) {

  Set<Entry<String, Object>> entries = monitoringRegion.entrySet();
  Iterator<Entry<String, Object>> entriesIt = entries.iterator();

  if (logger.isDebugEnabled()) {
    logger.debug("Removing {} proxies for member {}", entries.size(), member.getId());
  }

  while (entriesIt.hasNext()) {
    String key = null;
    Object val = null;
    try {
      Entry<String, Object> entry = entriesIt.next();
      key = entry.getKey();// MBean Name in String format.
      val = entry.getValue(); // Federation Component
      ObjectName mbeanName = ObjectName.getInstance(key);
      removeProxy(member, mbeanName, val);
    } catch (Exception e) {
      if (!(e.getCause() instanceof InstanceNotFoundException)) {
        logger.warn("Remove Proxy failed for {} due to {}", key, e.getMessage(), e);
      }
      continue;
    }
  }
}
 
开发者ID:ampool,项目名称:monarch,代码行数:33,代码来源:MBeanProxyFactory.java

示例13: safeGetObjectName

import javax.management.ObjectName; //导入方法依赖的package包/类
private ObjectName safeGetObjectName(ObjectName src){
    ObjectName dest = null;
    if (src != null) {
        dest = ObjectName.getInstance(src);
    }
    return dest;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:8,代码来源:RelationNotification.java

示例14: getMemberId

import javax.management.ObjectName; //导入方法依赖的package包/类
protected static String getMemberId(final String jmxManagerHost, final int jmxManagerPort,
    final String memberName) throws Exception {
  JMXConnector connector = null;

  try {
    connector = JMXConnectorFactory.connect(new JMXServiceURL(String.format(
        "service:jmx:rmi://%1$s/jndi/rmi://%1$s:%2$d/jmxrmi", jmxManagerHost, jmxManagerPort)));

    MBeanServerConnection connection = connector.getMBeanServerConnection();

    ObjectName objectNamePattern = ObjectName.getInstance("GemFire:type=Member,*");

    QueryExp query = Query.eq(Query.attr("Name"), Query.value(memberName));

    Set<ObjectName> objectNames = connection.queryNames(objectNamePattern, query);

    assertNotNull(objectNames);
    assertFalse(objectNames.isEmpty());
    assertEquals(1, objectNames.size());

    // final ObjectName objectName = ObjectName.getInstance("GemFire:type=Member,Name=" +
    // memberName);
    ObjectName objectName = objectNames.iterator().next();

    // System.err.printf("ObjectName for Member with Name (%1$s) is %2$s%n", memberName,
    // objectName);

    return ObjectUtils.toString(connection.getAttribute(objectName, "Id"));
  } finally {
    IOUtils.close(connector);
  }
}
 
开发者ID:ampool,项目名称:monarch,代码行数:33,代码来源:LauncherLifecycleCommandsDUnitTest.java

示例15: testInterface

import javax.management.ObjectName; //导入方法依赖的package包/类
private static <T> void testInterface(Class<T> c, boolean nullTest)
        throws Exception {

    System.out.println("Testing " + c.getName() +
                       (nullTest ? " for null values" : "") + "...");

    MBeanServer mbs = MBeanServerFactory.newMBeanServer();

    JMXServiceURL url = new JMXServiceURL("rmi", null, 0);
    JMXConnectorServer cs =
        JMXConnectorServerFactory.newJMXConnectorServer(url, null, mbs);
    cs.start();
    JMXServiceURL addr = cs.getAddress();
    JMXConnector cc = JMXConnectorFactory.connect(addr);
    MBeanServerConnection mbsc = cc.getMBeanServerConnection();

    NamedMXBeans namedMXBeans = new NamedMXBeans(mbsc);
    InvocationHandler ih =
        nullTest ? new MXBeanNullImplInvocationHandler(c, namedMXBeans) :
                   new MXBeanImplInvocationHandler(c, namedMXBeans);
    T impl = c.cast(Proxy.newProxyInstance(c.getClassLoader(),
                                           new Class[] {c},
                                           ih));
    ObjectName on = new ObjectName("test:type=" + c.getName());
    mbs.registerMBean(impl, on);

    System.out.println("Register any MXBeans...");

    Field[] fields = c.getFields();
    for (Field field : fields) {
        String n = field.getName();
        if (n.endsWith("ObjectName")) {
            String objectNameString = (String) field.get(null);
            String base = n.substring(0, n.length() - 10);
            Field f = c.getField(base);
            Object mxbean = f.get(null);
            ObjectName objectName =
                ObjectName.getInstance(objectNameString);
            mbs.registerMBean(mxbean, objectName);
            namedMXBeans.put(objectName, mxbean);
        }
    }

    try {
        testInterface(c, mbsc, on, namedMXBeans, nullTest);
    } finally {
        try {
            cc.close();
        } finally {
            cs.stop();
        }
    }
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:54,代码来源:MXBeanTest.java


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