数据校验要校验每个字段还有头和尾。
校验包过数据类型校验,特殊值校验。
数据类型校验统一写,特殊值校验写在每个消息实体里。
数据校验采用递归的方式,减少代码编写难度。
Tag类(类型校验没写完,有些特殊类型暂时没写):
cs.mina.codec.msg; java.util.HashSet; java.util.Set; cs.mina.exception.InValidDataException; { tagId; tagValue; format; must; isTagIdInThisObject( tagId){ (tagId.equals(.tagId)){ ; } { ; } } encode(){ (tagValue){ ; } .tagId.tagValueBaseMsg.SOH; } decode( input,Set already){ myIteminput.substring(, input.indexOf(BaseMsg.SOH)); returnStrinput.substring(input.indexOf(BaseMsg.SOH)); [] tagItemsmyItem.split(); (tagItems.length){ InValidDataException(); } (already.contains(tagId)){ InValidDataException(tagId); } (.getTagId().equals(tagItems[])){ .tagValuetagItems[]; already.add(tagItems[]); returnStr; }{ InValidDataException(tagIdtagItems[]); } } Tag( tagId, format, must){ .tagIdtagId; .formatformat; .mustmust; } validate(){ (must){ (tagValue){ InValidDataException(tagId); }{ (format){ InValidDataException(); }{ (format.equals()){ { .parseInt(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { value.parseInt(tagValue); (value){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { (tagValue.startsWith()){ InValidDataException(tagIdtagValue); } value.parseInt(tagValue); (value){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { value.parseInt(tagValue); (value){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { value.parseInt(tagValue); (value){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { value.parseInt(tagValue); ((valuevalue)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { .parseFloat(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { .parseFloat(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { .parseFloat(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { .parseFloat(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { .parseFloat(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { .parseFloat(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()tagValue.length()){ InValidDataException(tagIdtagValue); } (tagValue.equals(BaseMsg.SOH)){ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()tagValue.length()){ InValidDataException(tagIdtagValue); } ((tagValue.equals()tagValue.equals())){ InValidDataException(tagIdtagValue); } } (format.equals()){ indextagValue.indexOf(BaseMsg.SOH); (index){ InValidDataException(tagIdtagValue); } } (format.equals()){ indextagValue.indexOf(BaseMsg.SOH); (index){ InValidDataException(tagIdtagValue); } [] valueArraytagValue.split(); ( i;ivalueArray.length;i){ valuevalueArray[i]; (value.length()){ InValidDataException(tagIdtagValue); } } } (format.equals()){ indextagValue.indexOf(BaseMsg.SOH); (index){ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ InValidDataException(tagIdtagValue); } } (format.equals()){ } (format.equals()){ ((tagValue.length()tagValue.length())){ InValidDataException(tagIdtagValue); } yeartagValue.substring(, ); monthtagValue.substring(, ); (tagValue.length()){ weekOrDaytagValue.substring(, ); { y .parseInt(year); (y){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { mon .parseInt(month); ((monmon)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } (weekOrDay.startsWith()){ { week .parseInt(weekOrDay.substring()); ((weekweek)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } }{ { day.parseInt(weekOrDay); ((dayday)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } }{ { y .parseInt(year); (y){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { mon .parseInt(month); ((monmon)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } } (format.equals()){ (tagValue.length()){ yearStrtagValue.substring(, ); monthStrtagValue.substring(, ); dayStrtagValue.substring(, ); seperator1tagValue.substring(, ); hourStrtagValue.substring(, ); seperaotr2tagValue.substring(, ); minuteStrtagValue.substring(, ); seperator3tagValue.substring(, ); secondStrtagValue.substring(, ); (seperator1.equals()){ InValidDataException(tagIdtagValue); } (seperaotr2.equals()){ InValidDataException(tagIdtagValue); } (seperator3.equals()){ InValidDataException(tagIdtagValue); } { year.parseInt(yearStr); (year){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { month.parseInt(monthStr); ((monthmonth)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { day.parseInt(dayStr); ((dayday)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ yearStrtagValue.substring(, ); monthStrtagValue.substring(, ); dayStrtagValue.substring(, ); seperator1tagValue.substring(, ); hourStrtagValue.substring(, ); seperaotr2tagValue.substring(, ); minuteStrtagValue.substring(, ); seperator3tagValue.substring(, ); secondStrtagValue.substring(, ); seperater4tagValue.substring(, ); miliSecondStrtagValue.substring(, ); (seperator1.equals()){ InValidDataException(tagIdtagValue); } (seperaotr2.equals()){ InValidDataException(tagIdtagValue); } (seperator3.equals()){ InValidDataException(tagIdtagValue); } (seperater4.equals()){ InValidDataException(tagIdtagValue); } { year.parseInt(yearStr); (year){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { month.parseInt(monthStr); ((monthmonth)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { day.parseInt(dayStr); ((dayday)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { miliSecond.parseInt(miliSecondStr); (miliSecond){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } }{ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ hourStrtagValue.substring(, ); seperator1tagValue.substring(, ); minuteStrtagValue.substring(, ); seperator2tagValue.substring(, ); secondStrtagValue.substring(, ); (seperator1.equals()){ InValidDataException(tagIdtagValue); } (seperator2.equals()){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ hourStrtagValue.substring(, ); seperator1tagValue.substring(, ); minuteStrtagValue.substring(, ); seperator2tagValue.substring(, ); secondStrtagValue.substring(, ); seperator3tagValue.substring(,); milliSecondStrtagValue.substring(, ); (seperator1.equals()){ InValidDataException(tagIdtagValue); } (seperator2.equals()){ InValidDataException(tagIdtagValue); } (seperator3.equals()){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { milliSecond.parseInt(milliSecondStr); (milliSecond){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } }{ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ InValidDataException(tagIdtagValue); } yearStrtagValue.substring(, ); monthStrtagValue.substring(, ); dayStrtagValue.substring(, ); { year.parseInt(yearStr); (year){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { month.parseInt(monthStr); ((monthmonth)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { day.parseInt(dayStr); ((dayday)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ InValidDataException(tagIdtagValue); } yearStrtagValue.substring(, ); monthStrtagValue.substring(, ); dayStrtagValue.substring(, ); { year.parseInt(yearStr); (year){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { month.parseInt(monthStr); ((monthmonth)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { day.parseInt(dayStr); ((dayday)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ hourStrtagValue.substring(, ); seperate1tagValue.substring(, ); minuteStrtagValue.substring(, ); ZtagValue.substring(, ); (seperate1.equals()){ InValidDataException(tagIdtagValue); } (Z.equals()){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ hourStrtagValue.substring(, ); seperate1tagValue.substring(, ); minuteStrtagValue.substring(, ); seperate2tagValue.substring(,); secondStrtagValue.substring(, ); ZtagValue.substring(, ); (seperate1.equals()){ InValidDataException(tagIdtagValue); } (Z.equals()){ InValidDataException(tagIdtagValue); } (seperate2.equals()){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ hourStrtagValue.substring(, ); seperate1tagValue.substring(, ); minuteStrtagValue.substring(, ); seperate2tagValue.substring(,); offsetHourStrtagValue.substring(, ); (seperate1.equals()){ InValidDataException(tagIdtagValue); } ((seperate2.equals()seperate2.equals())){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { offsetHour.parseInt(offsetHourStr); ((offsetHouroffsetHour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ seperator1tagValue.substring(, ); hourStrtagValue.substring(,); seperator2tagValue.substring(, ); minuteStrtagValue.substring(, ); (seperator2.equals()){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } (seperator1.equals()){ secondStrtagValue.substring(, ); seperator3tagValue.substring(,); offsetHourStrtagValue.substring(, ); ((seperator3.equals()seperator3.equals())){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { offsetHour.parseInt(offsetHourStr); ((offsetHouroffsetHour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (seperator1.equals()seperator1.equals()){ offsetHourStrtagValue.substring(,); seperator3tagValue.substring(, ); offsetMinuteStrtagValue.substring(, ); (seperator3.equals()){ InValidDataException(tagIdtagValue); } { offsetHour.parseInt(offsetHourStr); ((offsetHouroffsetHour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { offsetMinute.parseInt(offsetMinuteStr); ((offsetMinuteoffsetMinute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } }{ InValidDataException(tagIdtagValue); } } (tagValue.length()){ hourStrtagValue.substring(,); seperator1tagValue.substring(, ); minuteStrtagValue.substring(, ); seperator2tagValue.substring(, ); secondStrtagValue.substring(, ); seperator3tagValue.substring(,); offsetHourStrtagValue.substring(, ); seperator4tagValue.substring(, ); offsetMinuteStrtagValue.substring(, ); (seperator1.equals()){ InValidDataException(tagIdtagValue); } (seperator2.equals()){ InValidDataException(tagIdtagValue); } ((seperator3.equals()seperator3.equals())){ InValidDataException(tagIdtagValue); } (seperator4.equals()){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { offsetHour.parseInt(offsetHourStr); ((offsetHouroffsetHour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { offsetMinute.parseInt(offsetMinuteStr); ((offsetMinuteoffsetMinute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } { InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ InValidDataException(tagIdtagValue); } yearStrtagValue.substring(, ); monthStrtagValue.substring(, ); dayStrtagValue.substring(, ); seperator1tagValue.substring(, ); hourStrtagValue.substring(, ); seperator2tagValue.substring(, ); minuteStrtagValue.substring(, ); (seperator1.equals()){ InValidDataException(tagIdtagValue); } (seperator2.equals()){ InValidDataException(tagIdtagValue); } { year.parseInt(yearStr); (year){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { month.parseInt(monthStr); ((monthmonth)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { day.parseInt(dayStr); ((dayday)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } (tagValue.length()){ ZtagValue.substring(, ); (Z.equals()){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ seperator3tagValue.substring(, ); offsetHourStrtagValue.substring(, ); ((seperator3.equals()seperator3.equals())){ InValidDataException(tagIdtagValue); } { offsetHour.parseInt(offsetHourStr); ((offsetHouroffsetHour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ seperator3tagValue.substring(, ); offsetHourStrtagValue.substring(, ); seperator4tagValue.substring(, ); offsetMinuteStrtagValue.substring(, ); ((seperator3.equals()seperator3.equals())){ InValidDataException(tagIdtagValue); } ((seperator4.equals()seperator3.equals())){ InValidDataException(tagIdtagValue); } { offsetHour.parseInt(offsetHourStr); ((offsetHouroffsetHour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { offsetMinute.parseInt(offsetMinuteStr); ((offsetMinuteoffsetMinute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } { InValidDataException(tagIdtagValue); } } (format.equals()){ } (format.equals()){ } (format.equals()){ } (format.equals()){ } (format.equals()){ } (format.equals()){ } (format.equals()){ } (format.equals()){ }{ InValidDataException(tagIdtagValueformat); } } } }{ (tagValue){ (format){ InValidDataException(); }{ (format.equals()){ { .parseInt(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { value.parseInt(tagValue); (value){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { (tagValue.startsWith()){ InValidDataException(tagIdtagValue); } value.parseInt(tagValue); (value){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { value.parseInt(tagValue); (value){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { value.parseInt(tagValue); (value){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { value.parseInt(tagValue); ((valuevalue)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { .parseFloat(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { .parseFloat(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { .parseFloat(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { .parseFloat(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { .parseFloat(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ { .parseFloat(tagValue); }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()tagValue.length()){ InValidDataException(tagIdtagValue); } (tagValue.equals(BaseMsg.SOH)){ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()tagValue.length()){ InValidDataException(tagIdtagValue); } ((tagValue.equals()tagValue.equals())){ InValidDataException(tagIdtagValue); } } (format.equals()){ indextagValue.indexOf(BaseMsg.SOH); (index){ InValidDataException(tagIdtagValue); } } (format.equals()){ indextagValue.indexOf(BaseMsg.SOH); (index){ InValidDataException(tagIdtagValue); } [] valueArraytagValue.split(); ( i;ivalueArray.length;i){ valuevalueArray[i]; (value.length()){ InValidDataException(tagIdtagValue); } } } (format.equals()){ indextagValue.indexOf(BaseMsg.SOH); (index){ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ InValidDataException(tagIdtagValue); } } (format.equals()){ } (format.equals()){ ((tagValue.length()tagValue.length())){ InValidDataException(tagIdtagValue); } yeartagValue.substring(, ); monthtagValue.substring(, ); (tagValue.length()){ weekOrDaytagValue.substring(, ); { y .parseInt(year); (y){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { mon .parseInt(month); ((monmon)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } (weekOrDay.startsWith()){ { week .parseInt(weekOrDay.substring()); ((weekweek)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } }{ { day.parseInt(weekOrDay); ((dayday)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } }{ { y .parseInt(year); (y){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { mon .parseInt(month); ((monmon)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } } (format.equals()){ (tagValue.length()){ yearStrtagValue.substring(, ); monthStrtagValue.substring(, ); dayStrtagValue.substring(, ); seperator1tagValue.substring(, ); hourStrtagValue.substring(, ); seperaotr2tagValue.substring(, ); minuteStrtagValue.substring(, ); seperator3tagValue.substring(, ); secondStrtagValue.substring(, ); (seperator1.equals()){ InValidDataException(tagIdtagValue); } (seperaotr2.equals()){ InValidDataException(tagIdtagValue); } (seperator3.equals()){ InValidDataException(tagIdtagValue); } { year.parseInt(yearStr); (year){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { month.parseInt(monthStr); ((monthmonth)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { day.parseInt(dayStr); ((dayday)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ yearStrtagValue.substring(, ); monthStrtagValue.substring(, ); dayStrtagValue.substring(, ); seperator1tagValue.substring(, ); hourStrtagValue.substring(, ); seperaotr2tagValue.substring(, ); minuteStrtagValue.substring(, ); seperator3tagValue.substring(, ); secondStrtagValue.substring(, ); seperater4tagValue.substring(, ); miliSecondStrtagValue.substring(, ); (seperator1.equals()){ InValidDataException(tagIdtagValue); } (seperaotr2.equals()){ InValidDataException(tagIdtagValue); } (seperator3.equals()){ InValidDataException(tagIdtagValue); } (seperater4.equals()){ InValidDataException(tagIdtagValue); } { year.parseInt(yearStr); (year){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { month.parseInt(monthStr); ((monthmonth)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { day.parseInt(dayStr); ((dayday)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { miliSecond.parseInt(miliSecondStr); (miliSecond){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } }{ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ hourStrtagValue.substring(, ); seperator1tagValue.substring(, ); minuteStrtagValue.substring(, ); seperator2tagValue.substring(, ); secondStrtagValue.substring(, ); (seperator1.equals()){ InValidDataException(tagIdtagValue); } (seperator2.equals()){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ hourStrtagValue.substring(, ); seperator1tagValue.substring(, ); minuteStrtagValue.substring(, ); seperator2tagValue.substring(, ); secondStrtagValue.substring(, ); seperator3tagValue.substring(,); milliSecondStrtagValue.substring(, ); (seperator1.equals()){ InValidDataException(tagIdtagValue); } (seperator2.equals()){ InValidDataException(tagIdtagValue); } (seperator3.equals()){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { milliSecond.parseInt(milliSecondStr); (milliSecond){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } }{ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ InValidDataException(tagIdtagValue); } yearStrtagValue.substring(, ); monthStrtagValue.substring(, ); dayStrtagValue.substring(, ); { year.parseInt(yearStr); (year){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { month.parseInt(monthStr); ((monthmonth)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { day.parseInt(dayStr); ((dayday)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ InValidDataException(tagIdtagValue); } yearStrtagValue.substring(, ); monthStrtagValue.substring(, ); dayStrtagValue.substring(, ); { year.parseInt(yearStr); (year){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { month.parseInt(monthStr); ((monthmonth)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { day.parseInt(dayStr); ((dayday)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ hourStrtagValue.substring(, ); seperate1tagValue.substring(, ); minuteStrtagValue.substring(, ); ZtagValue.substring(, ); (seperate1.equals()){ InValidDataException(tagIdtagValue); } (Z.equals()){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ hourStrtagValue.substring(, ); seperate1tagValue.substring(, ); minuteStrtagValue.substring(, ); seperate2tagValue.substring(,); secondStrtagValue.substring(, ); ZtagValue.substring(, ); (seperate1.equals()){ InValidDataException(tagIdtagValue); } (Z.equals()){ InValidDataException(tagIdtagValue); } (seperate2.equals()){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ hourStrtagValue.substring(, ); seperate1tagValue.substring(, ); minuteStrtagValue.substring(, ); seperate2tagValue.substring(,); offsetHourStrtagValue.substring(, ); (seperate1.equals()){ InValidDataException(tagIdtagValue); } ((seperate2.equals()seperate2.equals())){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { offsetHour.parseInt(offsetHourStr); ((offsetHouroffsetHour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ seperator1tagValue.substring(, ); hourStrtagValue.substring(,); seperator2tagValue.substring(, ); minuteStrtagValue.substring(, ); (seperator2.equals()){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } (seperator1.equals()){ secondStrtagValue.substring(, ); seperator3tagValue.substring(,); offsetHourStrtagValue.substring(, ); ((seperator3.equals()seperator3.equals())){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { offsetHour.parseInt(offsetHourStr); ((offsetHouroffsetHour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (seperator1.equals()seperator1.equals()){ offsetHourStrtagValue.substring(,); seperator3tagValue.substring(, ); offsetMinuteStrtagValue.substring(, ); (seperator3.equals()){ InValidDataException(tagIdtagValue); } { offsetHour.parseInt(offsetHourStr); ((offsetHouroffsetHour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { offsetMinute.parseInt(offsetMinuteStr); ((offsetMinuteoffsetMinute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } }{ InValidDataException(tagIdtagValue); } } (tagValue.length()){ hourStrtagValue.substring(,); seperator1tagValue.substring(, ); minuteStrtagValue.substring(, ); seperator2tagValue.substring(, ); secondStrtagValue.substring(, ); seperator3tagValue.substring(,); offsetHourStrtagValue.substring(, ); seperator4tagValue.substring(, ); offsetMinuteStrtagValue.substring(, ); (seperator1.equals()){ InValidDataException(tagIdtagValue); } (seperator2.equals()){ InValidDataException(tagIdtagValue); } ((seperator3.equals()seperator3.equals())){ InValidDataException(tagIdtagValue); } (seperator4.equals()){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { second.parseInt(secondStr); ((secondsecond)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { offsetHour.parseInt(offsetHourStr); ((offsetHouroffsetHour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { offsetMinute.parseInt(offsetMinuteStr); ((offsetMinuteoffsetMinute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } { InValidDataException(tagIdtagValue); } } (format.equals()){ (tagValue.length()){ InValidDataException(tagIdtagValue); } yearStrtagValue.substring(, ); monthStrtagValue.substring(, ); dayStrtagValue.substring(, ); seperator1tagValue.substring(, ); hourStrtagValue.substring(, ); seperator2tagValue.substring(, ); minuteStrtagValue.substring(, ); (seperator1.equals()){ InValidDataException(tagIdtagValue); } (seperator2.equals()){ InValidDataException(tagIdtagValue); } { year.parseInt(yearStr); (year){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { month.parseInt(monthStr); ((monthmonth)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { day.parseInt(dayStr); ((dayday)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { hour.parseInt(hourStr); ((hourhour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { minute.parseInt(minuteStr); ((minuteminute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } (tagValue.length()){ ZtagValue.substring(, ); (Z.equals()){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ seperator3tagValue.substring(, ); offsetHourStrtagValue.substring(, ); ((seperator3.equals()seperator3.equals())){ InValidDataException(tagIdtagValue); } { offsetHour.parseInt(offsetHourStr); ((offsetHouroffsetHour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } (tagValue.length()){ seperator3tagValue.substring(, ); offsetHourStrtagValue.substring(, ); seperator4tagValue.substring(, ); offsetMinuteStrtagValue.substring(, ); ((seperator3.equals()seperator3.equals())){ InValidDataException(tagIdtagValue); } ((seperator4.equals()seperator3.equals())){ InValidDataException(tagIdtagValue); } { offsetHour.parseInt(offsetHourStr); ((offsetHouroffsetHour)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } { offsetMinute.parseInt(offsetMinuteStr); ((offsetMinuteoffsetMinute)){ InValidDataException(tagIdtagValue); } }(Exception e){ InValidDataException(tagIdtagValue); } } { InValidDataException(tagIdtagValue); } } (format.equals()){ } (format.equals()){ } (format.equals()){ } (format.equals()){ } (format.equals()){ } (format.equals()){ } (format.equals()){ } (format.equals()){ }{ InValidDataException(tagIdtagValueformat); } } } } } getTagId() { tagId; } setTagId( tagId) { .tagId tagId; } getTagValue() { tagValue; } setTagValue( tagValue) { .tagValue tagValue; } getFormat() { format; } setFormat( format) { .format format; } isMust() { must; } setMust( must) { .must must; } }