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

📄 vpserver.java

📁 Network Administration Visualized 网络管理可视化源码
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
					if (nettident == null || nettident.length() == 0) nettident = "unknown_netident";					if (nettident.indexOf("-fw") != -1) nettype = "fw";					String[] s = { nettident, nettype };					sysNames.put("-"+prefiksid, s);					// Egen sær ting for tekst på ikke-gw bokser					String[] fields = (String[])text.get(nettype+"Boks");					if (fields == null) fields = (String[])text.get("defBoks");					if (fields == null) continue; // fail-safe					ArrayList tl = (ArrayList)textOut.get(nettype+"Boks");					if (tl == null) tl = (ArrayList)textOut.get("defBoks");					if (tl == null) continue; // fail-safe					s = new String[fields.length];					s[0] = "-"+prefiksid;					for (int i=1;i<s.length;i++) s[i] = rs.getString(fields[i]);					tl.add(s);					/*					if (nettype.equals("elink")) {						String[] s = { rs.getString("orgid"), nettype };						sysNames.put("-"+prefiksid, s);					} else {						String[] s = { rs.getString("komm"), nettype };						sysNames.put("-"+prefiksid, s);					}					*/				}			}			ArrayList pRouterL = (ArrayList)pRouters.get(prefiksid);			pRouterL.add(gwportid);			pRouterL.add(boksid);			// Legg til link-info			{				String[] s = {					rs.getString("speed"),					rs.getString("interface")				};				linkInfo.put(gwportid, s);			}			// Legg til tekst for bokser			if (boksDupe.add(boksid)) {				// Legg til tekst for bokser				String[] fields = (String[])text.get(kat+"Boks");				if (fields == null) fields = (String[])text.get("defBoks");				if (fields == null) continue; // fail-safe				ArrayList tl = (ArrayList)textOut.get(kat+"Boks");				if (tl == null) tl = (ArrayList)textOut.get("defBoks");				if (tl == null) continue; // fail-safe				String[] s = new String[fields.length];				s[0] = String.valueOf(boksid);				for (int i=1;i<s.length;i++) s[i] = rs.getString(fields[i]);				tl.add(s);				/*				String kat = rs.getString("kat").toLowerCase();				String[] boksFields;				if (kat.equals("gw")) boksFields = gwBoksFields;				else boksFields = defBoksFields;				String[] s = new String[boksFields.length];				for (int i=0;i<boksFields.length;i++) s[i] = rs.getString(boksFields[i]);				textBoks.put(boksid, s);				*/			}			if (nettype.equals("link")) nettype = "gw";			// Legg til tekst for link gw->gw eller gw->(stam||elink)			{				String[] fields = (String[])text.get("gw-"+nettype+"Link");				if (fields == null) fields = (String[])text.get("gw-defLink");				if (fields == null) continue; // fail-safe				ArrayList tl = (ArrayList)textOut.get("gw-"+nettype+"Link");				if (tl == null) tl = (ArrayList)textOut.get("gw-defLink");				if (tl == null) continue; // fail-safe				String[] s = new String[fields.length];				s[0] = String.valueOf(gwportid);				for (int i=1;i<s.length;i++) s[i] = rs.getString(fields[i]);				tl.add(s);			}			// Legg til tekst for link fra (stam||elink) -> gw			if (!nettype.equals("gw")) {				String[] fields = (String[])text.get(nettype+"-"+kat+"Link");				if (fields == null) fields = (String[])text.get(nettype+"-defLink");				if (fields == null) fields = (String[])text.get("def-defLink");				if (fields == null) continue; // fail-safe				ArrayList tl = (ArrayList)textOut.get(nettype+"-"+kat+"Link");				if (tl == null) tl = (ArrayList)textOut.get(nettype+"-defLink");				if (tl == null) tl = (ArrayList)textOut.get("def-defLink");				if (tl == null) continue; // fail-safe				String[] s = new String[fields.length];				s[0] = "-"+gwportid;				for (int i=1;i<s.length;i++) s[i] = rs.getString(fields[i]);				tl.add(s);			}			if (rs.getInt("netboxid")!=curid) {				curid = rs.getInt("netboxid");				l = new ArrayList();				l.add(new Integer(curid));				links.add(l);			}			l.add(prefiksid);			String[] s = { rs.getString("sysname"), kat };			sysNames.put(boksid, s);		}		// Skriv ut liste over rutere		outl("listRouters");		//outl("boksid^sysname^kat");		Iterator iter = sysNames.entrySet().iterator();		Set rrdNetboxid = new HashSet();		Map sysnameMap = new HashMap();		while (iter.hasNext()) {			Map.Entry entry = (Map.Entry)iter.next();			// Ikke skriv ut (stam||elink) rutere (negativ boksid)			String boksid = entry.getKey().toString();			if (boksid.charAt(0) == '-') continue;			String[] s = (String[])entry.getValue();			outl(boksid + "^" + s[0] + "^" + s[1] );			routerBoksIds.add(boksid);			rrdNetboxid.add(boksid);			sysnameMap.put(boksid, s[0]);		}		{			Map mm = new HashMap();			mm.put("boxId", rrdNetboxid);			mm.put("datatype", "cpu5min");			loadMap.put("listBoxLoad", mm);		}		// Skriv ut alle (stam||elink) rutere		iter = pRouters.entrySet().iterator();		while (iter.hasNext()) {			Map.Entry entry = (Map.Entry)iter.next();			Integer prefiksid = (Integer)entry.getKey();			ArrayList pRouterL = (ArrayList)entry.getValue();			if (pRouterL.size() == 4) continue;			String[] s = (String[])sysNames.get("-"+prefiksid);			if (s == null) {				//outl("ERROR at prefiksid: " + prefiksid);				continue;			}			outl("-"+prefiksid + "^" + s[0] + "^" + s[1]);			otherBoksIds.add("-"+prefiksid);		}		// Skriv ut liste over linker mellom ruterne		outl("listRouterLinks");		//outl("boksid^linkto^kat");		Set routerLinkIds = new HashSet();		//List rrdLinks = new ArrayList();		for (int i=0; i<links.size(); i++) {			l = (ArrayList)links.get(i);			int myBoksid = ((Integer)l.get(0)).intValue();			out(""+myBoksid);			for (int j=1; j<l.size(); j++) {				Integer prefiksid = (Integer)l.get(j);				ArrayList pRouterL = (ArrayList)pRouters.get(prefiksid);				if (pRouterL.size() == 4) {					int g1 = ((Integer)pRouterL.get(0)).intValue();					int v1 = ((Integer)pRouterL.get(1)).intValue();					int g2 = ((Integer)pRouterL.get(2)).intValue();					int v2 = ((Integer)pRouterL.get(3)).intValue();					if (myBoksid == v1) v1 = v2; else g1 = g2;					// Format: linkid,boksid					out("^"+g1+","+v1);					routerLinkIds.add(new Integer(g1));					//rrdLinks.add(new String[] { ""+myBoksid, ""+g1, (String)sysnameMap.get(""+myBoksid) });				}			}			outl("");		}		// Skriv ut alle (stam||elink) linker		Set otherLinkIds = new HashSet();		iter = pRouters.entrySet().iterator();		while (iter.hasNext()) {			Map.Entry entry = (Map.Entry)iter.next();			Integer prefiksid = (Integer)entry.getKey();			ArrayList pRouterL = (ArrayList)entry.getValue();			if (pRouterL.size() == 4) continue;			out("-" + prefiksid);			for (int i=0;i<pRouterL.size(); i+=2) {				out("^" + pRouterL.get(i) + "," + pRouterL.get(i+1));				otherLinkIds.add(pRouterL.get(i));			}			outl("");		}		{			Map mm = new HashMap();			mm.put("gwId", routerLinkIds);			mm.put("dualGwId", otherLinkIds);			loadMap.put("listLinkLoad", mm);		}		//listCPULinkLoad(rrdLinks, linkInfo);		outl("listRouterLinkInfo");		iter = linkInfo.entrySet().iterator();		while (iter.hasNext()) {			Map.Entry entry = (Map.Entry)iter.next();			Integer gwportid = (Integer)entry.getKey();			String[] s = (String[])entry.getValue();			out(gwportid.toString());			for (int i=0;i<s.length; i++) {				out("^" + s[i]);			}			outl("");		}		// Skriv ut tekst for bokser		String[] types = {			"Boks",			"Link"		};		for (int typ=0; typ < types.length; typ++) {			outl("list"+types[typ]+"Text");			int tcnt=0;			iter = textOut.entrySet().iterator();			while (iter.hasNext()) {				Map.Entry me = (Map.Entry)iter.next();				String key = (String)me.getKey();				if (!key.endsWith(types[typ])) continue;				l = (ArrayList)me.getValue();				String txt = ((String[])text.get(key))[0];				out("t"+tcnt+"^"+txt);				for (int i=0; i < l.size(); i++) out("^"+((String[])l.get(i))[0]);				outl("");				for (int i=0; i < l.size(); i++) {					String[] s = (String[])l.get(i);					out(s[0]);					for (int j=1; j < s.length; j++) out("^"+s[j]);					outl("");				}				tcnt++;			}		}		/*		outl("listRouterText");		out("t0^"+gwBoksText);		for (int i=0;i<routerBoksIds.size();i++) out("^"+routerBoksIds.get(i));		outl("");		out("t1^"+defBoksText);		for (int i=0;i<otherBoksIds.size();i++) out("^"+otherBoksIds.get(i));		outl("");		iter = textBoks.entrySet().iterator();		while (iter.hasNext()) {			Map.Entry entry = (Map.Entry)iter.next();			Integer boksid = (Integer)entry.getKey();			String[] s = (String[])entry.getValue();			out(""+boksid);			for (int i=0;i<s.length;i++) out("^"+s[i]);			outl("");		}		// Skriv ut tekst for linker		outl("listRouterLinkText");		out("t0^"+gwLinkText);		for (int i=0;i<routerLinkIds.size();i++) out("^"+routerLinkIds.get(i));		outl("");		out("t1^"+defLinkText);		for (int i=0;i<otherLinkIds.size();i++) out("^"+otherLinkIds.get(i));		outl("");		iter = textLinks.entrySet().iterator();		while (iter.hasNext()) {			Map.Entry entry = (Map.Entry)iter.next();			Integer linkid = (Integer)entry.getKey();			String[] s = (String[])entry.getValue();			out(""+linkid);			for (int i=0;i<s.length;i++) out("^"+s[i]);			outl("");		}		*/		reqQ.add("listLoad");	}	private static Map newMap(String key, Object val) {		Map m = new HashMap();		m.put(key, val);		return m;	}	/*	// Lister ut alle routere på topp-nivå og linker/vlan mellom dem	static void listRouters2() throws SQLException	{		// listRouters, listRouterLinks, list		//"select tilruter,id,speed,interf,gwip,bits,maxhosts,antmask,ospf from subnet where type='link' and ruter='" + nettel[i] + "' order by tilruter;");		ResultSet rs = Database.query("select g0.boksid,b0.sysName,g0.interf,g1.boksid as tilboksid,b1.sysName as tilsysname,g1.interf from gwport as g0,gwport as g1,boks as b0,boks as b1 where g0.prefiksid=g1.prefiksid and g0.boksid!=g1.boksid and g0.boksid=b0.boksid and g1.boksid=b1.boksid order by g0.boksid");		HashMap sysNames = new HashMap();		ArrayList links = new ArrayList();		ArrayList l=null;		int curid=0;		while (rs.next()) {			if (rs.getInt(1)!=curid) {				curid = rs.getInt(1);				l = new ArrayList();				l.add(new Integer(curid));				links.add(l);			}			l.add(new Integer(rs.getInt("tilboksid")));			sysNames.put(new Integer(curid), rs.getString("sysName"));			sysNames.put(new Integer(rs.getInt("tilboksid")), rs.getString("tilsysName"));		}		outl("listRouters");		Iterator iter = sysNames.entrySet().iterator();		while (iter.hasNext()) {			Map.Entry entry = (Map.Entry)iter.next();			outl(entry.getKey() + "," + entry.getValue() );		}		outl("listRouterLinks");		for (int i=0; i<links.size(); i++) {			l = (ArrayList)links.get(i);			out(""+l.get(0));			for (int j=1; j<l.size(); j++) {				out(","+l.get(j));			}			outl("");		}	}	*/	private static Map loadMap = new HashMap();	private static void listLoad() throws SQLException	{		outl("---");		try {			out.flush();			res.flushBuffer();		} catch (IOException exp) {			outl("IOException: " + exp);		}		try {			for (Iterator it = loadMap.entrySet().iterator(); it.hasNext();) {				Map.Entry me = (Map.Entry)it.next();				String func = (String)me.getKey();				Map m = (Map)me.getValue();					if (func.equals("listBoxLoad")) listBoxLoad(m);				if (func.equals("listLinkLoad")) listLinkLoad(m);			}		} catch (Exception e) {			e.printStackTrace(new PrintStream(out));		}	}	private static void listBoxLoad(Map hm)	{		outl("listBoxLoad");

⌨️ 快捷键说明

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