Package twitter4j

Source Code of twitter4j.MBeanServerRunner

/*
* Copyright 2007 Yusuke Yamamoto
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*      http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package twitter4j;

import twitter4j.management.APIStatistics;
import twitter4j.management.APIStatisticsOpenMBean;

import javax.management.MBeanServer;
import javax.management.ObjectName;
import java.lang.management.ManagementFactory;

/**
* Registers MBeans with the platform mbean server. Run this class and then
* fire up JConsole to see the mbeans in action. Be sure to start the VM with
* the following system property enabled: -Dcom.sun.management.jmxremote
*
* @author Nick Dellamaggiore (nick.dellamaggiore <at> gmail.com)
*/
public class MBeanServerRunner {
    public static void main(String[] args) throws Exception {
        MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
        ObjectName name = new ObjectName("twitter4j.mbean:type=APIStatistics");
        ObjectName name2 = new ObjectName("twitter4j.mbean:type=APIStatisticsOpenMBean");
        APIStatistics statsMBean = new APIStatistics(100);
        mbs.registerMBean(statsMBean, name);
        APIStatisticsOpenMBean openMBean = new APIStatisticsOpenMBean(statsMBean);
        mbs.registerMBean(openMBean, name2);

        for (int i = 0; i < 10; i++) {
            statsMBean.methodCalled("foo", 5, true);
            statsMBean.methodCalled("bar", 2, true);
            statsMBean.methodCalled("baz", 10, true);
            statsMBean.methodCalled("foo", 2, false);
        }

        Thread.sleep(1000 * 60 * 60);
    }
}
TOP

Related Classes of twitter4j.MBeanServerRunner

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.