/** * Expected fullPath format: * * <p>"<git revision hash>|<repository url>|<file relative path>" * * @param rootEntry indicates the association between VCS root and build configuration * @param fullPath change path from IDE patch * @return the mapped path */ @NotNull public Collection<String> mapFullPath( @NotNull final VcsRootEntry rootEntry, @NotNull final String fullPath) { OperationContext context = createContext(rootEntry.getVcsRoot(), "map full path"); try { return myMapFullPath.mapFullPath(context, rootEntry, fullPath); } catch (VcsException e) { LOG.warnAndDebugDetails( "Error while mapping path for root " + LogUtil.describe(rootEntry.getVcsRoot()), e); return Collections.emptySet(); } catch (Throwable t) { LOG.error("Error while mapping path for root " + LogUtil.describe(rootEntry.getVcsRoot()), t); return Collections.emptySet(); } finally { context.close(); } }
public Collection<VcsClientMapping> getClientMapping( final @NotNull VcsRoot root, final @NotNull IncludeRule rule) throws VcsException { final OperationContext context = createContext(root, "client-mapping"); try { GitVcsRoot gitRoot = context.getGitRoot(); URIish uri = gitRoot.getRepositoryFetchURL(); return Collections.singletonList( new VcsClientMapping( String.format("|%s|%s", uri.toString(), rule.getFrom()), rule.getTo())); } finally { context.close(); } }