protected SVNRepository createRepository(SVNURL url, File path, SVNAdminArea area, SVNRevision pegRevision, SVNRevision revision, long[] pegRev) throws SVNException { if (url == null) { SVNURL pathURL = getURL(path); if (pathURL == null) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.ENTRY_MISSING_URL, "''{0}'' has no URL", path); SVNErrorManager.error(err, SVNLogType.WC); } } SVNRevision startRevision = revision; SVNRevision[] resolvedRevisions = resolveRevisions(pegRevision, startRevision, url != null, true); pegRevision = resolvedRevisions[0]; startRevision = resolvedRevisions[1]; SVNRepositoryLocation[] locations = getLocations(url, path, null, pegRevision, startRevision, SVNRevision.UNDEFINED); url = locations[0].getURL(); long actualRevision = locations[0].getRevisionNumber(); SVNRepository repository = createRepository(url, area != null ? area.getRoot() : null, area != null ? area.getWCAccess() : null, true); actualRevision = getRevisionNumber(SVNRevision.create(actualRevision), repository, path); if (actualRevision < 0) { actualRevision = repository.getLatestRevision(); } if (pegRev != null && pegRev.length > 0) { pegRev[0] = actualRevision; } return repository; }
protected SVNRepository createRepository(SVNURL url, File path, SVNAdminArea area, SVNRevision pegRevision, SVNRevision revision, long[] pegRev) throws SVNException { if (url == null) { SVNURL pathURL = getURL(path); if (pathURL == null) { SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.ENTRY_MISSING_URL, "''{0}'' has no URL", path); SVNErrorManager.error(err, SVNLogType.WC); } } SVNRevision startRevision = revision; SVNRevision[] resolvedRevisions = resolveRevisions(pegRevision, startRevision, url != null, true); pegRevision = resolvedRevisions[0]; startRevision = resolvedRevisions[1]; SVNRepositoryLocation[] locations = getLocations(url, path, null, pegRevision, startRevision, SVNRevision.UNDEFINED); url = locations[0].getURL(); long actualRevision = locations[0].getRevisionNumber(); SVNRepository repository = createRepository(url, area != null ? area.getRoot() : null, area != null ? area.getWCAccess() : null, true); actualRevision = getRevisionNumber(SVNRevision.create(actualRevision), repository, path); if (actualRevision < 0) { actualRevision = repository.getLatestRevision(); } if (pegRev != null && pegRev.length > 0) { pegRev[0] = actualRevision; } return repository; }
SVNRepositoryLocation[] locations = getLocations(url, path, null, pegRevision, startRevision, SVNRevision.UNDEFINED); url = locations[0].getURL(); long actualRevision = locations[0].getRevisionNumber();