This is an automated email from the git hooks/post-receive script. New commit to branch feature/GIT in repository scmwebeditor. See http://git.nuiton.org/scmwebeditor.git commit 47ea7428df8bc4b2a241d4f7fabb465fd8a16927 Author: Hugo PIGEON <hpigeon@codelutin.com> Date: Wed Apr 29 09:40:35 2015 +0200 More errors are handled, code refactoring to make it more modular, added the "upload a new file" feature to the search page --- .../org/nuiton/scmwebeditor/GitConnection.java | 66 +++++++++++++--- .../scmwebeditor/ScmWebEditorBaseAction.java | 44 ----------- .../org/nuiton/scmwebeditor/SvnConnection.java | 89 +++++++++++++++++++++- .../nuiton/scmwebeditor/actions/LogoutAction.java | 5 +- .../nuiton/scmwebeditor/actions/ResetAction.java | 8 +- .../actions/ScmWebEditorMainAction.java | 46 ----------- .../nuiton/scmwebeditor/actions/SearchAction.java | 72 ++--------------- src/main/webapp/WEB-INF/content/loginSearch.jsp | 20 +++++ src/main/webapp/WEB-INF/content/search.jsp | 19 +++++ src/main/webapp/js/scmDetector.js | 11 ++- .../org/nuiton/scmwebeditor/BaseActionTest.java | 2 +- 11 files changed, 205 insertions(+), 177 deletions(-) diff --git a/src/main/java/org/nuiton/scmwebeditor/GitConnection.java b/src/main/java/org/nuiton/scmwebeditor/GitConnection.java index 3731baf..a96742c 100644 --- a/src/main/java/org/nuiton/scmwebeditor/GitConnection.java +++ b/src/main/java/org/nuiton/scmwebeditor/GitConnection.java @@ -22,6 +22,7 @@ package org.nuiton.scmwebeditor; import com.google.common.collect.Lists; +import com.jgeppert.struts2.jquery.tree.result.TreeNode; import org.apache.commons.io.FileUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -73,7 +74,7 @@ public class GitConnection implements ScmConnection { protected static final String MASTER_BRANCH = "master"; - public GitConnection(String address, String sessionId) throws IOException, ScmNotFoundException { + public GitConnection(String address, String sessionId) throws IOException { if(log.isDebugEnabled()) { log.debug("Git repository"); @@ -102,7 +103,7 @@ public class GitConnection implements ScmConnection { log.error("Error while cloning the repository", e); } action.setError(true); - return action.SUCCESS; + return action.ROOT; } catch (IOException e) { @@ -110,7 +111,7 @@ public class GitConnection implements ScmConnection { log.error("Error while cloning the repository", e); } action.setError(true); - return action.SUCCESS; + return action.ROOT; } catch (AuthenticationException e) { @@ -130,7 +131,7 @@ public class GitConnection implements ScmConnection { log.error("Error while getting the head branch name", e); } action.setError(true); - return SearchAction.SUCCESS; + return SearchAction.ROOT; } action.setHeadBranchName(headBranchName); @@ -169,7 +170,7 @@ public class GitConnection implements ScmConnection { log.error("Can't access to the repository", e); } action.setError(true); - return SearchAction.SUCCESS; + return SearchAction.ROOT; } String id = action.getId(); @@ -191,7 +192,7 @@ public class GitConnection implements ScmConnection { if (!gitRepo.getObjectDatabase().exists()) { action.setError(true); - return SearchAction.SUCCESS; + return SearchAction.ROOT; } RevCommit commit = null; @@ -206,7 +207,7 @@ public class GitConnection implements ScmConnection { } action.setError(true); - return SearchAction.SUCCESS; + return SearchAction.ROOT; } RevTree tree = commit.getTree(); @@ -248,11 +249,38 @@ public class GitConnection implements ScmConnection { log.error("Can't access to the repository", e); } action.setError(true); - return SearchAction.SUCCESS; + return SearchAction.ROOT; } action.setError(false); + // building the tree + if (action.getFiles() != null) { + for (String file : action.getFiles()) { + TreeNode node = new TreeNode(); + node.setId(file); + node.setTitle(file.substring(file.lastIndexOf("/") + 1)); + node.setState(TreeNode.NODE_STATE_LEAF); + node.setIcon("ui-icon-document"); + action.getNodes().add(node); + } + } + + if (action.getDirectories() != null) { + Iterator<Map.Entry<String, String>> iter1 = action.getDirectories().entrySet().iterator(); + while (iter1.hasNext()) { + Map.Entry<String, String> ent = (Map.Entry<String, String>) iter1.next(); + + String value = ent.getValue(); + + TreeNode node = new TreeNode(); + node.setId(value); + + node.setTitle(value.substring(value.lastIndexOf("/"))); + action.getNodes().add(node); + } + } + return SearchAction.SUCCESS; } @@ -452,8 +480,17 @@ public class GitConnection implements ScmConnection { // Writing the file to the local directory String pathOnRepo = action.getScmPath(); - pathOnRepo = pathOnRepo.substring(addressGit.length() + 1); - File file = new File(localDirectory.getAbsolutePath() + "/" + pathOnRepo + "/" + action.getUploadFileName()); + String path; + + if (pathOnRepo.length() > addressGit.length()) { + pathOnRepo = pathOnRepo.substring(addressGit.length() + 1); + path = pathOnRepo + "/" + action.getUploadFileName(); + } else { + pathOnRepo = ""; + path = action.getUploadFileName(); + } + + File file = new File(localDirectory.getAbsolutePath() + "/" + path); try { FileUtils.copyFile(action.getUpload(), file); @@ -473,7 +510,7 @@ public class GitConnection implements ScmConnection { // add AddCommand add = git.add(); - add.addFilepattern(pathOnRepo + "/" + action.getUploadFileName()); + add.addFilepattern(path); try { add.call(); @@ -805,7 +842,12 @@ public class GitConnection implements ScmConnection { if (log.isErrorEnabled()) { log.error("Can't clone the remote repository", e); } - throw new AuthenticationException("Can not clone the Git repository : auth failed"); + + if (e.getMessage().endsWith("500 Internal Server Error")) { + throw new AuthenticationException("Can not clone the Git repository: auth failed"); + } else { + throw new ScmNotFoundException("Can not find a Git repository at address " + addressGit); + } } catch (GitAPIException e) { FileUtils.deleteDirectory(localDirectory); if (log.isErrorEnabled()) { diff --git a/src/main/java/org/nuiton/scmwebeditor/ScmWebEditorBaseAction.java b/src/main/java/org/nuiton/scmwebeditor/ScmWebEditorBaseAction.java index c9d9708..9ec9ea6 100644 --- a/src/main/java/org/nuiton/scmwebeditor/ScmWebEditorBaseAction.java +++ b/src/main/java/org/nuiton/scmwebeditor/ScmWebEditorBaseAction.java @@ -32,19 +32,9 @@ import org.apache.tika.metadata.Metadata; import org.apache.tika.parser.AutoDetectParser; import org.apache.tika.sax.BodyContentHandler; import org.nuiton.web.struts2.BaseAction; -import org.tmatesoft.svn.core.SVNException; -import org.tmatesoft.svn.core.SVNProperty; -import org.tmatesoft.svn.core.SVNURL; -import org.tmatesoft.svn.core.auth.ISVNAuthenticationManager; -import org.tmatesoft.svn.core.internal.wc.DefaultSVNOptions; -import org.tmatesoft.svn.core.wc.SVNInfo; -import org.tmatesoft.svn.core.wc.SVNRevision; -import org.tmatesoft.svn.core.wc.SVNWCClient; -import org.tmatesoft.svn.core.wc.SVNWCUtil; import org.xml.sax.SAXException; import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpSession; import java.io.*; import java.net.MalformedURLException; import java.nio.charset.Charset; @@ -102,13 +92,11 @@ public class ScmWebEditorBaseAction extends BaseAction implements ServletRequest protected static final String PARAMETER_TEXT = "text"; //protected static final String ATTRIBUTE_TEMPDIR = "javax.servlet.context.tempdir"; - // protected static final String ATTRIBUTE_SVN_PATH_URL = "svnPath_url"; // protected static final String ATTRIBUTE_FILE_NAME_URL = "fileName_url"; protected static final String ATTRIBUTE_REDIRECTION_URL = "Redirection_url"; // protected static final String ATTRIBUTE_LANG = "Lang"; // protected static final String ATTRIBUTE_FORMAT = "Format"; - private static final String ATTRIBUTE_SVN_SESSION = "myInfo"; protected static final String ATTRIBUTE_ORIG_TEXT = "OrigText"; @@ -229,38 +217,6 @@ public class ScmWebEditorBaseAction extends BaseAction implements ServletRequest } } - public String getHeadcommiter(String address, String login, String password) throws SVNException { - - ISVNAuthenticationManager authManager = SVNWCUtil.createDefaultAuthenticationManager(login, password); - - DefaultSVNOptions svnOption = new DefaultSVNOptions(); - svnOption.setPropertyValue(SVNProperty.EOL_STYLE, SVNProperty.EOL_STYLE_LF); - - SVNWCClient wcClient = new SVNWCClient(authManager, svnOption); - - SVNInfo info = wcClient.doInfo(SVNURL.parseURIEncoded(address), SVNRevision.HEAD, SVNRevision.HEAD); - - String headAuthor = info.getAuthor(); - - - return headAuthor; - } - - - protected SvnConnection getSvnSession(HttpSession httpSession) { - SvnConnection svnSess = (SvnConnection) httpSession.getAttribute(ATTRIBUTE_SVN_SESSION); - return svnSess; - } - - protected void setSvnSession(HttpSession httpSession, SvnConnection svnSess) { - httpSession.setAttribute(ATTRIBUTE_SVN_SESSION, svnSess); - } - - protected File getTempDir(HttpSession httpSession) { - File tmp_dir = getSvnSession(httpSession).getCheckoutdir(); - return tmp_dir; - } - protected String getMimeType(File file) throws IOException, SAXException, TikaException { InputStream is = new FileInputStream(file); diff --git a/src/main/java/org/nuiton/scmwebeditor/SvnConnection.java b/src/main/java/org/nuiton/scmwebeditor/SvnConnection.java index 25040bd..cf8fc52 100644 --- a/src/main/java/org/nuiton/scmwebeditor/SvnConnection.java +++ b/src/main/java/org/nuiton/scmwebeditor/SvnConnection.java @@ -42,6 +42,7 @@ import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; +import java.util.*; public class SvnConnection implements ScmConnection { @@ -177,7 +178,7 @@ public class SvnConnection implements ScmConnection { return SearchAction.SUCCESS; } action.setNumberOfFile(0); - action.listEntries(repository, ""); + listEntries(repository, "", action); if (log.isDebugEnabled()) { log.debug("Number of file : " + action.getFiles().size()); } @@ -201,6 +202,32 @@ public class SvnConnection implements ScmConnection { action.setError(false); + if (action.getFiles() != null) { + for (String file : action.getFiles()) { + TreeNode node = new TreeNode(); + node.setId(file); + node.setTitle(file.substring(file.lastIndexOf("/") + 1)); + node.setState(TreeNode.NODE_STATE_LEAF); + node.setIcon("ui-icon-document"); + action.getNodes().add(node); + } + } + + + if (action.getDirectories() != null) { + Iterator<Map.Entry<String, String>> iter1 = action.getDirectories().entrySet().iterator(); + while (iter1.hasNext()) { + Map.Entry<String, String> ent = (Map.Entry<String, String>) iter1.next(); + + String value = ent.getValue(); + + TreeNode node = new TreeNode(); + node.setId(value); + node.setTitle(value.substring(value.lastIndexOf("/"))); + action.getNodes().add(node); + } + } + return SearchAction.SUCCESS; } @@ -293,7 +320,7 @@ public class SvnConnection implements ScmConnection { action.setDiff(diff.substring(diff.indexOf("@@"))); delTempDirectory(checkoutdir); try { - action.setHeadCommiter(action.getHeadcommiter(action.getAddress(), action.getUsername(), action.getPw())); + action.setHeadCommiter(getHeadcommiter(action.getAddress(), action.getUsername(), action.getPw())); } catch (SVNException e) { log.error("Can't get head commiter", e); } @@ -835,4 +862,62 @@ public class SvnConnection implements ScmConnection { } + public String getHeadcommiter(String address, String login, String password) throws SVNException { + + ISVNAuthenticationManager authManager = SVNWCUtil.createDefaultAuthenticationManager(login, password); + + DefaultSVNOptions svnOption = new DefaultSVNOptions(); + svnOption.setPropertyValue(SVNProperty.EOL_STYLE, SVNProperty.EOL_STYLE_LF); + + SVNWCClient wcClient = new SVNWCClient(authManager, svnOption); + + SVNInfo info = wcClient.doInfo(SVNURL.parseURIEncoded(address), SVNRevision.HEAD, SVNRevision.HEAD); + + String headAuthor = info.getAuthor(); + + + return headAuthor; + } + + + + + public static void listEntries(SVNRepository repository, String path, SearchAction action) { + + action.setFiles(new LinkedList<String>()); + action.setDirectories(new HashMap<String, String>()); + + Collection<?> entries = null; + try { + entries = repository.getDir(path, -1, null, (Collection<?>) null); + } catch (SVNException e) { + if (log.isErrorEnabled()) { + log.error("Can not reach the repository", e); + } + } + Iterator<?> iterator = entries.iterator(); + + + while (iterator.hasNext()) { + SVNDirEntry entry = (SVNDirEntry) iterator.next(); + if (log.isDebugEnabled()) { + log.debug("/" + (path.equals("") ? "" : path + "/") + entry.getName() + "\n"); + } + String fichier = action.getAddress() + "/" + (path.equals("") ? "" : path + "/") + entry.getName(); + + + if (entry.getKind() == SVNNodeKind.DIR) { + action.getDirectories().put(action.getAddressUnique(fichier), fichier); + + //listEntries(repository, (path.equals("")) ? entry.getName() : path + "/" + entry.getName()); + } else { + // On ajoute dans la liste files seulement les fichiers et pas les répertoires + action.getFiles().add(fichier); + } + } + + + } + + } diff --git a/src/main/java/org/nuiton/scmwebeditor/actions/LogoutAction.java b/src/main/java/org/nuiton/scmwebeditor/actions/LogoutAction.java index d1dc836..4859568 100644 --- a/src/main/java/org/nuiton/scmwebeditor/actions/LogoutAction.java +++ b/src/main/java/org/nuiton/scmwebeditor/actions/LogoutAction.java @@ -25,7 +25,10 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.struts2.interceptor.ServletRequestAware; import org.apache.struts2.interceptor.ServletResponseAware; -import org.nuiton.scmwebeditor.*; +import org.nuiton.scmwebeditor.ScmConnection; +import org.nuiton.scmwebeditor.ScmConnectionFactory; +import org.nuiton.scmwebeditor.ScmNotFoundException; +import org.nuiton.scmwebeditor.ScmWebEditorBaseAction; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; diff --git a/src/main/java/org/nuiton/scmwebeditor/actions/ResetAction.java b/src/main/java/org/nuiton/scmwebeditor/actions/ResetAction.java index 9b0eb9a..080d1e9 100644 --- a/src/main/java/org/nuiton/scmwebeditor/actions/ResetAction.java +++ b/src/main/java/org/nuiton/scmwebeditor/actions/ResetAction.java @@ -23,12 +23,12 @@ package org.nuiton.scmwebeditor.actions; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.scmwebeditor.*; -import org.tmatesoft.svn.core.SVNAuthenticationException; -import org.tmatesoft.svn.core.SVNException; +import org.nuiton.scmwebeditor.ScmConnection; +import org.nuiton.scmwebeditor.ScmConnectionFactory; +import org.nuiton.scmwebeditor.ScmNotFoundException; +import org.nuiton.scmwebeditor.ScmWebEditorBaseAction; import javax.naming.AuthenticationException; -import javax.servlet.http.Cookie; public class ResetAction extends ScmWebEditorBaseAction { diff --git a/src/main/java/org/nuiton/scmwebeditor/actions/ScmWebEditorMainAction.java b/src/main/java/org/nuiton/scmwebeditor/actions/ScmWebEditorMainAction.java index 2bd1635..3753d12 100644 --- a/src/main/java/org/nuiton/scmwebeditor/actions/ScmWebEditorMainAction.java +++ b/src/main/java/org/nuiton/scmwebeditor/actions/ScmWebEditorMainAction.java @@ -65,8 +65,6 @@ public class ScmWebEditorMainAction extends ScmWebEditorBaseAction implements Se protected String numRevision; - protected String addressSvn; - protected String username; protected String pw; @@ -77,14 +75,6 @@ public class ScmWebEditorMainAction extends ScmWebEditorBaseAction implements Se protected boolean fromLoginPage; - public String getAddressSvn() { - return addressSvn; - } - - public void setAddressSvn(String addressSvn) { - this.addressSvn = addressSvn; - } - public String getMimeType() { return mimeType; } @@ -198,47 +188,11 @@ public class ScmWebEditorMainAction extends ScmWebEditorBaseAction implements Se log.debug("ProjectUrl= " + projectUrl); } - -// Map<?,?> map =(Map<?,?>) request.getParameterMap(); - if (testParameters()) { return NO_PARAMETER; } -// if(testParameters()) { -// -// Map<String,String> parameters = new HashMap<String,String>(); -// -// Iterator<?> iter = map.entrySet().iterator(); -// while (iter.hasNext()) { -// Entry<?,?> n = (Entry<?,?>)iter.next(); -// String key = n.getKey().toString(); -// String values[] = (String[]) n.getValue(); -// parameters.put(key,values[0].toString()); -// } -// -// -// URL urlSvn = null; -// try { -// urlSvn = ScmUrlResolverEngine.resolver(parameters); -// } catch (IOException e1) { -// if(log.isErrorEnabled()) { -// log.error("erreur", e1); -// } -// return "errorPath"; -// } catch (IllegalArgumentException e1) { -// if(log.isErrorEnabled()) { -// log.error(e1.getMessage()); -// } -// return "errorPath"; -// } -// -// address=urlSvn.toString(); -// -// } - - HttpSession session = request.getSession(); String sessionId = session.getId(); diff --git a/src/main/java/org/nuiton/scmwebeditor/actions/SearchAction.java b/src/main/java/org/nuiton/scmwebeditor/actions/SearchAction.java index 7ac6bca..5a41ba7 100644 --- a/src/main/java/org/nuiton/scmwebeditor/actions/SearchAction.java +++ b/src/main/java/org/nuiton/scmwebeditor/actions/SearchAction.java @@ -138,7 +138,7 @@ public class SearchAction extends ScmWebEditorBaseAction { HttpSession session = request.getSession(); String sessionId = session.getId(); - ScmConnection scmConn = null; + ScmConnection scmConn; try { scmConn = ScmConnectionFactory.createScmConnection(address, scmType, sessionId); } catch (ScmNotFoundException e) { @@ -149,84 +149,26 @@ public class SearchAction extends ScmWebEditorBaseAction { return SUCCESS; } - String returnCode = null; + String returnCode; // getting the files and directories + if (scmConn == null) { + error = true; + return ROOT; + } + returnCode = scmConn.search(this); if (files == null && directories == null) { return returnCode; } - // building the tree - if (files != null) { - for (String file : files) { - TreeNode node = new TreeNode(); - node.setId(file); - node.setTitle(file.substring(file.lastIndexOf("/") + 1)); - node.setState(TreeNode.NODE_STATE_LEAF); - node.setIcon("ui-icon-document"); - nodes.add(node); - } - } - - if (directories != null) { - Iterator<Entry<String, String>> iter1 = directories.entrySet().iterator(); - while (iter1.hasNext()) { - Map.Entry<String, String> ent = (Map.Entry<String, String>) iter1.next(); - String value = ent.getValue(); - - TreeNode node = new TreeNode(); - node.setId(value); - - node.setTitle(value.substring(value.lastIndexOf("/"))); - nodes.add(node); - } - } return returnCode; } - public void listEntries(SVNRepository repository, String path) { - - files = new LinkedList<String>(); - directories = new HashMap<String, String>(); - - Collection<?> entries = null; - try { - entries = repository.getDir(path, -1, null, (Collection<?>) null); - } catch (SVNException e) { - if (log.isErrorEnabled()) { - log.error("Can not reach the repository", e); - } - } - Iterator<?> iterator = entries.iterator(); - - - while (iterator.hasNext()) { - SVNDirEntry entry = (SVNDirEntry) iterator.next(); - if (log.isDebugEnabled()) { - log.debug("/" + (path.equals("") ? "" : path + "/") + entry.getName() + "\n"); - } - String fichier = address + "/" + (path.equals("") ? "" : path + "/") + entry.getName(); - - - if (entry.getKind() == SVNNodeKind.DIR) { - directories.put(getAddressUnique(fichier), fichier); - - //listEntries(repository, (path.equals("")) ? entry.getName() : path + "/" + entry.getName()); - } else { - // On ajoute dans la liste files seulement les fichiers et pas les répertoires - files.add(fichier); - } - } - - - } - - public String getBranchesJSON() { if (username == null) { diff --git a/src/main/webapp/WEB-INF/content/loginSearch.jsp b/src/main/webapp/WEB-INF/content/loginSearch.jsp index c2874d6..a14c76f 100644 --- a/src/main/webapp/WEB-INF/content/loginSearch.jsp +++ b/src/main/webapp/WEB-INF/content/loginSearch.jsp @@ -26,6 +26,24 @@ <%@ taglib prefix="sj" uri="/struts-jquery-tags" %> <sj:head jquerytheme="default"/> +<script type="test/javascript"> + + $("#load-icon").hide(); + + $("#ajaxSearchButtonLogin").on("click", function() { + $("#load-icon").show(); + }); + + var mykey; + + $("#pw").on("keypress", function(e) { + if (e.keyCode == 13) { + $("#load-icon").show(); + } + }); + +</script> + <div id="search"> <p><s:text name="scm.mustBeLog"/></p> @@ -51,5 +69,7 @@ value="%{scm.loginButton}" > </sj:submit> + + <img src="struts/js/jstree/themes/classic/throbber.gif" alt="loading" id="load-icon"/> </p> </div> diff --git a/src/main/webapp/WEB-INF/content/search.jsp b/src/main/webapp/WEB-INF/content/search.jsp index 89c7bca..9fbb0ec 100644 --- a/src/main/webapp/WEB-INF/content/search.jsp +++ b/src/main/webapp/WEB-INF/content/search.jsp @@ -55,8 +55,12 @@ } }); + $("#load-icon").hide(); + </script> +<script src="js/pictureUpload.js" type="text/javascript"></script> + <s:if test="scmType.equals('Git') && !error"> <s:text name="scm.outConnection.headBranch"/> <s:if test="selectedBranch != null"> @@ -100,3 +104,18 @@ <s:text name="scm.cantFindRepo"/> </s:if> +<s:set id="scm.upload"> + <s:text name="scm.upload"/> +</s:set> +<s:set id="scm.uploadTitle"> + <s:text name="scm.uploadTitle"/> +</s:set> + +<s:set name="address"> + <s:property value="address"/> +</s:set> +<center> + <s:submit name="uploadButton" value="%{scm.upload}" title="%{scm.uploadTitle}" + onClick="javascript:upload_popup('doUpload.action', 'upload' , getElementById('addressInput'), '%{scmType}' );"/> +</center> + diff --git a/src/main/webapp/js/scmDetector.js b/src/main/webapp/js/scmDetector.js index 229676d..7e31f18 100644 --- a/src/main/webapp/js/scmDetector.js +++ b/src/main/webapp/js/scmDetector.js @@ -3,10 +3,17 @@ $(document).ready(function() { $("#addressInput").on("input", function() { var address = $("#addressInput").val(); - if (address.contains(".git") && scmsListContains("Git")) { - $("#scmType").val("Git"); + if (scmsListContains("Git")) { + if (address.contains(".git") || address.startsWith("git://")) { + $("#scmType").val("Git"); + } } + if (scmsListContains("SVN")) { + if (address.startsWith("svn://")) { + $("#scmType").val("SVN"); + } + } }); diff --git a/src/test/java/org/nuiton/scmwebeditor/BaseActionTest.java b/src/test/java/org/nuiton/scmwebeditor/BaseActionTest.java index 03544fb..22d1797 100644 --- a/src/test/java/org/nuiton/scmwebeditor/BaseActionTest.java +++ b/src/test/java/org/nuiton/scmwebeditor/BaseActionTest.java @@ -143,7 +143,7 @@ public class BaseActionTest { try { SVNRepository repository = SVNRepositoryFactory.create(tgtURL); searchAction.setAddress(""); - searchAction.listEntries(repository , ""); + SvnConnection.listEntries(repository , "", searchAction); files = new LinkedList<String>(); files.addAll(searchAction.getFiles()); } catch (SVNException e) { -- To stop receiving notification emails like this one, please contact nuiton.org SCM administrator <admin+scm@nuiton.org>.