package jetbrains.buildServer.tools.errors; import jetbrains.buildServer.tools.Arguments; import jetbrains.buildServer.tools.ScanFile; import org.jetbrains.annotations.NotNull; /** * Created 03.07.13 20:57 * * @author Eugene Petrenko (eugene.petrenko@jetbrains.com) */ public class PathsCalculator { private final String myScanPath; public PathsCalculator(@NotNull Arguments argz) { myScanPath = argz.getScanHome().getPath(); } @NotNull public String path(@NotNull ScanFile file) { return path(file.getName()); } @NotNull public String path(@NotNull String str) { if (str.startsWith(myScanPath)) { str = str.substring(myScanPath.length()); } while (str.length() > 0 && (str.charAt(0) == '/' || str.charAt(0) == '\\')) str = str.substring(1); return str; } @NotNull public String shortPath(@NotNull ScanFile file) { String path = path(file); int x = path.lastIndexOf('!'); if (x <= 0) return path; return path.substring(0, x); } }