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

📄 net.java

📁 监控大型网络的软件。能够自动发现拓扑结构
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
		// Aktiver scrollbarer		lnTop.activate();		lnBottom.activate();		// Oppdater PopupMenu med liste over mulige vlan		e = vlanSet.elements();		vlanMenu.clear();		vlanMenu.setMenuLabel("View other vlan at "+n.getName());		com.d("vlanSet size: " + vlanSet.size(), 5);		while (e.hasMoreElements())		{			String vlan = (String)e.nextElement();			String[] vlanName = (String[])lVlanNames.get(vlan);			if (vlanName == null) continue;			Vlan vl = new Vlan(Integer.parseInt(vlan), vlanName[1]);			com.d("  Added to vlanMenu: " + vlan + " vlanName: " + vlanName[1], 6);			vlanMenu.addMenuItem(vl);		}		vlanMenu.sort();		vlanMenu.refresh();		// Hent og legg til last-data		Hashtable lBoksText = (Hashtable)h.get("listBoksText");		Hashtable lLinkText = (Hashtable)h.get("listLinkText");		if (APPLY_LAST_VLANV) {			applyLast(lBoksText, lLinkText);		}		// Så legger vi til tekst for alle bokser		String[] tList;		int tcnt=0;		while ( (tList = (String[])lBoksText.get("t"+tcnt)) != null) {			String text = tList[1];			for (int j=2; j < tList.length; j++) {				String[] data = (String[])lBoksText.get(tList[j]);				if (data == null) {					com.d("ERROR in getNettelLinks(), boksid "+tList[j]+" in t"+tcnt+" is not found in list, check vPServer", 2);					continue;				}				Nettel nettel = (Nettel)nh.get(tList[j]);				if (nettel == null) {					//com.d("ERROR in getNettelLinks(), could not find boks with id "+tList[j], 2);					continue;				}				nettel.processText(text, data);			}			tcnt++;		}		com.d("Behandler listRouterLinkText", 2);		tcnt=0;		while ( (tList = (String[])lLinkText.get("t"+tcnt)) != null) {			String text = tList[1];			for (int j=2; j < tList.length; j++) {				String[] data = (String[])lLinkText.get(tList[j]);				if (data == null) {					com.d("ERROR in getNettelLinks(), linkid "+tList[j]+" in t"+tcnt+" is not found in list, check vPServer", 2);					continue;				}				Link l = (Link)lh.get(tList[j]);				if (l == null) {					//com.d("ERROR in getNettelLinks(), could not find link with id "+tList[j], 2);					continue;				}				String pText = l.processText(text, data);				//com.d("  Added text: " + pText, 6);			}			tcnt++;		}		com.d("------------------------------------------------------------------------", 1);	}	private void setConfig(Hashtable lConfig)	{		String[] s = (String[])lConfig.get("vpNetName");		netName = s[1];		s = (String[])lConfig.get("vpNetLink");		netLink = s[1];		s = (String[])lConfig.get("domainSuffix");		domainSuffix = s[1];		s = (String[])lConfig.get("userName");		if (s != null) com.d("Found userName: " + s[1], 1);		s = (String[])lConfig.get("hasAdmin");		if (s != null) {			com.d("hasAdmin: " + s[1], 1);			com.getAdmin().setHasAdmin(new Boolean(s[1]).booleanValue());			//com.getAdmin().setHasAdmin(true);		}		if (com.getAdmin().getHasAdmin()) {			com.getLeft().showAdminButton();		}		setConfig = true;	}	public void recalcLinks()	{		// recalc() alle linker		Enumeration e = nh.elements();		while (e.hasMoreElements())		{			Nettel n = (Nettel)e.nextElement();			n.recalcLink();		}	}	public void refreshNettel()	{		refreshNettel(false);	}	public void refreshNettel(boolean force)	{		if (!force && !needReset) return;		needReset = false;		try {			com.getMainPanel().setWaitCursor();			if (visNettel == null) showBynett(); else showNettel();			if (visGruppe == -1) com.getLeft().setNettNavn(""); // Vis blankt menyvalg			error = false;		} catch (ServerFetchException e) {			error = true;			errorMsg = e.getMessage();		} finally {			repaint();			com.getMainPanel().setDefaultCursor();		}	}	private void showBynett()	{		buildBynett();	}	private void showNettel()	{		visNettel.setSelected(true);		visNettel.resetLink();		getNettelLinks(visNettel); // lager en ny nettel Vector med de nye nettel-objektene		group.removeAllElements();	}	public void recordHistory()	{		if (!recordHistory) return;		if (visNettel == null)		{			// Vi befinner oss i en gruppe, record den			history.push(visGruppeNavn);			history.push("-"+visGruppe);			com.d("Record history: " + "-"+visGruppe,5);		} else		{			// Vis befinner oss på en nettel, record den			history.push(visNettel.getHashKey());			com.d("Record history: " + visNettel.getHashKey(),5);		}	}	public void reverseHistory()	{		if (history.isEmpty()) return;		String s = (String)history.pop();		com.d("Reverse to: " + s,5);		int k = Integer.parseInt(s);		recordHistory = false;		if (k <= 0)		{			k *= -1;			// Oppdater GUI-menyen med rett gruppe			com.getLeft().setNettIndex(k);			String grpNavn = (String)history.pop();			com.getNet().setVisGruppe(k, grpNavn);			com.d("Refresh nettel...",6);			com.getNet().refreshNettel();		} else		{			if (!nh.containsKey(s))			{				com.d("Error!! Not found in nh, no path back...",5);				recordHistory = true;				Enumeration e = nh.keys();				while (e.hasMoreElements())				{					com.d("Key: " + e.nextElement(),6);				}				return;			}			Nettel n = (Nettel)nh.get(s);			n.disablePopup();			if (n.getKat().equals("gw")) n.setVlan(0);			com.getNet().setVisNettel(n);			com.d("Refresh nettel...",6);			com.getNet().refreshNettel();		}		recordHistory = true;	}	public void paint(Graphics g)	{		// Initialize or reset the off-screen buffer if needed		if (bufferWidth != getSize().width || bufferHeight != getSize().height || bufferImage == null || bufferGraphics == null)			resetBuffer();				if (bufferGraphics != null) {			// Clear the off-screen buffer			bufferGraphics.clearRect(0, 0, bufferWidth, bufferHeight);			// Paint an off-screen image 			paintBuffer(bufferGraphics);			// Dump the buffered image onto the canvas			g.drawImage(bufferImage, 0,0, this);		}	}	public void paintBuffer(Graphics g)	{		final int ANTALL_PASS = 5;		if (error) {			drawErrorMsg(g, errorMsg);			return;		}				drawBackKnapp(g);		drawOverskrift(g);		for (int i = 0; i < group.size(); i++) {			Grp grp = (Grp)group.elementAt(i);			if (!grp.getHideicons()) grp.drawSelf(g);		}		for (int i = 1; i <= ANTALL_PASS; i++) {			Enumeration e = nh.elements();			while (e.hasMoreElements()) {				Nettel n = (Nettel)e.nextElement();				n.drawSelf(g, i);			}		}		for (int i = 0; i < group.size(); i++) {			Grp grp = (Grp)group.elementAt(i);			if (grp.getHideicons()) grp.drawSelf(g);		}	}	public void itemStateChanged(ItemEvent e)	{		String nettNavn = ((Choice)e.getSource()).getSelectedItem();		if (nettNavn.equals(""))		{			// Valg det tomme elementet, ikke lov			if (visGruppe == -1) return;			com.getLeft().setNettIndex(visGruppe);		}		if (nettNavn.startsWith("Vis ")) {			nettNavn = nettNavn.substring(4, nettNavn.length());		}		int nett = ((Choice)e.getSource()).getSelectedIndex();		com.d(" ->Bytter nett til: " + nett + " ("+nettNavn+")", 2);		com.getNet().setVisGruppe(nett, nettNavn);		com.getNet().refreshNettel();	}	public void drawErrorMsg(Graphics g, String msg)	{		int startX = 15;		int startY = 15;		g.setColor(Color.black);		g.drawString("An error occured fetching data from server:", startX+3, startY+15);		g.drawString(msg, startX+3, startY+35);	}	public void drawBackKnapp(Graphics g)	{		int startX = 15;		int startY = 3;		int sizeX = 45;		int sizeY = 20;		backKnapp = new Polygon();		backKnapp.addPoint(startX, startY);		backKnapp.addPoint(startX+sizeX, startY);		backKnapp.addPoint(startX+sizeX, startY+sizeY);		backKnapp.addPoint(startX, startY+sizeY);		// kant-linjen på knappen		g.setColor(Color.black);		g.drawPolygon(backKnapp);		// bakgrunns-fargen på knappen		g.setColor(Color.lightGray);		g.fillPolygon(backKnapp);		// teksten på knappen		g.setColor(Color.black);		g.drawString("Back", startX+3, startY+15);	}	public void drawOverskrift(Graphics g)	{		int startX = 70;		int startY = 5;		g.setColor(Color.black);		g.setFont(overskriftFont);		g.drawString(overskrift, startX+3, startY+15);	}	public boolean isBackKnappClicked(int clickX, int clickY) { return backKnapp.contains(clickX, clickY); }	public void setVisGruppe(int inVisGruppe, String inVisGruppeNavn)	{		if (visGruppe != inVisGruppe)		{			needReset = true;			com.getNet().setVisNettel(null);			recordHistory();		}		visGruppe = inVisGruppe;		visGruppeNavn = inVisGruppeNavn;	}	public int getVisGruppe() { return visGruppe; }	public int getVisGruppeid() {		return ((Integer)gruppeIdMap.get(visGruppeNavn)).intValue();	}	public void setNeedReset(boolean b) { needReset = b; }	public void setOverskrift(String s) { overskrift = s; }	public void settFarge(Color c)	{		color = c;	}	public Vector getGrp() { return group; }	public Hashtable getNettelHash() { return nh; }	public Hashtable getLinkHash() { return lh; }	public Nettel getVisNettel() { return visNettel; }	public void setVisNettel(Nettel InVisNettel)	{		if (InVisNettel != null && visNettel == InVisNettel && visVlan != InVisNettel.getVlan()) needReset = true;		if (visNettel != InVisNettel) needReset = true;		if (needReset) recordHistory();		if (needReset && InVisNettel != null)		{			visGruppe = -1; // Vi viser nå ingen gruppe		}		visNettel = InVisNettel;	}	public void changeVisVlan(int vlan)	{		if (visNettel == null || visNettel.getVlan() == 0) return; // Kan ikke skifte vlan		com.d("Changing visVlan: " + vlan, 3);		visNettel.setVlan(vlan);		setVisNettel(visNettel);		refreshNettel();	}	public void setVisVlan(int InVisVlan) { visVlan = InVisVlan; }	public int getVisVlan() { return visVlan; }	public boolean getVlanVandring() { return vlanVandring; }	public boolean getBynettView() { return bynettView; }	public void showVlanPopupMenu(int x, int y)	{		vlanMenu.show(this, x, y);	}	public void update(Graphics g) 	{		paint(g);	}	private void resetBuffer()	{		// Make sure the buffer is always the same size as the panel		bufferWidth = getSize().width;		bufferHeight = getSize().height;		// Clean up the old image		if (bufferGraphics != null) {			bufferGraphics.dispose();			bufferGraphics = null;		}		if (bufferImage != null) {			bufferImage.flush();			bufferImage = null;		}		System.gc();		// Create the new buffer with the size of the panel		bufferImage = createImage(bufferWidth, bufferHeight);		bufferGraphics = bufferImage.getGraphics();	}}

⌨️ 快捷键说明

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