package VectroData; import java.util.Iterator; import java.util.List; import java.util.Vector; import DataBase.DatabaseManagement; import tbDataModel.Tb_forward_data; /**Êý¾Ýת·¢¶ÔÏóµÄ¼¯ºÏ*/ @SuppressWarnings("rawtypes") public class ForwardDatas { static Vector tb_forward_datas=new Vector<>(); static boolean cutom1=false;//ÅжÏÕâ¸öÊý¾ÝÀàÐÍÊÇ·ñ´æÔÚ static boolean TCP=false; static boolean UDP=false; static boolean HTTPClient=false; static boolean HTTPServer=false; static Vector displaydata=new Vector<>(); static Vector alldata=new Vector<>(); static Vector warningdata=new Vector<>(); static Vector yuanshidata=new Vector<>(); static Vector gasdata=new Vector<>(); static Vector tongjidata=new Vector<>(); static Vector bujudata=new Vector<>(); static Vector gnggadta=new Vector<>(); static Vector custom1data=new Vector<>(); static boolean havezhuanfa=false; static boolean istongji=false; static { Iterator iterator = DatabaseManagement.get_alldate_indatabase("tb_forward_data").iterator(); while (iterator.hasNext()) {//µü´úÆ÷´æÔÚÔªËØ List info = (List) iterator.next();//½«µü´úÆ÷ÀïÃæµÄÔªËØ¸øµ½info¼¯ºÏ Tb_forward_data forward_data=new Tb_forward_data(); forward_data.setId(Integer.parseInt((String)info.get(0))); String type=(String)info.get(1); forward_data.setType(type); forward_data.setIp((String)info.get(2)); forward_data.setPort((String)info.get(3)); String datatype=(String)info.get(4); forward_data.setDatatype(datatype); forward_data.setAddtime((String)info.get(5)); jugedatatype(datatype,forward_data); tb_forward_datas.add(forward_data); jugetype(type); havezhuanfa=true; if(datatype.equals("ͳ¼ÆÊý¾Ý")) { istongji=true; } } } /**ÅжÏijÖÖÀàÐÍת·¢Ð­ÒéÊÇ·ñ´æÔÚ*/ public static void jugetype(String type) { switch(type){ case "TCP": TCP=true; break; case "UDP": UDP=true; break; case "HTTP-Client": HTTPClient=true; break; case "HTTP-Server": HTTPServer=true; break; } } /**ijÖÖÊý¾ÝÀàÐÍÊý¾Ý¼¯ºÏ*/ // "λÖÃÊý¾Ý","È«²¿Êý¾Ý","¸æ¾¯Êý¾Ý","ԭʼÊý¾Ý","ÆøÌåÊý¾Ý","ͳ¼ÆÊý¾Ý","²½¾àÊý¾Ý","GNGGA","custom1" public static void jugedatatype(String datatype,Tb_forward_data forward_data) { switch(datatype){ case "λÖÃÊý¾Ý": displaydata.add(forward_data); break; case "È«²¿Êý¾Ý": alldata.add(forward_data); break; case "¸æ¾¯Êý¾Ý": warningdata.add(forward_data); break; case "²½¾àÊý¾Ý": bujudata.add(forward_data); break; case "ԭʼÊý¾Ý": yuanshidata.add(forward_data); break; case "ÆøÌåÊý¾Ý": gasdata.add(forward_data); break; case "ͳ¼ÆÊý¾Ý": tongjidata.add(forward_data); break; case "GNGGA": gnggadta.add(forward_data); break; case "custom1": cutom1=true; custom1data.add(forward_data); break; } } public static Vector get_tb_forward_datas(){ return tb_forward_datas; } public static boolean get_gas_zhuanfa() { boolean gas_zhuan_fa=false;//Êý¾Ýת·¢ÆøÌå²»´æÔÚ int size=tb_forward_datas.size(); if(size!=0) {//Êý¾Ýת·¢¼¯ºÏ²»Îª¿Õ for(int i=0;i it=tb_forward_datas.iterator(); while(it.hasNext()) { Tb_forward_data forward_data1=it.next(); int id1=forward_data1.getId(); if(id1==id0) { mou_forward_data=forward_data1; break; } } } return mou_forward_data; } /**Ô¶³Ìɾ³ýת·¢ * deltefoword,ip,port,end*/ public static void delete(String message) { String[] a=message.split(","); if(a.length==4) { String ip=a[1]; String port=a[2]; if(tb_forward_datas.size() !=0) { Iterator it=tb_forward_datas.iterator(); while(it.hasNext()) { Tb_forward_data forward_data1=it.next(); String ip1=forward_data1.getIp(); String port1=forward_data1.getPort(); String id=String.valueOf(forward_data1.getId()); if(ip1.equals(ip) && port.equals(port1)) { String deleteSql="DELETE FROM tb_forward_data WHERE id='"+id+"'"; DatabaseManagement.update(deleteSql);// ɾ³ý±êÇ©ÐÅÏ¢ tb_forward_datas.removeElement(forward_data1); } } } } } /**ɾ³ýij¸ö¶ÔÏó*/ public static void delete_forward_data(String id) { Tb_forward_data mou_forward_data=get_forward_data(id); if(mou_forward_data !=null) { tb_forward_datas.removeElement(mou_forward_data); } } /**ɾ³ýÈ«²¿¶ÔÏó*/ public static void delete_all_forward_data() { if(tb_forward_datas.size() !=0) { tb_forward_datas.removeAllElements(); } } /**²éѯij¸ö¶ÔÏóÊÇ·ñÒѾ­´æÔÚ*/ public static boolean forward_data_is_have(String type,String ip,String port,String datatyp ) { boolean forward_data_is_have=false; if(tb_forward_datas.size() !=0) { Iterator it=tb_forward_datas.iterator(); while(it.hasNext()) { Tb_forward_data forward_data=it.next(); String type1=forward_data.getType(); String ip1=forward_data.getIp(); String port1=forward_data.getPort(); String datatype1=forward_data.getDatatype(); if(type1.equals(type) && ip1.equals(ip) && port1.equals(port) && datatype1.equals(datatyp)) { forward_data_is_have=true; break; } } } return forward_data_is_have; } public static void xiugai(String id,String type,String ip,String port,String datatype) { if(get_forward_data(id) !=null) { get_forward_data(id).setType(type); get_forward_data(id).setPort(port); get_forward_data(id).setIp(ip); get_forward_data(id).setDatatype(datatype); } } /**»ñȡijÖÖת·¢¶ÔÏóµÄËùÓм¯ºÏ * @param typeת·¢ÀàÐÍÈçUDP * @param datypeÐèҪת·¢µÄÊý¾Ý*/ public static Vector get_mou_tb_forword(String type,String datatype){ Vector mou_data=new Vector<>(); if(tb_forward_datas.size() !=0) { Iterator it=tb_forward_datas.iterator(); while(it.hasNext()) { Tb_forward_data forward_data=it.next(); String type1=forward_data.getType(); String datatype1=forward_data.getDatatype(); if(type1.equals(type) && datatype1.equals(datatype) ) { mou_data.add(forward_data); } } } return mou_data; } /**»ñȡijÖÖÀàÐ͵ÄÐèҪת·¢µÄÊý¾Ý¶ÔÏ󼯺Ï*/ public static Vector get_mou_tb_forword(String type){ Vector mou_data=new Vector<>(); if(tb_forward_datas.size() !=0) { Iterator it=tb_forward_datas.iterator(); while(it.hasNext()) { Tb_forward_data forward_data=it.next(); String type1=forward_data.getType(); if(type1.equals(type) ) { mou_data.add(forward_data); } } } return mou_data; } /**»ñȡij¸öHTTPת·¢¶ÔÏó*/ public static Tb_forward_data gethttp() { Tb_forward_data http=null; int size=get_mou_tb_forword("HTTP-Server").size(); if(size !=0) { http=get_mou_tb_forword("HTTP-Server").get(0); } return http; } /**Èç¹û´æÔÚÐèÒªTCPת·¢µÄµØÖ·ºÍ¶Ë¿Ú²¢ÇÒÐèҪת·¢µÄÊÇλÖÃÊý¾Ý*/ public static boolean have_tcp(String datatype) { boolean have=false; if(get_mou_tb_forword("TCP",datatype).size() !=0) { have=true; } return have; } /**Èç¹û´æÔÚÐèÒªUDPת·¢µÄµØÖ·ºÍ¶Ë¿Ú²¢ÇÒÐèҪת·¢µÄÊÇλÖÃÊý¾Ý*/ public static boolean have_udp(String datatype) { boolean have=false; if(get_mou_tb_forword("UDP",datatype).size() !=0) { have=true; } return have; } /**ÅжÏÊÇ·ñ´æÔÚHTTPÊý¾Ýת·¢ÀàÐÍ*/ public static boolean have_http(String datatype) { boolean have=false; int size=get_mou_tb_forword("HTTP-Client",datatype).size(); if( size!=0) { have=true; } return have; } public static Vector getTb_forward_datas() { return tb_forward_datas; } public static boolean isCutom1() { return cutom1; } public static void setCutom1(boolean cutom1) { ForwardDatas.cutom1 = cutom1; } public static boolean isTCP() { return TCP; } public static void setTCP(boolean tCP) { TCP = tCP; } public static boolean isUDP() { return UDP; } public static void setUDP(boolean uDP) { UDP = uDP; } public static boolean isHTTPClient() { return HTTPClient; } public static void setHTTPClient(boolean hTTPClient) { HTTPClient = hTTPClient; } public static boolean isHTTPServer() { return HTTPServer; } public static void setHTTPServer(boolean hTTPServer) { HTTPServer = hTTPServer; } public static void setTb_forward_datas(Vector tb_forward_datas) { ForwardDatas.tb_forward_datas = tb_forward_datas; } public static Vector getDisplaydata() { return displaydata; } public static void setDisplaydata(Vector displaydata) { ForwardDatas.displaydata = displaydata; } public static Vector getAlldata() { return alldata; } public static void setAlldata(Vector alldata) { ForwardDatas.alldata = alldata; } public static Vector getWarningdata() { return warningdata; } public static void setWarningdata(Vector warningdata) { ForwardDatas.warningdata = warningdata; } public static Vector getYuanshidata() { return yuanshidata; } public static void setYuanshidata(Vector yuanshidata) { ForwardDatas.yuanshidata = yuanshidata; } public static Vector getGasdata() { return gasdata; } public static void setGasdata(Vector gasdata) { ForwardDatas.gasdata = gasdata; } public static Vector getTongjidata() { return tongjidata; } public static void setTongjidata(Vector tongjidata) { ForwardDatas.tongjidata = tongjidata; } public static Vector getBujudata() { return bujudata; } public static void setBujudata(Vector bujudata) { ForwardDatas.bujudata = bujudata; } public static Vector getGnggadta() { return gnggadta; } public static void setGnggadta(Vector gnggadta) { ForwardDatas.gnggadta = gnggadta; } public static Vector getCustom1data() { return custom1data; } public static void setCustom1data(Vector custom1data) { ForwardDatas.custom1data = custom1data; } public static boolean isHavezhuanfa() { return havezhuanfa; } public static void setHavezhuanf(boolean havezhuanfa) { ForwardDatas.havezhuanfa = havezhuanfa; } public static boolean isIstongji() { return istongji; } public static void setIstongji(boolean istongji) { ForwardDatas.istongji = istongji; } }