improve creation of mercurial hook script

This commit is contained in:
Sebastian Sdorra
2011-07-24 13:36:19 +02:00
parent 0811b7590a
commit 20b62974f4
5 changed files with 149 additions and 232 deletions

View File

@@ -40,6 +40,7 @@ import com.google.inject.Singleton;
import sonia.scm.config.ScmConfiguration;
import sonia.scm.repository.HgConfig;
import sonia.scm.repository.HgHookManager;
import sonia.scm.repository.HgRepositoryHandler;
import sonia.scm.repository.Repository;
import sonia.scm.repository.RepositoryManager;
@@ -97,17 +98,19 @@ public class HgCGIServlet extends HttpServlet
* @param configuration
* @param repositoryManager
* @param handler
* @param hookManager
*/
@Inject
public HgCGIServlet(CGIExecutorFactory cgiExecutorFactory,
ScmConfiguration configuration,
RepositoryManager repositoryManager,
HgRepositoryHandler handler)
HgRepositoryHandler handler, HgHookManager hookManager)
{
this.cgiExecutorFactory = cgiExecutorFactory;
this.configuration = configuration;
this.repositoryManager = repositoryManager;
this.handler = handler;
this.hookManager = hookManager;
}
//~--- methods --------------------------------------------------------------
@@ -146,7 +149,7 @@ public class HgCGIServlet extends HttpServlet
{
throw new ServletException("repository not found");
}
String name = repository.getName();
File directory = handler.getDirectory(repository);
String pythonPath = "";
@@ -162,6 +165,8 @@ public class HgCGIServlet extends HttpServlet
}
}
hookManager.writeHookScript(request);
CGIExecutor executor = cgiExecutorFactory.createExecutor(configuration,
getServletContext(), request, response);
@@ -258,6 +263,9 @@ public class HgCGIServlet extends HttpServlet
/** Field description */
private HgRepositoryHandler handler;
/** Field description */
private HgHookManager hookManager;
/** Field description */
private RepositoryManager repositoryManager;
}