package Tag_Ceju;
|
import java.util.Vector;
|
import JNADell.DataToJnaDell;
|
import PbuliClass.Systems;
|
|
public class Dell_Ceju {
|
|
static Vector<Tag_Ceju_hex> tagcjvec=new Vector<Tag_Ceju_hex>();
|
|
//¿ç¶È
|
static int kuadu=Integer.parseInt(Systems.sys().getRssid());
|
|
|
/**»ñÈ¡±êÇ©²â¾àµÄ¼¯ºÏ*/
|
public static Vector<Tag_Ceju_hex> getTagcjvec() {
|
return tagcjvec;
|
}
|
|
|
|
|
/**ÕÒµ½Ä³¸ö±êÇ©µÄTag_Ceju_hex¶ÔÏó*/
|
public static Tag_Ceju_hex get_cjhex(String tagid) {
|
Tag_Ceju_hex cejuhex=null;
|
int size=tagcjvec.size();
|
for(int i=0;i<size;i++) {
|
String tagid1=tagcjvec.get(i).getTagid();
|
if(tagid1.equals(tagid)) {
|
cejuhex=tagcjvec.get(i);
|
}
|
}
|
return cejuhex;
|
}
|
|
|
/**»ñȡij¸ö°üÐòµÄ²â¾à¼¯ºÏ*/
|
public static Vector<Ceju> get_moubaoxu_cjve(String tagid,String baoxu){
|
Vector<Ceju> cjvec=new Vector<Ceju>();
|
if(get_cjhex(tagid) !=null) {
|
int size=get_cjhex(tagid) .getCeju().size();
|
for(int i=0;i<size;i++) {
|
Ceju cj=get_cjhex(tagid) .getCeju().get(i);
|
String baoxu1=cj.getCe_baoxu();
|
if(baoxu.equals(baoxu1)) {
|
cjvec.add(cj);
|
}
|
}
|
|
}
|
return cjvec;
|
}
|
|
|
/**ɾ³ýij¸ö±êÇ©µÄij¸ö°üÐò²â¾à¶ÔÏó*/
|
public static void delete_cj(String tagid,String baoxu) {
|
//»ñµÃij¸ö±êÇ©µÄ²â¾à¼¯ºÏ
|
Vector<Ceju> cejuvec=get_cjhex(tagid).getCeju();
|
int size=cejuvec.size();
|
if(size !=0) {
|
for(int i=0;i<cejuvec.size();i++) {
|
Ceju cj=cejuvec.get(i);
|
String baoxu1=cj.getCe_baoxu();
|
if(baoxu.equals(baoxu1)) {
|
cejuvec.removeElement(cejuvec.get(i));
|
}
|
}
|
}
|
|
}
|
|
/**Çå¿Õ±êǩij¸ö²â¾à¼¯ºÏ*/
|
public static void deleteall_cj(String tagid) {
|
if( get_cjhex(tagid)!=null) {
|
get_cjhex(tagid).getCeju().removeAllElements();
|
}
|
}
|
|
|
@SuppressWarnings("unused")
|
public static void dell_ceju(String ip,String tagid,Ceju cj,int baoxu,String anchorid) {
|
|
//Èç¹ûij¸ö±êÇ©µÄ²â¾à¶ÔÏó²»Îª¿Õ
|
if( get_cjhex(tagid)!=null) {
|
//ÊÕµ½µÄ°üÐò¼õÈ¥¿ç¶ÈµÈÓÚ½«ÒªÏÂÒ»´Î½«Òª´¦ÀíµÄ°üÐò
|
int will_chuli=baoxu-kuadu;
|
if(will_chuli<0) {
|
will_chuli=will_chuli+256;
|
}
|
//»ñÈ¡¸Ã±êÇ©µÄÉÏÒ»°ü°üÐò
|
int last_baoxu=get_cjhex(tagid).getLast_baoxu();
|
|
//»ñÈ¡¸Ã±êÇ©³õʼµÄ°üÐò
|
int fistbaoxu=get_cjhex(tagid).getFirst_baoxu();
|
|
//»ñÈ¡¸Ã±êÇ©ÒѾ´¦ÀíµÄ°üÐò
|
int already_chuli=get_cjhex(tagid).getDell_baoxu();
|
|
//½«Òª´¦ÀíµÄ°üÐò¼õÈ¥ÒѾ´¦ÀíµÄ°üÐò
|
int p=will_chuli-already_chuli;
|
|
if(p==1||p==(-255)) {
|
|
//»ñÈ¡ÐèÒª´¦ÀíµÄ°üÐò¼¯ºÏ
|
Vector<Ceju> cejuvc= get_moubaoxu_cjve(tagid,String.valueOf(will_chuli));
|
|
int size=cejuvc.size();
|
|
//½«Êý¾Ý¸øµ½JNA´¦Àí
|
if(size !=0) {
|
DataToJnaDell.do_dell_JAN(cejuvc, size,String.valueOf(will_chuli));
|
//ɾ³ýµô¼¯ºÏÖÐÒѾ´¦ÀíµÄ°üÐò
|
delete_cj(tagid,String.valueOf(will_chuli));
|
}
|
|
//ÐÞ¸ÄÒѾ´¦ÀíµÄ°üÐò
|
get_cjhex(tagid).setDell_baoxu(will_chuli);
|
|
}else if(p>1 && p<200 ) {
|
|
for(int i=0;i<p;i++) {
|
|
already_chuli++;
|
|
//»ñÈ¡ÐèÒª´¦ÀíµÄ°üÐò¼¯ºÏ
|
Vector<Ceju> cejuvc= get_moubaoxu_cjve(tagid,String.valueOf(already_chuli));
|
|
int size=cejuvc.size();
|
//½«Êý¾Ý¸øµ½JNA´¦Àí
|
if(size !=0) {
|
DataToJnaDell.do_dell_JAN(cejuvc, size,String.valueOf(already_chuli));
|
//ɾ³ýµô¼¯ºÏÖÐÒѾ´¦ÀíµÄ°üÐò
|
delete_cj(tagid,String.valueOf(already_chuli));
|
}
|
|
|
//ÐÞ¸ÄÒѾ´¦ÀíµÄ°üÐò
|
get_cjhex(tagid).setDell_baoxu(already_chuli);
|
}
|
|
|
|
}else if(p<(-30) ){
|
|
if(already_chuli !=255) {
|
for(int i=already_chuli;i<=255;i++) {
|
//»ñÈ¡ÐèÒª´¦ÀíµÄ°üÐò¼¯ºÏ
|
Vector<Ceju> cejuvc= get_moubaoxu_cjve(tagid,String.valueOf(i));
|
int size=cejuvc.size();
|
//½«Êý¾Ý¸øµ½JNA´¦Àí
|
if(size !=0) {
|
DataToJnaDell.do_dell_JAN(cejuvc, size,String.valueOf(i));
|
|
//ɾ³ýµô¼¯ºÏÖÐÒѾ´¦ÀíµÄ°üÐò
|
delete_cj(tagid,String.valueOf(i));
|
}
|
}
|
|
|
|
|
for(int j=0;j<=will_chuli;j++) {
|
|
//»ñÈ¡ÐèÒª´¦ÀíµÄ°üÐò¼¯ºÏ
|
Vector<Ceju> cejuvc= get_moubaoxu_cjve(tagid,String.valueOf(j));
|
|
int size=cejuvc.size();
|
//½«Êý¾Ý¸øµ½JNA´¦Àí
|
if(size !=0) {
|
DataToJnaDell.do_dell_JAN(cejuvc, size,String.valueOf(j));
|
|
//ɾ³ýµô¼¯ºÏÖÐÒѾ´¦ÀíµÄ°üÐò
|
delete_cj(tagid,String.valueOf(j));
|
}
|
|
|
}
|
|
//ÐÞ¸ÄÒѾ´¦ÀíµÄ°üÐò
|
get_cjhex(tagid).setDell_baoxu(will_chuli);
|
}
|
}
|
|
get_cjhex(tagid).getCeju().add(cj);
|
|
}else {
|
Tag_Ceju_hex tcjh=new Tag_Ceju_hex();
|
Vector<Ceju> cejuvec=new Vector<Ceju>();
|
tcjh.setTagid(tagid);
|
cejuvec.add(cj);
|
tcjh.setCeju(cejuvec);
|
tcjh.setFirst_baoxu(baoxu);
|
tcjh.setDell_baoxu(baoxu);
|
tcjh.setLast_baoxu(baoxu);
|
tagcjvec.add(tcjh);
|
}
|
|
|
|
}
|
|
}
|