public static SVNRevision getRevision(String revision) throws ParseException { return getRevision(revision, new SimpleDateFormat("MM/DD/YYYY HH:MM AM_PM", Locale.US));
public static SVNRevision getRevision(String revision, SimpleDateFormat aDateFormat) throws ParseException {  if ((revision == null) || (revision.equals(""))) return null;   if (revision.compareToIgnoreCase("HEAD") == 0) return SVNRevision.HEAD; else if (revision.compareToIgnoreCase("BASE") == 0) return new SVNRevision(SVNRevision.Kind.base); else if (revision.compareToIgnoreCase("COMMITED") == 0) return new SVNRevision(SVNRevision.Kind.committed); else if (revision.compareToIgnoreCase("PREV") == 0) return new SVNRevision(SVNRevision.Kind.previous);   try { int revisionNumber = Integer.parseInt(revision); if (revisionNumber >= 0) return new SVNRevision.Number(revisionNumber); } catch (NumberFormatException e) { }   SimpleDateFormat df = (aDateFormat != null) ? aDateFormat : new SimpleDateFormat("MM/dd/yyyy hh:mm a", Locale.US);  try { Date revisionDate = df.parse(revision); return new SVNRevision.DateSpec(revisionDate); } catch (ParseException e) { }  throw new ParseException("Invalid revision. Revision should be a number, a date in " + df.toPattern() + " format or HEAD, BASE, COMMITED or PREV",0);
    public static SVNRevision getRevision(String revision) throws ParseException {    	return getRevision(revision, new SimpleDateFormat("MM/DD/YYYY HH:MM AM_PM", Locale.US));    }    