當前位置: 首頁>>代碼示例>>Java>>正文


Java DynamicMBean.getAttributes方法代碼示例

本文整理匯總了Java中javax.management.DynamicMBean.getAttributes方法的典型用法代碼示例。如果您正苦於以下問題:Java DynamicMBean.getAttributes方法的具體用法?Java DynamicMBean.getAttributes怎麽用?Java DynamicMBean.getAttributes使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在javax.management.DynamicMBean的用法示例。


在下文中一共展示了DynamicMBean.getAttributes方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: testReadAttributes

import javax.management.DynamicMBean; //導入方法依賴的package包/類
@Test
public void testReadAttributes() throws Exception {
    DynamicMBean proxy = JMX.newMBeanProxy(platformMBeanServer, threadPoolDynamicWrapperON, DynamicMBean.class);

    assertEquals(threadCount, proxy.getAttribute(THREAD_COUNT));

    assertEquals(threadPoolConfigBean.isTriggerNewInstanceCreation(),
            proxy.getAttribute(TRIGGER_NEW_INSTANCE_CREATION));

    AttributeList attributes = proxy.getAttributes(new String[] { THREAD_COUNT, TRIGGER_NEW_INSTANCE_CREATION });
    assertEquals(2, attributes.size());
    Attribute threadCountAttr = (Attribute) attributes.get(0);
    assertEquals(THREAD_COUNT, threadCountAttr.getName());
    assertEquals(threadCount, threadCountAttr.getValue());
    Attribute boolTestAttr = (Attribute) attributes.get(1);
    assertEquals(TRIGGER_NEW_INSTANCE_CREATION, boolTestAttr.getName());
    assertEquals(threadPoolConfigBean.isTriggerNewInstanceCreation(), boolTestAttr.getValue());

    MBeanInfo beanInfo = proxy.getMBeanInfo();
    assertEquals(2, beanInfo.getAttributes().length);
}
 
開發者ID:hashsdn,項目名稱:hashsdn-controller,代碼行數:22,代碼來源:AbstractDynamicWrapperTest.java

示例2: getAttributes

import javax.management.DynamicMBean; //導入方法依賴的package包/類
public AttributeList getAttributes(ObjectName name, String[] attributes)
    throws InstanceNotFoundException, ReflectionException  {

    if (name == null) {
        throw new RuntimeOperationsException(new
            IllegalArgumentException("ObjectName name cannot be null"),
            "Exception occurred trying to invoke the getter on the MBean");
    }

    if (attributes == null) {
        throw new RuntimeOperationsException(new
            IllegalArgumentException("Attributes cannot be null"),
            "Exception occurred trying to invoke the getter on the MBean");
    }

    name = nonDefaultDomain(name);

    if (MBEANSERVER_LOGGER.isLoggable(Level.FINER)) {
        MBEANSERVER_LOGGER.logp(Level.FINER,
                DefaultMBeanServerInterceptor.class.getName(),
                "getAttributes", "ObjectName = " + name);
    }

    final DynamicMBean instance = getMBean(name);
    final String[] allowedAttributes;
    final SecurityManager sm = System.getSecurityManager();
    if (sm == null)
        allowedAttributes = attributes;
    else {
        final String classname = getClassName(instance);

        // Check if the caller has the right to invoke 'getAttribute'
        //
        checkMBeanPermission(classname, null, name, "getAttribute");

        // Check if the caller has the right to invoke 'getAttribute'
        // on each specific attribute
        //
        List<String> allowedList =
            new ArrayList<String>(attributes.length);
        for (String attr : attributes) {
            try {
                checkMBeanPermission(classname, attr, name, "getAttribute");
                allowedList.add(attr);
            } catch (SecurityException e) {
                // OK: Do not add this attribute to the list
            }
        }
        allowedAttributes =
                allowedList.toArray(new String[allowedList.size()]);
    }

    try {
        return instance.getAttributes(allowedAttributes);
    } catch (Throwable t) {
        rethrow(t);
        throw new AssertionError();
    }
}
 
開發者ID:SunburstApps,項目名稱:OpenJSharp,代碼行數:60,代碼來源:DefaultMBeanServerInterceptor.java

示例3: getAttributes

import javax.management.DynamicMBean; //導入方法依賴的package包/類
public AttributeList getAttributes(ObjectName name, String[] attributes)
    throws InstanceNotFoundException, ReflectionException  {

    if (name == null) {
        throw new RuntimeOperationsException(new
            IllegalArgumentException("ObjectName name cannot be null"),
            "Exception occurred trying to invoke the getter on the MBean");
    }

    if (attributes == null) {
        throw new RuntimeOperationsException(new
            IllegalArgumentException("Attributes cannot be null"),
            "Exception occurred trying to invoke the getter on the MBean");
    }

    name = nonDefaultDomain(name);

    if (MBEANSERVER_LOGGER.isLoggable(Level.TRACE)) {
        MBEANSERVER_LOGGER.log(Level.TRACE, "ObjectName = " + name);
    }

    final DynamicMBean instance = getMBean(name);
    final String[] allowedAttributes;
    final SecurityManager sm = System.getSecurityManager();
    if (sm == null)
        allowedAttributes = attributes;
    else {
        final String classname = getClassName(instance);

        // Check if the caller has the right to invoke 'getAttribute'
        //
        checkMBeanPermission(classname, null, name, "getAttribute");

        // Check if the caller has the right to invoke 'getAttribute'
        // on each specific attribute
        //
        List<String> allowedList =
            new ArrayList<String>(attributes.length);
        for (String attr : attributes) {
            try {
                checkMBeanPermission(classname, attr, name, "getAttribute");
                allowedList.add(attr);
            } catch (SecurityException e) {
                // OK: Do not add this attribute to the list
            }
        }
        allowedAttributes =
                allowedList.toArray(new String[allowedList.size()]);
    }

    try {
        return instance.getAttributes(allowedAttributes);
    } catch (Throwable t) {
        rethrow(t);
        throw new AssertionError();
    }
}
 
開發者ID:AdoptOpenJDK,項目名稱:openjdk-jdk10,代碼行數:58,代碼來源:DefaultMBeanServerInterceptor.java


注:本文中的javax.management.DynamicMBean.getAttributes方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。