* @param string in this format:  18:07:53.681
	 * @return number of milliseconds since midnight.
	 * @throws IntraceException 
	 */
	static public Date convertInTraceAgentTimeFmt(Date d, String stringTime) throws IntraceException {
		
		if (d==null )
			throw new IntraceException("expecting non-null date");
		if (stringTime==null)
			throw new IntraceException("expecting non-null time");
		
		if (stringTime.trim().length() < 9)
			throw new IntraceException("Expecting at least 9 ascii charaters for a format like 18:07:53.681 but instead got [" + stringTime + "]");
		GregorianCalendar gcDate = new GregorianCalendar();
		gcDate.setTime(d);
		int year       = gcDate.get(Calendar.YEAR);
		int month      = gcDate.get(Calendar.MONTH); // Jan = 0, dec = 11
		int dayOfMonth = gcDate.get(Calendar.DAY_OF_MONTH); 

		//SimpleDateFormat sdf = new SimpleDateFormat("yyyy MMM dd HH:mm:ss.SSS");	
		//System.out.println("DTEP 1: [" + sdf.format(gcDate.getTime()) + "]");
		
		String delimsRegEx = "[:.]";
		String[] timeParts = stringTime.split(delimsRegEx);
		if (timeParts.length!=4)
			throw new IntraceException("Expecting a date formatted like 18:07:53.681.  Expecting 4 parts but instead got [" + timeParts + "] from text [" + stringTime + "].  Was expecting 4 pices 'split' by regex [" + delimsRegEx + "]");

		int militaryHours = UNINIT;
		int minutes = UNINIT;
		int seconds = UNINIT;
		int millis = UNINIT;

		try {
			militaryHours = Integer.parseInt(timeParts[0]);
			minutes = Integer.parseInt(timeParts[1]);
			seconds = Integer.parseInt(timeParts[2]);
			millis = Integer.parseInt(timeParts[3]);
			
		} catch (NumberFormatException nfe) {
			throw new IntraceException(nfe,"Unparseable InTrace data [" + stringTime + "]");
		}
		Calendar calendar = new GregorianCalendar(
				year,
				month,
				dayOfMonth,
				militaryHours,
				minutes,
				seconds);
		calendar.set(Calendar.MILLISECOND, millis);
//		System.out.println("DTEP 2: [" + sdf.format(calendar.getTime()) + "]");
//		System.out.println("DTEP 3: [" + calendar.getTime().getTime() + "]");
		
		return calendar.getTime();
	}