Invokes parser for date header field.
if (debug) dbg_enter("DateParser.parse");
try {
headerName(TokenTypes.DATE);
int w = wkday();
lexer.match(',");
lexer.match(' ");
Calendar cal = date();
lexer.match(' ");
time(cal);
lexer.match(' ");
String tzone = this.lexer.ttoken().toLowerCase();
if (!"gmt".equals(tzone))
throw createParseException("Bad Time Zone " + tzone);
DateHeader retval = new DateHeader();
retval.setDate(cal);
return retval;
} finally {
if (debug) dbg_leave("DateParser.parse");
}