From 022ebb4010ecf91ef5049f0386ef398f1d7fb32b Mon Sep 17 00:00:00 2001 From: John Crygier <john.crygier@aon.com> Date: Mon, 07 May 2012 11:49:24 -0400 Subject: [PATCH] Change layout to BoxLayout (assuming window won't be resized) --- src/com/gitblit/utils/FileUtils.java | 29 +++++++++++++++++++++++++++++ 1 files changed, 29 insertions(+), 0 deletions(-) diff --git a/src/com/gitblit/utils/FileUtils.java b/src/com/gitblit/utils/FileUtils.java index 29c9d0f..f8d35c8 100644 --- a/src/com/gitblit/utils/FileUtils.java +++ b/src/com/gitblit/utils/FileUtils.java @@ -149,4 +149,33 @@ } } } + + /** + * Determine the relative path between two files. Takes into account + * canonical paths, if possible. + * + * @param basePath + * @param path + * @return a relative path from basePath to path + */ + public static String getRelativePath(File basePath, File path) { + File exactBase = getExactFile(basePath); + File exactPath = getExactFile(path); + return StringUtils.getRelativePath(exactBase.getPath(), exactPath.getPath()); + } + + /** + * Returns the exact path for a file. This path will be the canonical path + * unless an exception is thrown in which case it will be the absolute path. + * + * @param path + * @return the exact file + */ + public static File getExactFile(File path) { + try { + return path.getCanonicalFile(); + } catch (IOException e) { + return path.getAbsoluteFile(); + } + } } -- Gitblit v1.9.1