code: public static Map<Long, LogEntry> getBranchLog(String[] branches, long startRevision, long endRevision, String baseUrl, String user, String pwd) throws IOException, SAXException {
          try (InputStream inStr = getBranchLogStream(branches, startRevision, endRevision, baseUrl, user, pwd)) {
              return new SVNLogFileParser(branches).parseContent(inStr);
          } catch (SAXException e) {
              throw new SAXException("While parsing branch-log of " + Arrays.toString(branches) + ", start: " + startRevision + ", end: " + endRevision + " with user " + user, e);
          }
      }
docs: Retrieve the XML-log of changes on the given branch, in a specified range of revisions.
  
  @param branches The list of branches to fetch logs for, currently only the first entry is used!
  @param startRevision The SVN revision to use as starting point for the log-entries.
  @param endRevision   The SVN revision to use as end point for the log-entries. In case <code>endRevision</code> is <code>-1</code>, HEAD revision is being used
  @param baseUrl       The SVN url to connect to
  @param user          The SVN user or null if the default user from the machine should be used
  @param pwd           The SVN password or null if the default user from the machine should be used   @return A mapping of revision numbers to the {@link LogEntry}.
  
  @return All matching log-entries as map of timestamp to {@link LogEntry}
  
  @throws IOException Execution of the SVN sub-process failed or the
  sub-process returned a exit value indicating a failure
  @throws SAXException If the resulting SVN XML log output could not be parsed