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


Java Notification.getSource方法代码示例

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


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

示例1: handleNotification

import javax.management.Notification; //导入方法依赖的package包/类
public void handleNotification(Notification notification,
                               Object handback) {
    if (notification != null) {
        if (notification.getSource() == mbean)
            notification.setSource(name);
    }

    /*
     * Listeners are not supposed to throw exceptions.  If
     * this one does, we could remove it from the MBean.  It
     * might indicate that a connector has stopped working,
     * for instance, and there is no point in sending future
     * notifications over that connection.  However, this
     * seems rather drastic, so instead we propagate the
     * exception and let the broadcaster handle it.
     */
    listener.handleNotification(notification, handback);
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:19,代码来源:DefaultMBeanServerInterceptor.java

示例2: checkNotifs

import javax.management.Notification; //导入方法依赖的package包/类
/**
 * Check received notifications
 */
public int checkNotifs(int size,
                       List<Notification> received,
                       List<ObjectName> expected) {
    if (received.size() != size) {
        echo("Error: expecting " + size + " notifications, got " +
                received.size());
        return 1;
    } else {
        for (Notification n : received) {
            echo("Received notification: " + n);
            if (!n.getType().equals("nb")) {
                echo("Notification type must be \"nb\"");
                return 1;
            }
            ObjectName o = (ObjectName) n.getSource();
            int index = (int) n.getSequenceNumber();
            ObjectName nb = expected.get(index);
            if (!o.equals(nb)) {
                echo("Notification source must be " + nb);
                return 1;
            }
        }
    }
    return 0;
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:29,代码来源:NotificationAccessControllerTest.java

示例3: checkNotifs

import javax.management.Notification; //导入方法依赖的package包/类
public int checkNotifs(int size,
                       List<Notification> received,
                       List<ObjectName> expected) {
    if (received.size() != size) {
        echo("Error: expecting " + size + " notifications, got " +
                received.size());
        return 1;
    } else {
        for (Notification n : received) {
            echo("Received notification: " + n);
            if (!n.getType().equals("nb")) {
                echo("Notification type must be \"nb\"");
                return 1;
            }
            ObjectName o = (ObjectName) n.getSource();
            int index = (int) n.getSequenceNumber();
            ObjectName nb = expected.get(index);
            if (!o.equals(nb)) {
                echo("Notification source must be " + nb);
                return 1;
            }
        }
    }
    return 0;
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:26,代码来源:NotificationEmissionTest.java

示例4: processNotification

import javax.management.Notification; //导入方法依赖的package包/类
public static void processNotification(MBeanServerConnection connection, Notification notification) {
    echo("\n<notification>");
    echo("\t<currentDatetime>" + DATE_FORMAT.format(Calendar.getInstance().getTime()) + "</currentDatetime>");
    echo("\t<notificationTime timestamp='" + notification.getTimeStamp() + "'>" + DATE_FORMAT.format(new Date(notification.getTimeStamp())) + "</notificationTime>");
    echo("\t<className>" + notification.getClass().getName() + "</className>");
    echo("\t<source>" + notification.getSource() + "</source>");
    echo("\t<type>" + notification.getType() + "</type>");
    echo("\t<message>" + notification.getMessage() + "</message>");
    if (notification instanceof AttributeChangeNotification) {
        echo("\t<attributeChanges>");
        AttributeChangeNotification acn = (AttributeChangeNotification) notification;
        echo("\t\t<attributeName>" + acn.getAttributeName() + "</attributeName>");
        echo("\t\t<attributeType>" + acn.getAttributeType() + "</attributeType>");
        echo("\t\t<newValue>" + acn.getNewValue() + "</newValue>");
        echo("\t\t<oldValue>" + acn.getOldValue() + "</oldValue>");
        echo("\t</attributeChanges>");
    }

    if (notification.getSource() instanceof ObjectName) {
        GarbageCollectorMXBean gcBean = JMX.newMXBeanProxy(connection, (ObjectName) notification.getSource(), GarbageCollectorMXBean.class);
        echo("\t<gcInfo>");
        echo("\t\t<collectionTime>" + gcBean.getCollectionTime() + "</collectionTime>");
        echo("\t\t<collectionCount>" + gcBean.getCollectionCount() + "</collectionCount>");
        GcInfo gcInfo = gcBean.getLastGcInfo();
        echo("\t\t<startTime>" + gcInfo.getStartTime() + "</startTime>");
        echo("\t\t<endTime>"   + gcInfo.getEndTime()   + "</endTime>");
        echo("\t\t<duration>"  + gcInfo.getDuration()  + "</duration>");
        outputMemoryUsages(gcInfo.getMemoryUsageBeforeGc(), "memoryUsageBeforeGC");
        outputMemoryUsages(gcInfo.getMemoryUsageAfterGc(), "memoryUsageAfterGC");
        echo("\t</gcInfo>");
    }

    echo("\n</notification>");
}
 
开发者ID:breakEval13,项目名称:rocketmq-flink-plugin,代码行数:35,代码来源:JMXGarbageCollectorNotificationClient.java

示例5: handleNotification

import javax.management.Notification; //导入方法依赖的package包/类
public void handleNotification(
        Notification notification, Object handback) {
    if (notification.getSource() == userMBean)
        notification.setSource(name);
    userListener.handleNotification(notification, handback);
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:7,代码来源:OldMBeanServerTest.java

示例6: replaceNotificationSourceIfNecessary

import javax.management.Notification; //导入方法依赖的package包/类
/**
 * From the {@link Notification javadoc}:
 * <p><i>"It is strongly recommended that notification senders use the object name
 * rather than a reference to the MBean object as the source."</i>
 * @param notification the {@link Notification} whose
 * {@link javax.management.Notification#getSource()} might need massaging
 */
private void replaceNotificationSourceIfNecessary(Notification notification) {
	if (notification.getSource() == null || notification.getSource().equals(this.managedResource)) {
		notification.setSource(this.objectName);
	}
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:13,代码来源:ModelMBeanNotificationPublisher.java


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