convert a date to string in the iso 8601 standard format . the rfc822 timezone is almost right , still need to insert '' : '' . this method is synchronized because it depends on a non-reentrant static dateformat more efficient than creating a new one each call . concode_field_sep Pattern DURATION_PATTERN concode_elem_sep SimpleDateFormat outFmtSecond concode_elem_sep long MS_IN_HOUR concode_elem_sep SimpleDateFormat parseFmt[] concode_elem_sep long MS_IN_MINUTE concode_elem_sep VMID vmid concode_elem_sep Random random concode_elem_sep long MS_IN_DAY concode_elem_sep Logger log concode_elem_sep long MS_IN_YEAR concode_elem_sep long MS_IN_SECOND concode_elem_sep long MS_IN_WEEK concode_elem_sep int counter concode_elem_sep SimpleDateFormat outFmtMillisec concode_elem_sep Calendar outCal concode_field_sep String getMD5 concode_elem_sep String getMD5 concode_elem_sep String generateKey concode_elem_sep long parseDuration concode_elem_sep void bufferedCopy concode_elem_sep Date parseISO8601Date concode_elem_sep String addEntities concode_elem_sep String toHex concode_elem_sep String generateHexKey concode_elem_sep byte[] generateBytesKey concode_elem_sep void copy concode_elem_sep byte[] getMD5Bytes
String function ( Date arg0 ) { String loc0 ; outCal . setTime ( arg0 ) ; if ( outCal . get ( Calendar . MILLISECOND ) == 0 ) { loc0 = outFmtSecond . format ( arg0 ) ; } else { loc0 = outFmtMillisec . format ( arg0 ) ; } int loc1 = loc0 . length ( ) ; return loc0 . substring ( 0 , loc1 - 2 ) + "srini_string" + loc0 . substring ( loc1 - 2 ) ; }