⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jmxplugin.java

📁 java开源的企业总线.xmlBlaster
💻 JAVA
字号:
/*------------------------------------------------------------------------------Name:      JmxPlugin.javaProject:   xmlBlaster.orgCopyright: xmlBlaster.org, see xmlBlaster-LICENSE file------------------------------------------------------------------------------*/package org.xmlBlaster.jmxgui;import org.xmlBlaster.util.Global;import javax.management.*;import javax.swing.*;import java.awt.event.*;import java.util.Vector;import org.xmlBlaster.client.jmx.*;import org.xmlBlaster.util.Global;/** * SuperClass for Panels that handle with MBeans. * Offers generic operation for the creation of Buttons that are based * on the MBeanOperations. */public abstract class JmxPlugin extends javax.swing.JPanel{  private String globalMBeanName ="";  protected ConnectorClient cc = null;  protected String currentServer ="";  private Global glob;//TODO: Retrieve current server!  public JmxPlugin() {    super();//    ConnectorClient cc = new ConnectorClient(Global.instance());  }  public JmxPlugin(ConnectorClient cc ) {    super();    this.cc = cc;  }  public void setConnectorClient(ConnectorClient cc) {    this.cc = cc;  }  public abstract void setTargetServerName(String server);  public String getServer() {    return this.currentServer;  }  public JButton[] createButtonsForOperation(String MBeanName, String MBeanClassName) {    Vector vecButtons = new Vector();    JButton jButton1;    MBeanOperationInfo[] op = null;    this.globalMBeanName = MBeanName;    if (this.cc == null) cc = new ConnectorClient(null, currentServer);    try {      ObjectName name = new ObjectName(MBeanName);      boolean isLoaded = ((Boolean) (cc.getServer().isRegistered(name).get())).booleanValue();      if (!isLoaded) {        loadMBean(MBeanName, MBeanClassName);      }      else{      }    }    catch (Exception ex) {    }    op = cc.exploreMBeanOperationsByObjectName(MBeanName);    for (int i=0; i<op.length; i++) {      jButton1 = new JButton();      jButton1.setText(op[i].getName());      jButton1.setToolTipText(op[i].getDescription());      jButton1.setText(op[i].getName());      jButton1.setToolTipText(op[i].getDescription());      jButton1.addActionListener(new java.awt.event.ActionListener() {        public void actionPerformed(ActionEvent e) {          try {            cc.getServer().invoke(new ObjectName(globalMBeanName), e.getActionCommand(), new Object[] {}, new String[] {});          }          catch (Exception ex) {            ex.printStackTrace();          }        }      });      vecButtons.addElement(jButton1);    }    JButton[] buttons = new JButton[vecButtons.size()];    vecButtons.copyInto(buttons);    return buttons;  }  public void loadMBean(String objectName, String className) {  try {    ObjectName myName = new ObjectName(objectName);    cc.getServer().createMBean(className ,myName,null);  }  catch (Exception ex) {  }  }/*  public void setGlobal(Global glob) {  this.glob = glob;  }*/  public abstract void setGlobal(Global glob);  public abstract void update();}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -