mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-11-12 16:35:45 +01:00
improve repository manager and handler relation
This commit is contained in:
@@ -66,22 +66,6 @@ public class HgRepositoryHandler
|
||||
/** Field description */
|
||||
public static final Type TYPE = new Type(TYPE_NAME, TYPE_DISPLAYNAME);
|
||||
|
||||
//~--- methods --------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Method description
|
||||
*
|
||||
*
|
||||
* @param repository
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public String createResourcePath(Repository repository)
|
||||
{
|
||||
return "/hg/".concat(repository.getName());
|
||||
}
|
||||
|
||||
//~--- get methods ----------------------------------------------------------
|
||||
|
||||
/**
|
||||
|
||||
@@ -40,6 +40,7 @@ import com.google.inject.Singleton;
|
||||
|
||||
import sonia.scm.repository.HgRepositoryHandler;
|
||||
import sonia.scm.repository.Repository;
|
||||
import sonia.scm.repository.RepositoryManager;
|
||||
import sonia.scm.web.cgi.AbstractCGIServlet;
|
||||
import sonia.scm.web.cgi.EnvList;
|
||||
|
||||
@@ -81,11 +82,15 @@ public class HgCGIServlet extends AbstractCGIServlet
|
||||
* Constructs ...
|
||||
*
|
||||
*
|
||||
*
|
||||
* @param repositoryManager
|
||||
* @param handler
|
||||
*/
|
||||
@Inject
|
||||
public HgCGIServlet(HgRepositoryHandler handler)
|
||||
public HgCGIServlet(RepositoryManager repositoryManager,
|
||||
HgRepositoryHandler handler)
|
||||
{
|
||||
this.repositoryManager = repositoryManager;
|
||||
this.handler = handler;
|
||||
}
|
||||
|
||||
@@ -194,7 +199,7 @@ public class HgCGIServlet extends AbstractCGIServlet
|
||||
*/
|
||||
private Repository getRepository(String repositoryname)
|
||||
{
|
||||
return handler.getByName(repositoryname);
|
||||
return repositoryManager.get(HgRepositoryHandler.TYPE_NAME, repositoryname);
|
||||
}
|
||||
|
||||
//~--- fields ---------------------------------------------------------------
|
||||
@@ -204,4 +209,7 @@ public class HgCGIServlet extends AbstractCGIServlet
|
||||
|
||||
/** Field description */
|
||||
private HgRepositoryHandler handler;
|
||||
|
||||
/** Field description */
|
||||
private RepositoryManager repositoryManager;
|
||||
}
|
||||
|
||||
@@ -41,7 +41,9 @@ import com.google.inject.Singleton;
|
||||
|
||||
import sonia.scm.repository.HgRepositoryHandler;
|
||||
import sonia.scm.repository.Repository;
|
||||
import sonia.scm.repository.RepositoryManager;
|
||||
import sonia.scm.web.filter.PermissionFilter;
|
||||
import sonia.scm.web.filter.RegexPermissionFilter;
|
||||
import sonia.scm.web.security.SecurityContext;
|
||||
|
||||
//~--- JDK imports ------------------------------------------------------------
|
||||
@@ -53,7 +55,7 @@ import javax.servlet.http.HttpServletRequest;
|
||||
* @author Sebastian Sdorra
|
||||
*/
|
||||
@Singleton
|
||||
public class HgPermissionFilter extends PermissionFilter
|
||||
public class HgPermissionFilter extends RegexPermissionFilter
|
||||
{
|
||||
|
||||
/**
|
||||
@@ -61,14 +63,13 @@ public class HgPermissionFilter extends PermissionFilter
|
||||
*
|
||||
*
|
||||
* @param securityContextProvider
|
||||
* @param handler
|
||||
* @param repositoryManager
|
||||
*/
|
||||
@Inject
|
||||
public HgPermissionFilter(Provider<SecurityContext> securityContextProvider,
|
||||
HgRepositoryHandler handler)
|
||||
RepositoryManager repositoryManager)
|
||||
{
|
||||
super(securityContextProvider);
|
||||
this.handler = handler;
|
||||
super(securityContextProvider, repositoryManager);
|
||||
}
|
||||
|
||||
//~--- get methods ----------------------------------------------------------
|
||||
@@ -77,14 +78,12 @@ public class HgPermissionFilter extends PermissionFilter
|
||||
* Method description
|
||||
*
|
||||
*
|
||||
* @param name
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
protected Repository getRepository(String name)
|
||||
protected String getType()
|
||||
{
|
||||
return handler.getByName(name);
|
||||
return HgRepositoryHandler.TYPE_NAME;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -100,9 +99,4 @@ public class HgPermissionFilter extends PermissionFilter
|
||||
{
|
||||
return !request.getMethod().equalsIgnoreCase("GET");
|
||||
}
|
||||
|
||||
//~--- fields ---------------------------------------------------------------
|
||||
|
||||
/** Field description */
|
||||
private HgRepositoryHandler handler;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user