From a74ddc24545ec45d0bb82ca2bb8f628ffdaa9da3 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Fri, 10 Oct 2014 12:04:39 -0400
Subject: [PATCH] Improve relative path determination using Java 7 Paths

---
 src/main/java/com/gitblit/manager/ProjectManager.java |   19 ++++++++++---------
 1 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/gitblit/manager/ProjectManager.java b/src/main/java/com/gitblit/manager/ProjectManager.java
index 83a6310..666f521 100644
--- a/src/main/java/com/gitblit/manager/ProjectManager.java
+++ b/src/main/java/com/gitblit/manager/ProjectManager.java
@@ -80,7 +80,7 @@
 	}
 
 	@Override
-	public IManager setup() {
+	public ProjectManager start() {
 		// load and cache the project metadata
 		projectConfigs = new FileBasedConfig(runtimeManager.getFileOrFolder(Keys.web.projectsFile, "${baseFolder}/projects.conf"), FS.detect());
 		getProjectConfigs();
@@ -89,7 +89,7 @@
 	}
 
 	@Override
-	public IManager stop() {
+	public ProjectManager stop() {
 		return this;
 	}
 
@@ -178,19 +178,20 @@
 		map.put("", configs.get(""));
 
 		for (RepositoryModel model : repositoryManager.getRepositoryModels(user)) {
-			String rootPath = StringUtils.getRootPath(model.name).toLowerCase();
-			if (!map.containsKey(rootPath)) {
+			String projectPath = StringUtils.getRootPath(model.name);
+			String projectKey = projectPath.toLowerCase();
+			if (!map.containsKey(projectKey)) {
 				ProjectModel project;
-				if (configs.containsKey(rootPath)) {
+				if (configs.containsKey(projectKey)) {
 					// clone the project model because it's repository list will
 					// be tailored for the requesting user
-					project = DeepCopier.copy(configs.get(rootPath));
+					project = DeepCopier.copy(configs.get(projectKey));
 				} else {
-					project = new ProjectModel(rootPath);
+					project = new ProjectModel(projectPath);
 				}
-				map.put(rootPath, project);
+				map.put(projectKey, project);
 			}
-			map.get(rootPath).addRepository(model);
+			map.get(projectKey).addRepository(model);
 		}
 
 		// sort projects, root project first

--
Gitblit v1.9.1