From db4f6b5740c6ea45d9e2209dc569bc18904a8b4d Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Tue, 26 Nov 2013 16:07:04 -0500
Subject: [PATCH] Define manager interfaces and update all of Gitblit to use managers
---
src/main/java/com/gitblit/PagesFilter.java | 34 ++++++++++++++++++----------------
1 files changed, 18 insertions(+), 16 deletions(-)
diff --git a/src/main/java/com/gitblit/PagesFilter.java b/src/main/java/com/gitblit/PagesFilter.java
index f88624e..a42d8a4 100644
--- a/src/main/java/com/gitblit/PagesFilter.java
+++ b/src/main/java/com/gitblit/PagesFilter.java
@@ -18,28 +18,29 @@
import org.eclipse.jgit.lib.Repository;
import com.gitblit.Constants.AccessRestrictionType;
+import com.gitblit.manager.IRepositoryManager;
import com.gitblit.models.RepositoryModel;
import com.gitblit.models.UserModel;
/**
* The PagesFilter is an AccessRestrictionFilter which ensures the gh-pages
* requests for a view-restricted repository are authenticated and authorized.
- *
+ *
* @author James Moger
- *
+ *
*/
public class PagesFilter extends AccessRestrictionFilter {
/**
* Extract the repository name from the url.
- *
+ *
* @param url
* @return repository name
*/
@Override
- protected String extractRepositoryName(String url) {
+ protected String extractRepositoryName(String url) {
// get the repository name from the url by finding a known url suffix
- String repository = "";
+ String repository = "";
Repository r = null;
int offset = 0;
while (r == null) {
@@ -49,14 +50,15 @@
} else {
repository = url.substring(0, slash);
}
- r = GitBlit.self().getRepository(repository, false);
+ IRepositoryManager repositoryManager = GitBlit.getManager(IRepositoryManager.class);
+ r = repositoryManager.getRepository(repository, false);
if (r == null) {
// try again
- offset = slash + 1;
+ offset = slash + 1;
} else {
// close the repo
r.close();
- }
+ }
if (repository.equals(url)) {
// either only repository in url or no repository found
break;
@@ -67,8 +69,8 @@
/**
* Analyze the url and returns the action of the request.
- *
- * @param url
+ *
+ * @param cloneUrl
* @return action of the request
*/
@Override
@@ -78,7 +80,7 @@
/**
* Determine if a non-existing repository can be created using this filter.
- *
+ *
* @return true if the filter allows repository creation
*/
@Override
@@ -88,7 +90,7 @@
/**
* Determine if the action may be executed on the repository.
- *
+ *
* @param repository
* @param action
* @return true if the action may be performed
@@ -97,10 +99,10 @@
protected boolean isActionAllowed(RepositoryModel repository, String action) {
return true;
}
-
+
/**
* Determine if the repository requires authentication.
- *
+ *
* @param repository
* @param action
* @return true if authentication required
@@ -113,14 +115,14 @@
/**
* Determine if the user can access the repository and perform the specified
* action.
- *
+ *
* @param repository
* @param user
* @param action
* @return true if user may execute the action on the repository
*/
@Override
- protected boolean canAccess(RepositoryModel repository, UserModel user, String action) {
+ protected boolean canAccess(RepositoryModel repository, UserModel user, String action) {
return user.canView(repository);
}
}
--
Gitblit v1.9.1