package org.infosec.ismp.applet.discover.ui; import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.Toolkit; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.util.ArrayList; import java.util.List; import javax.swing.JFrame; import org.infosec.ismp.applet.comm.util.ServerConfig; import org.infosec.ismp.applet.discover.service.CDPSearchAppletService; import org.infosec.ismp.applet.discover.service.ICMPSearchAppletService; import org.infosec.ismp.applet.discover.service.PCSearchAppletService; import org.infosec.ismp.applet.discover.service.SNMPSearchAppletService; /** * TopoDiscoverMainFrame * @author sshanshan * @date 2009-06-16 * @version 1.0 */ public class TopoDiscoverMainFrame extends JFrame{ /** * 构造函数 */ public TopoDiscoverMainFrame(int userId){ // String roleName = ""; // for(String role : roleNameList){ // if(roleName.equals("")){ // roleName = role; // }else{ // roleName = roleName + "," +role; // } // } MainPanel mainPanel = new MainPanel(userId, ServerConfig.getServerPath()); Dimension screenDimension = Toolkit.getDefaultToolkit().getScreenSize(); this.setSize(800,560); this.setLocation((screenDimension.width - this.getSize().width) / 2, (screenDimension.height - this.getSize().height) / 2); this.setTitle("拓扑发现"); this.setLayout(new BorderLayout()); this.getContentPane().add(mainPanel,BorderLayout.CENTER); this.setVisible(true); this.setResizable(false); this.addWindowListener(new WindowAdapter() { /** * 关闭窗口时,停止正在运行的icmp,snmp发现操作 */ public void windowClosing(WindowEvent e) { Thread clossWindowThread = new Thread() { public void run() { ICMPSearchAppletService icmpSearchService = ICMPSearchAppletService.getInstance(); if(icmpSearchService!=null&icmpSearchService.isSearching()){ icmpSearchService.stopSearch(true); } SNMPSearchAppletService snmpSearchService = SNMPSearchAppletService.getInstance(); if(snmpSearchService!=null&snmpSearchService.isSearching()){ snmpSearchService.stopSearch(true); } CDPSearchAppletService cdpSearchService = CDPSearchAppletService.getInstance(); if(cdpSearchService!=null&cdpSearchService.isSearching()){ snmpSearchService.stopSearch(true); } PCSearchAppletService pcSearchService = PCSearchAppletService.getInstance(); if(pcSearchService!=null&pcSearchService.isSearching()){ pcSearchService.stopSearch(true); } } }; clossWindowThread.start(); setVisible(false); dispose(); } }); } public static void main(String[] args) { String baseURL = "http://192.168.9.99:8080/manager-web"; ServerConfig.init(baseURL); List<String> roleNameList = new ArrayList<String>(); for(int i=1;i<=5;i++){ roleNameList.add("role"+i); } TopoDiscoverMainFrame f = new TopoDiscoverMainFrame(1); } }