Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorElliott Baron2010-08-03 05:46:20 +0000
committerElliott Baron2010-08-03 05:46:20 +0000
commite608d26439386481e37ccf5f5fdd60329ff468d1 (patch)
tree5a4cebbccae852102b4df7f2a228d48c1425c8b3 /valgrind/org.eclipse.linuxtools.valgrind.core
parent562b799569cebda3015c805ed633181e1152088d (diff)
downloadorg.eclipse.linuxtools-e608d26439386481e37ccf5f5fdd60329ff468d1.tar.gz
org.eclipse.linuxtools-e608d26439386481e37ccf5f5fdd60329ff468d1.tar.xz
org.eclipse.linuxtools-e608d26439386481e37ccf5f5fdd60329ff468d1.zip
Remote improvements including launch config tab, file cleanup, I/O streams. Remove internal class use from tool plugins.
Diffstat (limited to 'valgrind/org.eclipse.linuxtools.valgrind.core')
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.core/ChangeLog7
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/internal/valgrind/core/ValgrindCoreParser.java9
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/valgrind/core/ValgrindParserUtils.java (renamed from valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/internal/valgrind/core/AbstractValgrindTextParser.java)28
3 files changed, 27 insertions, 17 deletions
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.core/ChangeLog b/valgrind/org.eclipse.linuxtools.valgrind.core/ChangeLog
index 8efb522a90..b041d7661b 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.core/ChangeLog
+++ b/valgrind/org.eclipse.linuxtools.valgrind.core/ChangeLog
@@ -1,3 +1,10 @@
+2010-08-03 Elliott Baron <ebaron@fedoraproject.org>
+
+ * src/org/eclipse/linuxtools/internal/valgrind/core/AbstractValgrindTextParser.java: Removed.
+ * src/org/eclipse/linuxtools/valgrind/core/ValgrindParserUtils.java: New file.
+ * src/org/eclipse/linuxtools/internal/valgrind/core/ValgrindCoreParser.java (ValgrindCoreParser): Superclass moved to utils class.
+ (getMessage): Likewise.
+
2010-07-26 Elliott Baron <ebaron@fedoraproject.org>
* META-INF/MANIFEST.MF: Bump version to 0.7.0.
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/internal/valgrind/core/ValgrindCoreParser.java b/valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/internal/valgrind/core/ValgrindCoreParser.java
index 1150369a54..4d5864a01a 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/internal/valgrind/core/ValgrindCoreParser.java
+++ b/valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/internal/valgrind/core/ValgrindCoreParser.java
@@ -20,8 +20,11 @@ import java.util.Stack;
import org.eclipse.debug.core.ILaunch;
import org.eclipse.linuxtools.valgrind.core.IValgrindMessage;
+import org.eclipse.linuxtools.valgrind.core.ValgrindParserUtils;
-public class ValgrindCoreParser extends AbstractValgrindTextParser {
+public class ValgrindCoreParser {
+ private static final String SPACE = " "; //$NON-NLS-1$
+ private static final String EMPTY_STRING = ""; //$NON-NLS-1$
private static final String AT = "at"; //$NON-NLS-1$
private static final String BY = "by"; //$NON-NLS-1$
@@ -38,7 +41,7 @@ public class ValgrindCoreParser extends AbstractValgrindTextParser {
messages = new ArrayList<IValgrindMessage>();
try {
- pid = parsePID(inputFile.getName(), CommandLineConstants.LOG_PREFIX);
+ pid = ValgrindParserUtils.parsePID(inputFile.getName(), CommandLineConstants.LOG_PREFIX);
String line;
while ((line = br.readLine()) != null) {
// remove PID string
@@ -86,7 +89,7 @@ public class ValgrindCoreParser extends AbstractValgrindTextParser {
protected IValgrindMessage getMessage(IValgrindMessage message, String line) throws IOException {
if (line.startsWith(AT) || line.startsWith(BY)) {
- Object[] parsed = parseFilename(line);
+ Object[] parsed = ValgrindParserUtils.parseFilename(line);
String filename = (String) parsed[0];
int lineNo = (Integer) parsed[1];
return new ValgrindStackFrame(message, line, launch, filename, lineNo);
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/internal/valgrind/core/AbstractValgrindTextParser.java b/valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/valgrind/core/ValgrindParserUtils.java
index 17211c1ab3..62d1afdb44 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/internal/valgrind/core/AbstractValgrindTextParser.java
+++ b/valgrind/org.eclipse.linuxtools.valgrind.core/src/org/eclipse/linuxtools/valgrind/core/ValgrindParserUtils.java
@@ -8,20 +8,20 @@
* Contributors:
* Elliott Baron <ebaron@redhat.com> - initial API and implementation
*******************************************************************************/
-package org.eclipse.linuxtools.internal.valgrind.core;
+package org.eclipse.linuxtools.valgrind.core;
import java.io.IOException;
+import org.eclipse.linuxtools.internal.valgrind.core.Messages;
import org.eclipse.osgi.util.NLS;
-public abstract class AbstractValgrindTextParser {
-
+/**
+ * Class containing convenient methods common to Valgrind
+ * parsers.
+ */
+public final class ValgrindParserUtils {
private static final String DOT = "."; //$NON-NLS-1$
- protected static final String COLON = ":"; //$NON-NLS-1$
- protected static final String SPACE = " "; //$NON-NLS-1$
- protected static final String EQUALS = "="; //$NON-NLS-1$
- protected static final String DASH = "-"; //$NON-NLS-1$
- protected static final String EMPTY_STRING = ""; //$NON-NLS-1$
+ private static final String EMPTY_STRING = ""; //$NON-NLS-1$
/**
* Retrieves ARGUMENT portion of [OPTION][DELIMITER][ARGUMENT]
@@ -31,7 +31,7 @@ public abstract class AbstractValgrindTextParser {
* @return Long value of ARGUMENT
* @throws IOException
*/
- protected Long parseLongValue(String line, String delim)
+ public static Long parseLongValue(String line, String delim)
throws IOException {
Long result = null;
String[] parts = line.split(delim, 2);
@@ -52,7 +52,7 @@ public abstract class AbstractValgrindTextParser {
* @return String value of ARGUMENT
* @throws IOException
*/
- protected String parseStrValue(String line, String delim)
+ public static String parseStrValue(String line, String delim)
throws IOException {
String result = null;
String[] parts = line.split(delim, 2);
@@ -72,7 +72,7 @@ public abstract class AbstractValgrindTextParser {
* @return - the PID portion of the filename as an Integer
* @throws IOException
*/
- protected Integer parsePID(String filename, String prefix) throws IOException {
+ public static Integer parsePID(String filename, String prefix) throws IOException {
String pidstr = filename.substring(prefix.length(), filename.lastIndexOf(DOT));
if (isNumber(pidstr)) {
return new Integer(pidstr);
@@ -87,7 +87,7 @@ public abstract class AbstractValgrindTextParser {
* @param line - line that parsing failed
* @throws IOException
*/
- protected void fail(String line) throws IOException {
+ public static void fail(String line) throws IOException {
throw new IOException(NLS.bind(Messages.getString("AbstractValgrindTextParser.Parsing_output_failed"), line)); //$NON-NLS-1$
}
@@ -96,7 +96,7 @@ public abstract class AbstractValgrindTextParser {
* @param string - argument to test
* @return - true if argument is a number
*/
- protected boolean isNumber(String string) {
+ public static boolean isNumber(String string) {
boolean result = true;
char[] chars = string.toCharArray();
for (int i = 0; i < chars.length; i++) {
@@ -113,7 +113,7 @@ public abstract class AbstractValgrindTextParser {
* @param line - String with the above criteria
* @return a tuple of [String filename, Integer line]
*/
- protected Object[] parseFilename(String line) {
+ public static Object[] parseFilename(String line) {
String filename = null;
int lineNo = 0;

Back to the top