[jboss-svn-commits] JBL Code SVN: r6171 - labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Sep 12 09:14:16 EDT 2006
Author: wrzep
Date: 2006-09-12 09:14:13 -0400 (Tue, 12 Sep 2006)
New Revision: 6171
Modified:
labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/CheckOutEditor.java
labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/CodeLinesEvaluator.java
labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/CodeLinesPlugin.java
Log:
JBLAB-599
"svn: too many open files" fix(?)
Pawel
Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/CheckOutEditor.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/CheckOutEditor.java 2006-09-12 13:05:36 UTC (rev 6170)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/CheckOutEditor.java 2006-09-12 13:14:13 UTC (rev 6171)
@@ -27,6 +27,7 @@
import java.io.IOException;
import java.io.LineNumberReader;
import java.io.OutputStream;
+import java.io.RandomAccessFile;
import org.jboss.logging.Logger;
import org.tmatesoft.svn.core.SVNCommitInfo;
@@ -60,6 +61,13 @@
myDeltaProcessor = new SVNDeltaProcessor();
log = Logger.getLogger(CheckOutEditor.class);
+
+ try {
+ file = File.createTempFile("labsTempFileJMM", "CodeLinesEvaluator");
+ } catch (IOException e) {
+
+ log.error("Can't create temp file,", e);
+ }
}
public long getCodeLines() {
@@ -100,15 +108,25 @@
return;
}
+ truncateFile(file);
+
+ myDeltaProcessor.applyTextDelta(null, file, false);
+ }
+
+ private void truncateFile(File file) throws SVNException {
+
try {
- file = File.createTempFile("JBoss", "CodeLinesEvaluator");
+
+ RandomAccessFile f = new RandomAccessFile(file, "rw");
+ f.setLength(0);
+
} catch (IOException e) {
-
+
+ log.warn("Can't truncate file", e);
+
throw new SVNException(SVNErrorMessage.
create(SVNErrorCode.UNKNOWN),e);
}
-
- myDeltaProcessor.applyTextDelta(null, file, false);
}
public OutputStream textDeltaChunk(String path, SVNDiffWindow diffWindow)
Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/CodeLinesEvaluator.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/CodeLinesEvaluator.java 2006-09-12 13:05:36 UTC (rev 6170)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/CodeLinesEvaluator.java 2006-09-12 13:14:13 UTC (rev 6171)
@@ -54,6 +54,8 @@
public class CodeLinesEvaluator {
private static Logger log = Logger.getLogger(CodeLinesEvaluator.class);
+
+ private static CheckOutEditor editor = new CheckOutEditor();
/**
* Evaluates number of code lines in files located in secure SVN repository.
@@ -83,8 +85,6 @@
String password) throws SVNException {
SVNRepository repository = getRepository(url, userName, password);
-
- CheckOutEditor editor = new CheckOutEditor();
repository.checkout(SVNRevision.HEAD.getNumber(), "", true, editor);
@@ -297,7 +297,7 @@
ret = getAddedCodeLines(repository, path,
fromRev, SVNRevision.HEAD);
} catch (SVNException e) {
- e.printStackTrace();
+ log.warn("Failed to evaluate added code lines,", e);
}
return ret;
Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/CodeLinesPlugin.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/CodeLinesPlugin.java 2006-09-12 13:05:36 UTC (rev 6170)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/codelines/CodeLinesPlugin.java 2006-09-12 13:14:13 UTC (rev 6171)
@@ -72,9 +72,12 @@
String userName = repo.getUsername();
String password = repo.getPassword();
+ log.info("Analyzing repository " + url +
+ "(project: " + projectId + ")...");
+
cl = getValue(url, userName, password);
- log.debug("Project " + projectId +
+ log.info("Project " + projectId +
". Number of code lines: " + cl);
cachedValues.put(projectId, new Long(cl));
More information about the jboss-svn-commits
mailing list