List of usage examples for org.eclipse.jgit.transport ReceivePack setPreReceiveHook
public void setPreReceiveHook(PreReceiveHook h)
From source file:com.gitblit.GitServlet.java
License:Apache License
@Override public void init(ServletConfig config) throws ServletException { groovyDir = GitBlit.getGroovyScriptsFolder(); try {//from www . j av a2 s.co m // set Grape root File grapeRoot = new File(GitBlit.getString(Keys.groovy.grapeFolder, "groovy/grape")).getAbsoluteFile(); grapeRoot.mkdirs(); System.setProperty("grape.root", grapeRoot.getAbsolutePath()); gse = new GroovyScriptEngine(groovyDir.getAbsolutePath()); } catch (IOException e) { throw new ServletException("Failed to instantiate Groovy Script Engine!", e); } // set the Gitblit receive hook setReceivePackFactory(new DefaultReceivePackFactory() { @Override public ReceivePack create(HttpServletRequest req, Repository db) throws ServiceNotEnabledException, ServiceNotAuthorizedException { // determine repository name from request String repositoryName = req.getPathInfo().substring(1); repositoryName = GitFilter.getRepositoryName(repositoryName); GitblitReceiveHook hook = new GitblitReceiveHook(); hook.repositoryName = repositoryName; hook.gitblitUrl = HttpUtils.getGitblitURL(req); ReceivePack rp = super.create(req, db); rp.setPreReceiveHook(hook); rp.setPostReceiveHook(hook); return rp; } }); super.init(new GitblitServletConfig(config)); }
From source file:playRepository.RepositoryService.java
License:Apache License
private static void receivePack(final InputStream input, Repository repository, final OutputStream output, final PreReceiveHook preReceiveHook, final PostReceiveHook postReceiveHook) { final ReceivePack receivePack = new ReceivePack(repository); receivePack.setBiDirectionalPipe(false); new Thread() { @Override// ww w. j av a 2 s . c o m public void run() { try { receivePack.setPreReceiveHook(preReceiveHook); receivePack.setPostReceiveHook(postReceiveHook); receivePack.receive(input, output, null); } catch (IOException e) { Logger.error("receivePack failed", e); } closeStreams("receivePack", input, output); } }.start(); }